串口通讯解包数据

串口通讯解包数据,第1张

你做的和我做的差不多,你这个读取上来的数据,每四位代表一个改纳含义,倒数四位应该是效验码,倒数第二个四位应该是转速,那么你把读取上来的数据拆开,方法有很多,比如字符串/附加字符串/搜索拆分字符串,只要四位转速1222,那么这个1222是十六进制的数据,然后使用字符串里面的十六进制字符串至数值转换将字符串转换成数值,你核李没这个串口通讯扰薯我都做过,而且把读取上来的数据进行拆分转换是很容易的,有什么问题给我发消息,我电脑上有一个把读取上来的数据进行转换的,可以发给你看看

1、帧头+数据+校判埋验+帧尾

这是一个典型的方案,但是对帧头与帧尾在设计的时候都要注意,也就是说帧头、帧尾不能在所传输的数据域中出现,一旦出现可能就被误判。如果用中断来锋冲察接收的话,程序基本可以这么实现:

unsigned char recstatu//表示是否处于一个正银茄在接收数据包的状态

unsigned char ccnt //计数

unsigned char packerflag//是否接收到一个完整的数据包标志

unsigned char rxbuf[100]//接收数据的缓冲区


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12382371.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-23
下一篇2023-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存