我要做一个网络音乐播放器,有一个重要的功能就是用网络模块下载音乐,我采用的esp8266,下载的音乐文件大约5m,esp8266可以下载且串口输出,stm32边下载边写入SD卡。
现在遇到的问题:
1.我每接收到512byte就写入sd中,之后保存出来的文件只有几十KB,数据丢失严重。后来猜想可能是写入sd时丢失的
2.有没有什么办法,外接一个几M的缓存我直接定义一个大的变量数组,等全部下载完毕我再写如sd中。
3.综上所示,应该是先要把这么大的数据写入一个缓存中,全部下载结束后才能写入SD卡中。有什么好的解决方案
谢谢大家
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
原子哥你没明白我的意思,不要这么快就给我选择了正确答案啊。我不是对esp8266二次开发啊,我是直接用AT指令啊
esp8266的串口控制HTTP方式是不行的,因为超过一定量,超出他的缓存后,是下载不了的。另外音乐文件是完整的不可能手动分段。我现在采用TCP的方式,esp8266是可以输出的。但是可能是输出的太快,stm32接收不到
http是支持断点续传的
一周热门 更多>