串口通讯时的数据帧格式和通讯协议区别为:作用层不同、用途不同、内容不同。
一、作用层不同
1、数据帧格式:数据帧格式的作用层为数据链路层。
2、通讯协议:通讯协议的作用层为应用层。
二、用途不同
1、数据帧格式:数据帧格式规定了传递数据的帧的格式。
2、通讯协议:通讯协议为连接不同操作系统和不同硬件体系结构的互联网络提供通信支持,定义了在互联网络中如何传递、管理信息(文件传送、收发电子邮件、远程登录等),并制定了在出错时必须遵循的规则。
三、内容不同
1、数据帧格式:数据帧格式包括帧头,数据部分,帧尾三部分,帧头和帧尾包含一些必要的控制信息,比如同步信息、地址信息、差错控制信息等;数据部分则包含网络层传下来的数据,比如IP数据包,等等。
2、通讯协议:通讯协议包括对数据格式,同步方式,传送速度,传送步骤,检纠错方式以及控制字符定义等问题的统一规定。
数据帧格式和通讯协议最大的区别是:数据帧格式属于数据链路层协议;通讯协议属于应用层协议。按ISO/OSI模型观点,串口进行通信过程至少涉及三个层次的协议:物理层协议、数据路层协议和应用层协议。
(1)物理层协议:规定串口硬件的通信方式。以异步串行通信为例,物理层协议包括串行接口的的波特率、数据位位数、停止位位数以及奇偶校验方式。
(2)数据链路层协议:规定数据帧格式,包括数据帧的起始定义、帧的字节数、帧结束定义。有时,数据帧格式中还包括垂直校验和,如CRC校验和等。
(3)应用层协议:也称为通信协议,规定双方在通信过程中的交互方式,谁先发起通信,是否对方需要应答、是否需要出错重发等。