串口收发数据包
1.HEX数据包
2.数据包作用:把一个个单独的数据给打包起来,方便进行多字节数据通信
3.数据和包头包尾重复解决方法
1.限制载荷数据范围,在发送时对数据进行限幅
2.无法避免重复,尽量使用固定长度数据包
3.增加包头包尾数量,并且让他尽量呈现出载荷数据出现不了的状态
4.载荷和包头包尾重复,选择固定包长,不会和包头包尾重复,选择可变包长
5.数据转换为字节流:使用一个uint8_t指针指向数据包,在将数据包当作一个字节数组发送即可
6.文本数据包(每个数据都经过编码和译码,可以规定各种字符作为包头包尾)
7.HEX和文本数据包对比
1.HEX数据包传输最直接,解析数据非常简单,比较适合模块发送原始数据,但灵活性不足,载荷和包头包尾易重复
2.文本数据包数据只管易理解。非常灵活,较适合一些输入指令进行人机交互的场合。但解析效率低
8.数据包收发流程
1.数据包发送:填充数据,以类似数组的方式发送
2.数据包接收:
1.HEX数据包接收方法
1.状态机:能记住不同状态机制,在不同状态执行不同操作,同时还要进行状态的合理转移
2.文本数据包接收
