关于串口数据接受及处理的问题

2019-07-21 06:35发布

我的串口需要接收一组定常数据

1545361688(1).jpg
1545361519(1).jpg
(校验字节是校验前几位的和)
每一字节对应的意义如上;
我需要对数据高字节与低字节进行处理,高字节基本都是0x00,所以不需要考虑;
对数据低字节的处理如下
         data[0]=USART_RX_BUF[7]/100;
         data[1]=USART_RX_BUF[7]%100/10;
         data[2]=USART_RX_BUF[7]%100%10;

若数据低字节是0x0a 处理后显示0.10

关于数据接收后处理,研究了一天左右,还是比较混乱,如何在确保接收这一帧完整的数据的情况下;对数据进行处理,然后再把处理后得到的0.01(如上得到的结果)显示在TFTlcd上(初步的想法是通过定时器来显示,不放在while循环中显示),请问我这种情况如何确保收到一帧完整的数据?在收到数据后进行数据处理时转回到主函数中处理吗?

(另:初学串口,关于数据接收与处理理解的比较差,各位大神有没有好的帖子推荐)

非常感谢!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
brucewoo
1楼-- · 2019-07-22 00:23
中断接收存进一个缓冲数组,然后轮询看看数组的长度以及检查数据是否符合规范。
对方无法输入
2楼-- · 2019-07-22 03:04
 精彩回答 2  元偷偷看……
对方无法输入
3楼-- · 2019-07-22 08:56
1545395860(1).jpg
我这样接收后怎么处理和显示,小白 真是蒙蔽了一天了!

一周热门 更多>