你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

新手求助

[复制链接]
yinhenmei 提问时间:2015-1-9 23:24 /
我STM32串口为不占cpu资源使用DMA方式进行接收,设定接收缓冲区,在while(1)中查询已接收到的数据并进行处理,可是使用串口调试工具发送数据到板子,板子再将数据通过窗口打印处理,打印的数据和发送的数据出现不一致情况,求大侠帮忙看看!谢谢大家

收藏 评论14 发布时间:2015-1-9 23:24

举报

14个回答
nana妞 回答时间:2015-1-9 23:42:42
额。。。。帮顶
晓枫VS枯叶 回答时间:2015-1-10 09:17:43
串口数据接收处理时有没有进行校验!
黄小狼 回答时间:2015-1-10 09:56:54
看一下串口设置是否一样,波特率,数据位,校验位等是否一致,还有显示方式和发送方式是否一致
yinhenmei 回答时间:2015-1-11 08:11:15
用仿真器直接观察缓冲区,这才是根。
发出来就多了道手续。
一步一步查,就是把几个过程分开,保证前面的结果正确,再查下一步。一步一步,就是这意思。
yinhenmei 回答时间:2015-1-11 08:11:54
晓枫VS枯叶 发表于 2015-1-10 09:17
串口数据接收处理时有没有进行校验!

通过j-link在线仿真调试,发现打印出来的数据和缓冲区的数据一致,可是这个数据和我发送的是有区别的,比如我发送
ff fe fe f0 e0
可是缓冲区的数据变成了
ff fe 20 f0 f0
这样的的数据,难道DMA搬运数据出问题?可是我的配置和网上的例程基本差不多的。如果DMA搬运数据出问题,可是第一个字节ff总是不会出错,这是为啥?
yinhenmei 回答时间:2015-1-11 08:12:20
黄小狼 发表于 2015-1-10 09:56
看一下串口设置是否一样,波特率,数据位,校验位等是否一致,还有显示方式和发送方式是否一致 ...

这个检查过好几次,没有什么问题的
yinhenmei 回答时间:2015-1-11 08:13:06
晓枫VS枯叶 发表于 2015-1-10 09:17
串口数据接收处理时有没有进行校验!

有校验。有木有可能是硬件问题,因为断电一段时候在上电是发送正常,长时间运行一下,又可能出现这样的问题??
show明 回答时间:2015-1-11 08:16:21
用DMA接收数据时要注意一帧数据接收完,或者一帧数据和设定的DMA缓冲区不一样长时候的处理方法。
HIT_621 回答时间:2015-1-11 08:20:43
用DMA接收数据时要注意一帧数据接收完,或者一帧数据和设定的DMA缓冲区不一样长时候的处理方法。
12下一页

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版