IIS芯片选择的是WM8978,实现了播放,但是录音有问题。
录音的时候我将NUC123配置为Master,让其产生时钟MCLK LRCLK BCLK。
配置如下,但是接收到的数据全是0xFFFFFFFF
WM8978_HPvol_Set(0,0); //耳机音量设为0
WM8978_SPKvol_Set(0); //喇叭音量设为0
WM8978_ADDA_Cfg(0,1); //打开ADC,关闭DAC
WM8978_Input_Cfg(0,1,0);//打开Linein,关闭mic和aux
WM8978_Output_Cfg(0,0); //关闭喇叭和耳机输出
WM8978_I2S_Cfg(2,0); //设置为飞利浦 16bit模式
I2S_Open(I2S, I2S_MODE_MASTER, 16000, I2S_DATABIT_16, I2S_MONO, I2S_FORMAT_I2S);
I2S_EnableMCLK(I2S, 256*16000);
I2S_DisableInt(I2S, I2S_IE_TXTHIE_Msk);
I2S_EnableInt(I2S, I2S_IE_RXTHIE_Msk);
NVIC_EnableIRQ(I2S_IRQn); |