OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 14167|回复: 22

新人求助stm32读取SD卡中的wav文件发送到串口通过ESP8266发送到电脑的问题

[复制链接]

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
发表于 2018-7-28 17:48:22 | 显示全部楼层 |阅读模式
13金钱
我试了两种模式,一种是ESP8266作为客户端工作在透明传输模式,在这模式下小的txt文件能够正常发送,但最后会多出两个字节不知道什么东西,发送WAV文件就不行了;
另一种有应答模式,ESP8266作为服务器,这种大到几百k的txt文件可以正常发送,但是wav文件就不行,我发送完用编辑器打开后发现每次都是从第七个字节开始出错,连AT指令都发出去了,我调整每一帧的大小,不同大小的帧接受到的文件大小是不一样的,我只需要发送96k大小的wav文件而已,当我把每帧设定为20个字节而已时,接受到的文件达到了154k,每帧设定为1024个字节时,接收到的文件为20k,而且我试过每帧为七个字节,都发送失败了,接受到的文件打不开,我就想既然txt文件行,那我把SD卡中的wav文件改个后缀为txt,结果也还是不行,传送过程有试过用断点调试看memory中databuf的值,发现是正确的,所以问题应该出在传送过程中。
   使用的两种模式都是TCP模式,模块作为AP,最近这边光纤断了试不了STA模式,校园网WIFI又要认证。
  有试过每帧发300个字节,发送完用count计数,发现循环了321次,而源文件大小是96300B的,正好相等,但是就是接收到的文件一堆乱码。
  难道这个ESP8266串口模块不能传音频文件?但是为什么txt文件可以?不管什么格式的文件传送的不都是二进制字节流吗?我对速度没要求,只要传96k的音频文件而已;上淘宝买了个SPI的升级版8266,还没到不知道行不行。
求大佬指点迷津,感激不尽。

透传模式

