板子采用的是外部16MHz的晶振来提供I2S的时钟的。PLL配置参数如下:
#define PLL_SOURCE ( RCC_PLLSource_HSE )
#define PLL_M_CONSTANT ( 16 )
#define PLL_N_CONSTANT ( 320 )
#define PLL_P_CONSTANT ( 4 )
#define PPL_Q_CONSTANT ( 7 )
但是调试时发现当I2S的采样率Fs >= 32kHz的时候,MCLK的输出就变为4MHz左右了;而小于那个采样率的时候,MCLK 约等于 256*Fs;这时候音频输出也挺正常的;请教下各位;这种情况大概是哪里引起的?谢谢 |