stm8 实现录音功能

2019-03-23 19:28发布

如题,我想做一个stm8 实现录音功能 的小玩意,主芯片是STM8S系列,音频文件存放在SD卡中。我想知道怎样将音频通过stm8存储在SD卡,然后播放出来 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
STM8S105C6
2019-03-24 16:53
可不可以边读卡里面的音频文件,边发送给解码芯片,就相当于他们是同步操作的。类似下面的想法:

1. 对Flash的操作,512字节在8Mbit/s的速率下,耗时仅仅0.5微秒左右。
2. VS1003内部有512字节的缓冲区,按照128kbps的播放速率,半个缓冲区至少可以播放30微秒。

操作步骤如下:
1. 为了能够及时响应VS1003的数据要求,需要先将数据缓冲到STM32的RAM中,即先从Flash读取一部分MP3数据到RAM中。然后写满VS1003的512字节缓冲,开始播放。
2. VS1003在有缓冲空闲时会产生中断请求,此时缓冲区中至少还能支撑30微秒。
    如果此时SPI空闲,操作SPI,直接从RAM将数据写入VS1003
    否则,等待SPI操作结束(最多1微秒),然后从RAM中将数据写入VS1003
3. 检查RAM中的MP3数据是否需要从Flash补充,如果需要,从Flash中读取MP3数据到RAM中。
4. 重复2,3直到播放结束。
以上只是比较粗略的过程,需要你自己进一步设计和规划。

一周热门 更多>