stm32播放wav,怎么能流畅播放?

2019-12-22 13:47发布

本帖最后由 hlmkhqpost 于 2017-9-29 17:50 编辑

目前wav数据,写在spi flash中,播放时按1k大小,从flash中读出,通过dma传到dac,去播放,会哒哒声,应该是传输一次就发出哒哒声一次,wav的原始声音是挺流畅的。
如果一次读取完整wav数据,放mem中,播放,就不会有此哒哒声。
各位高人,这种情况怎么调整?
使用stm32f0平台。只有16kram,太大的缓冲也不好整呀。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
16条回答
hlmkhqpost
1楼-- · 2019-12-24 09:07
本帖最后由 hlmkhqpost 于 2017-9-30 08:58 编辑

多谢各位,就是每次重新传时会断,也管理timer6,没用,用了双缓冲,再细化下,
先试试,争取把加特林加上消音器
sunjianmax232
2楼-- · 2019-12-24 14:20
16位数据不能直接右移4位dma给dac吧,16位数据是有符号的,先转成无符号数据,再右移4位。
tomzbj
3楼-- · 2019-12-24 16:04
软件实现个简单的fifo...
缓冲有256字节就够了

参考elm-chan这个,用一片8脚的attiny85, 8k flash, 512字节ram, 实现流畅播放wav.
http://elm-chan.org/works/sd8p/report.html
full_newer
4楼-- · 2019-12-24 19:03
 精彩回答 2  元偷偷看……

一周热门 更多>