OpenEdv-开源电子网

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

通过串口dma发送数据,接收混乱

[复制链接]

7

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
114
金钱
114
注册时间
2016-6-11
在线时间
22 小时
发表于 2017-9-22 00:15:23 | 显示全部楼层 |阅读模式
5金钱
我通过串口进行两个f1板子之间的通信,发送的是一个数据包,发送用的dma,接受也是用的dma,并且接收使用的是dma中断来接收数据。发送的数据通过串口打很完美,没有出现任何错误数据。然后我通过usart_cmddma 这个指令接收数据,必须把缓存区弄成200才可以每次都接收到相关包头的数据,但是接收到了相关包头的数据,但是还是会出现混乱的数据。请问大伙有遇到过这种情况的吗

接收到的数据内容

接收到的数据内容

发送的数据

发送的数据

发送的数据包

发送的数据包



最佳答案

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

发现程序其实并没有错误只是没有供地!!!如果以后由他人看见了这篇帖子先检测有没有供地吧
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
114
金钱
114
注册时间
2016-6-11
在线时间
22 小时
 楼主| 发表于 2017-9-22 00:15:24 | 显示全部楼层
发现程序其实并没有错误只是没有供地!!!如果以后由他人看见了这篇帖子先检测有没有供地吧
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165537
金钱
165537
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-9-22 01:01:06 | 显示全部楼层
检查你的DMA接收代码,是否写好了,其实发送可以不用DMA。
回复

使用道具 举报

7

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
114
金钱
114
注册时间
2016-6-11
在线时间
22 小时
 楼主| 发表于 2017-9-22 11:58:15 | 显示全部楼层
正点原子 发表于 2017-9-22 01:01
检查你的DMA接收代码,是否写好了,其实发送可以不用DMA。

因为发送过来的数据是float,所以用了一个联合体,然后dma接收中断给个标志位,最后在while循环里面读取数据,然后debug看接收到的数据,就会出现混乱,  发送数据那块板子在做图片的处理,又没做任务调度,如果再加上发送数据包,就会卡死
]96`(9)8R`E%`LJHHLIQJB5.png
6HXBD4J)WD6SFJ8V7U)`1`9.png
LRB$MA840%3`U13Y$M`L58I.png





回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165537
金钱
165537
注册时间
2010-12-1
在线时间
2117 小时
发表于 2017-9-22 22:39:22 | 显示全部楼层
穿梭者 发表于 2017-9-22 11:58
因为发送过来的数据是float,所以用了一个联合体,然后dma接收中断给个标志位,最后在while循环里面读取 ...

你先简化代码,纯粹验证下功能是否正常吧
我在论坛发过串口的MODBUS例程,通信正常,关键你处理数据要精简。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

7

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
114
金钱
114
注册时间
2016-6-11
在线时间
22 小时
 楼主| 发表于 2017-9-22 22:46:46 | 显示全部楼层
正点原子 发表于 2017-9-22 22:39
你先简化代码,纯粹验证下功能是否正常吧
我在论坛发过串口的MODBUS例程,通信正常,关键你处理数据要精 ...

我通过修改波特率,使得发送的数据正确率高了很多,然后发现之前数据组合前后顺序倒了。现在的问题在于读取的数据是通过串口发送的过来的u32型,使用联合体,也没法变成float,现在还在找方法,感谢原子哥的回复了
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-13 21:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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