打印

430f5438A 接收数据包的问题

[复制链接]
715|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Stannis|  楼主 | 2016-10-13 18:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
430.接收数据包,老是接收到最后一个,前面的被覆盖掉了吗???收到的数据用串口助手显示是EF 01 FF FF FF FF 07 00 03 00 00 0A,但是从缓存器里取出来的只有一位0A,难道是我程序错了,还是缓存器里的值不能用循环来取,用的是串口异步通讯

相关帖子

沙发
Rangar| | 2016-10-13 19:06 | 只看该作者
把接收的数据存在一个buff数组中,debug模式下,单步调结合你的程序看看具体其他数据在执行什么语句之后不见了

使用特权

评论回复
板凳
Rollo| | 2016-10-13 19:54 | 只看该作者
可以直接采用,串口中断去读取数据,可以边读取,边校验

使用特权

评论回复
地板
Thor9| | 2016-10-13 20:28 | 只看该作者
中断中只用数组缓存接收到数据;然后调到主函数中判断

使用特权

评论回复
5
Bjorn| | 2016-10-13 20:40 | 只看该作者
主函数中判断时,要在while大循环中判断

使用特权

评论回复
6
Thorald| | 2016-10-13 20:56 | 只看该作者
中断只接收字符,缓存到数组中

使用特权

评论回复
7
Soraka| | 2016-10-13 21:20 | 只看该作者
在主函数while中处理接收的字符,用if直接嵌套判断,判断完后,不对直接丢掉

使用特权

评论回复
8
icecut| | 2016-10-14 13:26 | 只看该作者
你要看芯片手册,是不是有 buf,单片机没有,后来,arm 开始有,然后又没有了...
分久必合合久必分

使用特权

评论回复
9
dspmana| | 2016-10-14 22:42 | 只看该作者
你是不是发送的问题?

使用特权

评论回复
10
dspmana| | 2016-10-14 22:44 | 只看该作者
是不是for循环的时候出现故障了。

使用特权

评论回复
11
shenmu2012| | 2016-10-16 12:25 | 只看该作者
异步通讯的需要注意两边波特率的统一的。

使用特权

评论回复
12
comeon201208| | 2016-10-16 13:20 | 只看该作者
数据要及时取出来的,还有要注意时钟的应用的。

使用特权

评论回复
13
firstblood| | 2016-10-16 14:23 | 只看该作者
缓存中没有及时取出数据的或者是所取得数据被覆盖掉了

使用特权

评论回复
14
firstblood| | 2016-10-16 14:24 | 只看该作者
看下你缓存中的数据存储的计数的及存储空间的指针的是怎样处理的

使用特权

评论回复
15
i1mcu| | 2016-10-16 17:11 | 只看该作者
你的发送模式有问题吗?

使用特权

评论回复
16
i1mcu| | 2016-10-16 17:14 | 只看该作者
最后的数据位怎么实现?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

176

主题

721

帖子

1

粉丝