一、硬件平台
使用野火开发板STM32F407,codec为板载WM8978
二、音频格式
标准的I2S,采样频率为44.1Khz,24bit,1组立体声。由此我们可以得到LCLK = 44.1Khz,BCLK = 2.8224Mhz。这里选用11.2896Mhz作为MCLK。
三、I2S驱动配置
1、为了得到标准I2S的3个时钟,我把板子上STM32F407的晶振替换为11.2896M。然后配置各个总线时钟,如下图所示。
2、I2S配置为DMA+中断模式(TX和RX完成中断),数据为32位,每128个32位进入中断1次,即中断间隔大约1.4ms,配置代码可以参考野火例程。
欢迎技术交流QQ 736009573