透传模式
FWM7)V@0CX~)98GNP3NOV20.png
Z(F9~[{PJ$4]UM0XT{KM@V6.png

错误情况

错误情况

最佳答案

查看完整内容[请看2#楼]

自己解决了忘记消帖了,希望能给搜到这篇帖子的人一点帮助。 后来改成了一个字节一个字节发 格式为%02x,接收到的终于不是乱码了,但是文件大小变为了两倍,原来的一个十六进制数被拆成两个字符,折腾了好久,发现是库函数里的u3_printf()的问题,进去里面之后,不知为什么执行了几行之后一个字节变成两个字节了,于是我试了下直接用USART_SendData(),问题就解决了。 之后终于能传声音文件了,但是怎么弄里面都有tata的噪声 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-28 17:48:23 | 显示全部楼层
本帖最后由 革革 于 2018-8-9 12:03 编辑

自己解决了忘记消帖了,希望能给搜到这篇帖子的人一点帮助。
  后来改成了一个字节一个字节发 格式为%02x,接收到的终于不是乱码了,但是文件大小变为了两倍,原来的一个十六进制数被拆成两个字符,折腾了好久,发现是库函数里的u3_printf()的问题,进去里面之后,不知为什么执行了几行之后一个字节变成两个字节了,于是我试了下直接用USART_SendData(),问题就解决了。
  之后终于能传声音文件了,但是怎么弄里面都有tata的噪声,刚开始以为是板载咪头的问题,而且试了下把WiFi模块插进去,用音频输出口接耳机能听到差不多一样的tata的噪声,拔掉WiFi模块就听不见,试了下改vs1053初始化函数的mode设置寄存器为LIN_IN输入,还是不能禁用掉咪头,索性就把咪头直接拆了。。。。
  后来还是有噪声,偶然想到得延时下(这方法之前发不成功的时候试过,后来却没想起这方法来),每次发完一帧就延时一下,问题就解决了。
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-28 19:02:41 | 显示全部楼层
自顶            
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-28 20:05:37 | 显示全部楼层
再顶            
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2018-7-28 21:31:20 | 显示全部楼层
帮顶
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-29 08:51:46 | 显示全部楼层
500k字节的txt整本书,也能正常发送,只有最后一一帧不是整数倍出现乱码
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-29 08:52:20 | 显示全部楼层
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-29 10:43:37 | 显示全部楼层
发现一个小问题,透传模式下malloc分配给databuf的内存要+1,编译器会自动添加结束符, 否则字符串最后会多一个乱码   但这仅限于解决了透传下传输短文本的问题  我的问题还是没解决
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
37
金钱
37
注册时间
2018-7-26
在线时间
8 小时
 楼主| 发表于 2018-7-29 10:49:46 | 显示全部楼层
函数说明里说u3_printf()最多只能一次发600个字节,所以我后面都没怎么试1024个字节了,不知道可不可以自己修改那个宏定义; 有试过改波特率为230400和9600
回复

使用道具 举报

42

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
456
金钱
456
注册时间
2017-9-8
在线时间
58 小时
发表于 2019-2-25 15:20:03 来自手机 | 显示全部楼层
同学我也准备做传输音频的东西,可以留个联系方式交流下吗?
回复

使用道具 举报

42

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
456
金钱
456
注册时间
2017-9-8
在线时间
58 小时
发表于 2019-2-25 15:21:18 来自手机 | 显示全部楼层
我的qq904739677
回复

使用道具 举报

3

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
139
金钱
139
注册时间
2020-1-18
在线时间
28 小时
发表于 2020-3-21 11:21:00 | 显示全部楼层
楼主,请教一个问题。按字节将文件发送到电脑,电脑如何处理把收到的数据变成原理格式的文件,是保存为txt再改后缀名吗?
回复

使用道具 举报

6

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2019-5-13
在线时间
16 小时
发表于 2020-4-7 17:26:49 | 显示全部楼层
楼主,能联系一下嘛,我有点问题想请教您  1048477872
回复

使用道具 举报

12

主题

113

帖子

0

精华

高级会员

Rank: 4

积分
899
金钱
899
注册时间
2020-10-29
在线时间
114 小时
发表于 2020-12-2 21:49:32 | 显示全部楼层
我也先请教一下
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2018-9-3
在线时间
10 小时
发表于 2020-12-23 16:50:57 | 显示全部楼层
楼主我也想请教下  1124410992

回复

使用道具 举报

12

主题

113

帖子

0

精华

高级会员

Rank: 4

积分
899
金钱
899
注册时间
2020-10-29
在线时间
114 小时
发表于 2021-4-15 16:51:13 | 显示全部楼层
楼主能联系一下你吗,想请教您!!我的QQ1147871649
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2021-4-26
在线时间
3 小时
发表于 2021-4-26 13:55:35 | 显示全部楼层
楼主请问你在电脑端是怎么接收数据的呢
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2020-10-18
在线时间
2 小时
发表于 2022-4-5 23:11:19 | 显示全部楼层
你好,看到您的Stm32给PC传输wav文件的帖子,看到您已经完美解决了,我最近在这个方面遇到了问题,可以请教下您吗,我QQ2424644692,感谢!
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-5-7
在线时间
5 小时
发表于 2022-5-7 20:35:22 | 显示全部楼层

同学你这个历程还在吗?我们可以讨论一下吗?QQ:1525541233
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
5
金钱
5
注册时间
2022-4-30
在线时间
1 小时
发表于 2022-5-8 23:53:49 | 显示全部楼层
同学,请问这个代码还在吗?我想学习一下,QQ:396803780
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-5-7
在线时间
5 小时
发表于 2022-5-11 16:19:23 | 显示全部楼层
later 发表于 2020-3-21 11:21
楼主,请教一个问题。按字节将文件发送到电脑,电脑如何处理把收到的数据变成原理格式的文件,是保存为txt ...

你好,请问你的问题解决了吗??我们可以交流一下吗??QQ:1525541233
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-5-7
在线时间
5 小时
发表于 2022-5-11 16:20:34 | 显示全部楼层
cyb123456 发表于 2022-4-5 23:11
你好,看到您的Stm32给PC传输wav文件的帖子,看到您已经完美解决了,我最近在这个方面遇到了问题,可以请教 ...

这个项目你还有吗??我们可以交流一下吗?QQ:1525541233
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2022-5-7
在线时间
5 小时
发表于 2022-5-15 15:32:02 | 显示全部楼层
cyb123456 发表于 2022-4-5 23:11
你好,看到您的Stm32给PC传输wav文件的帖子,看到您已经完美解决了,我最近在这个方面遇到了问题,可以请教 ...

你好,请问你解决了吗?我也是这个方面的问题。Q:1525541233
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 11:05

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表