|
最近在使用STM32F407 discovery的板子设计 FIR滤波器, 设计的是将板子作为声卡驱动,连接电脑对输出的音频做FIR卷积滤波。
已经完成了让板子作为声卡驱动正常输出音频信号。
现在目前遇到的情况是在做FIR卷积之后,输出的音频信号是错的,不知道问题出现在什么地方,希望论坛里的大神可以帮帮我。
P.S:为了找到问题的所在,Debug的时候我不对音频数据*pData进行FIR卷积滤波处理,而是将*pData先传入一个数组中,再对数组进行运算,此时应该对原本输出的pData没有任何影响,但是运算后结果输出的结果就出错了,目前还找不到原因(图中是部分代码,并非工程文件,通过void BSP_AUDIO_OUT_ChangeBuffer(uint16_t *pData, uint16_t Size) 对从电脑接收到的数据进行处理,HAL_I2S_Transmit_DMA(&hi2s3, pData, Size) 是将数据传输到I2S,在板子上的耳机孔上输出。test_block(block,pData,Size) 是调试的代码)。
求各位大神指导一下我!!
方便的话可以加QQ1661623649 |
-
1.png
(30.61 KB, 下载次数: 28)
|