下面这道题是关于串口通讯的协议定义,小弟不解,请求大神讲解,越细越好。

下面这道题是关于串口通讯的协议定义,小弟不解,请求大神讲解,越细越好。

串口通讯的协议定义如下,通讯参数:串口通讯参数为115200bps,8个数据位,无校验,1个停止位。

数据包格式:

1、描述协议中各个域的作用。

2、画出两个设备的串口连线图,使之可以通过上述协议双向通讯。

3、描述数据包的发送和接收过程,并编程实现数据包的接收。(注:接收使用中断方式)。


aishg 1年前 已收到1个回答 举报

charmcao 春芽

共回答了20个问题采纳率:100% 举报

包头: 告诉接收方一个完整的数据帧的开始
数据长度 应该是16进制的表示方式
数据内容 发送的信息
校验和 保证数据的完整性 很多种验证方式

连接方式 就用串口的235口 交叉线 全双工 可同时收发

发送先根据一条数据的长度 以及附加数据位算出总的byte长度
假定数据内容是100个byte 那么 一共就是 1 + 2 + 100 + 1 = 104 byte_all_lenght

那么接收方收到信息以后 首先把最后一个字节的数值取出来 然后根据校验和的校验算法将除了最后一个byte的数据再算一次校验和 得到的结果与最后一个字节比较 如果一样 说明数据完整可靠 然后在把前3个byte去掉 剩下的就是你得到的数据

1年前

1
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.016 s. - webmaster@yulucn.com