首页 > 编程知识 正文

RS422串口传输协议,串口通信三种传输方式

时间:2023-05-04 17:15:46 阅读:175954 作者:490

1 .串行通信协议概述

串行通信(serial communication )是设备之间非常常用的串行通信方式,几乎所有的电子设备都支持,电子工程师在重新调试设备时也经常使用它来输出调试信息。

2 .就一个通信协议而言,不可分离的是物理层,物理层的主要表现形式是电平信号的幅度和幅度,它们都是代表性的。

串行端口的物理层有许多标准,主要包括RS232标准,这一标准规定了信号的用途、通信接口和信号电平标准;

在上述通信方式中,两个通信设备的“DB9接口”之间通过串行信号线连接,使用“RS-232标准”向串行信号线传输数据信号。 由于控制器无法直接识别RS-232电平标准的信号,因此这些信号经过“电平转换芯片”转换为控制器可识别的“TTL校准”电平信号,从而可以进行通信。

3 .水平标准

根据通信中使用电平标准,串行通信可以分为TTL标准和RS232标准

理想情况下,在典型的电子电路中使用的TTL电平标准中,用5V表示两级逻辑1,用0V表示逻辑0,用-15V用逻辑1、15v表示逻辑0,用TTL电平标准表示与RS232相同的信号时的对比图

由于控制器一般使用TTL电平标准,所以经常在MA3232芯片上相互转换TTL和RS232电平的信号。

4.RS-232信号线

在最初的APP应用中,RS-232串行标准常用于计算机、路由和调制解调器(MODEN,俗称“猫”)之间的通信。 在这样的通信系统中,设备分为数据终端设备DTE (计算机、路由)和数据通信设备DCE (调制解调器)。 使用该通信模型说明这些信号线的连接方法和各信号线的作用。

旧式台式计算机具有RS-232标准COM端口(也称为DB9接口)。 请参见图2-3。

图2-3电脑主板上的COM端口和串行电缆

其中,用引脚从配线口引出信号线的叫做公头,用孔式引出信号线的叫做母头。 计算机一般引出插头,而调制解调器引出的一般是插头,可以使用如上图所示的串口电缆与计算机连接。 通信时,通过串扰传输的信号已经按照之前说明的RS-232标准进行了调制。

在此类应用场合,DB9接口中公头及母头各引脚的标准信号线接法见图2-4及表2-2。

图2-4 DB9标准公头及母头连接法

表2-2 DB9信号线的说明(公头,为了清楚起见,DTE可以理解为计算机,DCE可以理解为调制解调器) ) ) ) ) ) )。

上表为计算机端DB9表头的标准接法,由于两个通信设备之间的收发信号(RXD和TXD )需要交叉连接,调制解调器端DB9表头的收发信号接法一般与表头相反,连接两个设备时“直通型” 见图2-5。

串音中的RTS、CTS、DSR、DTR和DCD信号表示逻辑1处的信号是有效的,逻辑0处的信号是无效的。 例如,如果计算机侧的控制DTR信号线由逻辑1指示,则这是为了通知远程调制解调器该设备准备接收数据,而0指示该设备还没有准备好。

在当前其他工业控制中使用的串行通信中,一般仅使用RXD、TXD和GND三条信号线直接传输数据信号。 RTS、CTS、DSR、DTR和DCD的信号都被截断。 如果你在前面被这些信号搞得晕头转向的话,直接无视它们吧。

5 .协议层

串行通信包从发送设备通过自身的TXD接口被传送到接收设备的RXD接口。 串行通信的协议层中规定了数据包的内容,它由开始位、主体数据、奇偶校验位以及停止位构成,如果通信双方的数据包格式不一致,则不能正常地发送接收数据。 其结构如图2-6所示。

图206串行数据包的基本结构

波特率

本章主要说明串行异步通信,但由于异步通信中没有时钟信号(如上所述,在DB9接口中没有时钟信号),所以为了在两个通信设备间解码信号,需要约定波特率即每个码元长度图206中由虚线分隔的各个帧表示符号。 常见的波特率为4800、9600、115200等。

通信开始和停止信号

串行通信的一个数据包从开始信号开始,到停止信号结束。 的开始信号用逻辑0的数据位表示,数据包的停止信号用0.5、1、1.5或两个逻辑1的数据位表示。 只要双方约定达成一致就可以了。

有效数据

紧接在数据包开头位之后,要传输的主体数据的内容,也称为有效数据,有效数据的长度往往约为5、6、7或8位长。

数据检查

有效数据之后是可选的奇偶校验位。 由于数据通信相对容易受到干扰,传输数据存在偏差,因此可以通过在传输中增加奇偶校验位来解决这一问题。 检测方法有奇检(odd )、偶检(even )、零检(space )、一检(mark )及无检(noparity ),现介绍如下。

在奇偶校验所需的有效数据和奇偶校验比特中,“1”的个数为奇数。 例如,8位长度的有效数据为01101001。 在这种情况下,总共有四个“1”。 为了实现奇偶校验效果,奇偶校验位是“1”。 最后,要传输的数据是8位有效数据加上1位奇偶校验位总共9位。

奇偶校验与奇偶校验要求完全相反,要求帧数据和奇偶校验位中'1'的个数为偶数. 例如,对于数据帧: 11001010,由于数据帧‘1’的数目为4,因而奇偶校验位为‘0’。

不管有效数据的内容如何,0校验始终为“0”,而1校验始终为“1”。

如果未选中,则分组不包含奇偶校验位。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。