在这里,我试图生成一个正弦波通过I2S的简单示例,并使用STM32F446ZE在ZL38063(slave)上发送数据。 @ 1.5Mhz和WS @ 48Khz的时钟工作正常,并且还在SD线上获取PWM数据。 与ZL38063连接的扬声器上听不到任何声音。 在这里,我无法进一步调试。 PS下面的简单C代码
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_I2S2_Init();
MX_SPI1_Init();
MX_DAC_Init();
MX_UART5_Init();
MX_ADC1_Init();
MX_I2C1_Init();
MX_SDIO_SD_Init();
MX_FATFS_Init();
HAL_I2S_Init(&hi2s2);
uint16_t test = 0;
int index = 0;
bool channel = false;
while(1) {
if (HAL_I2S_GetState(&hi2s2) == HAL_I2S_STATE_READY)
{
hal_res =
HAL_I2S_Transmit(&hi2s2,&SINE_TABLE[index],256,50);
channel = !channel;
if (channel)
{
index++;
index = index % 256;
}
}
else
{
test = 5;
}
}