我尝试了 H735G-DK 的 BSP 示例,但它不起作用。
我想要做的是从 line_in(
电路板上的蓝色音频插孔)获取音频波。
SAI1 的设置如图所示,我可以毫无问题地通过线路输出播放音频,但无法从线路输入中获取可读的波形数据。

- uint8_t txData[2] = { 0, 0 };
- /* enable the clock by starting the tx */
- if (HAL_SAI_Transmit(&hsai_BlockB1, txData, 2, 1000) != HAL_OK)
- Error_Handler();
- if (audioDrv->Play(audioCompObj) != 0)
- Error_Handler();
- if (HAL_SAI_Receive_DMA(&hsai_BlockA1, (uint8_t*)recordBuff, RECORD_BUFFER_SIZE) != HAL_OK) {
- Error_Handler();
- }
音频输入是一个 2k sin 波形,我从 SAI1 得到的是:


它确实有 2k 频率峰值,但波形远不是正弦波,可能是什么问题?