初级会员

- 积分
- 148
- 金钱
- 148
- 注册时间
- 2020-5-21
- 在线时间
- 62 小时
|
用cubemx配置f407的i2s和iis等接口,基于例程(探索者,实验44 录音机实验)修改,可以正常实现录音和播放功能。
但是发现在录音状态下,要切换成 播放状态,无法播放。
切换方法与例程中相同。却无法播放wav,似乎听到 喇叭是高频调(滴持续)
recoder_enter_play_mode();
audio_play_song(pname);
用串口可以发现wav_i2s_dma_tx_callback 播放中断回调函数工作。但是频率 明显高于正常播放状态。
另外发现在录音状态下,例程使用I2S2_TX_DMA_Init((u8*)&i2splaybuf[0],(u8*)&i2splaybuf[1],1); 循环发送0000 0000
播放状态下,也需要使用I2S2_TX_DMA_Init(audiodev.i2sbuf1,audiodev.i2sbuf2,WAV_I2S_TX_DMA_BUFSIZE/2)发送wav数据
我猜测是不是我的代码中出现了DMA发送冲突。在recoder_enter_play_mode();中没有关掉dma 的发送。
但是例程却正常,求大神帮忙!!!!!!!!
|
|