const u16 i2splaybuf[2]={0X0000,0X0000};
void recoder_enter_rec_mode(void)
{
WM8978_ADDA_Cfg(0,1);
WM8978_Input_Cfg(1,1,0);
WM8978_Output_Cfg(0,1);
WM8978_MIC_Gain(20);
WM8978_I2S_Cfg(2,0);
I2S2_Init(I2S_Standard_Phillips,I2S_Mode_MasterTx,I2S_CPOL_Low,I2S_DataFormat_16b);
I2S2ext_Init(I2S_Standard_Phillips,I2S_Mode_SlaveRx,I2S_CPOL_Low,I2S_DataFormat_16b);
I2S2_SampleRate_Set(16000);
I2S2_TX_DMA_Init((u8*)&i2splaybuf[0],(u8*)&i2splaybuf[1],1);
DMA1_Stream4->CR&=~(1<<4);
I2S2ext_RX_DMA_Init(i2srecbuf1,i2srecbuf2,I2S_RX_DMA_BUF_SIZE/2);
i2s_rx_callback=rec_i2s_dma_rx_callback;
I2S_Play_Start();
I2S_Rec_Start();
recoder_remindmsg_show(0);
}
这是例程里面录音机中的源码,有点不太清楚IIS的配置,录音不就是接受声音吗?为什么还要初始化I2S2_TX_DMA_Init((u8*)&i2splaybuf[0],(u8*)&i2splaybuf[1],1);发送的数据还是0;
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>