当前位置:首页>科技 >内容

串口通信的基本概念_串口通信的几个概念

2024-03-14 15:47:54科技漂亮的斑马

串口是串行端口的缩写,也称为串行通信接口或COM接口。串行通信是指使用串行通信协议在信号线上逐位传输数据的一种通信方式。串行端口根据

串口通信的基本概念_串口通信的几个概念

串口是串行端口的缩写,也称为串行通信接口或COM接口。串行通信是指使用串行通信协议在信号线上逐位传输数据的一种通信方式。串行端口根据电气标准和协议进行分类,包括RS-232-C和RS-422、RS485。

在串行通信中,数据在宽度为1位的单线上传输。一个字节的数据分为8次,从低位到高位依次传输。串行通信的数据是逐位传输的,发送方发送的每一位都有固定的时间间隔,这就要求接收方按照与发送方相同的时间间隔接收每一位。此外,接收者必须能够确定信息组的开始和结束。

常用的两种基本串行通信方法包括同步通信和异步通信。

串行同步通信

同步数据通信(SYNC)是指在约定的通信速率下,发送方和接收方时钟信号的频率和相位始终一致(同步),保证双方在发送和接收数据时有完全一致的时序关系。

同步通信将许多字符组成一个信息组(信息帧),每帧的开头由同步字符表示,一次只传输一帧信息。在传输数据时,需要传输一个时钟信号,这样接收机就可以利用时钟信号来确定每个信息位。

同步通信的优点是传输信息的位数几乎不受限制,一次通信传输的数据有几十到几千字节,所以通信效率高。同步通信的缺点是要求在通信中始终保持准确的同步时钟,即发送时钟和接收时钟要严格同步。两个器件通常使用相同的时钟源。

异步通信广泛应用于串行通信和编程中。

串行异步通信过程

异步数据通信(Asynchronous data communication),也称为起止式异步通信,以字符为单位进行传输。字符之间没有固定的时间间隔,但是每个字符中的每一位都是在固定的时间传输的。

在异步通信中,发送方和接收方之间的同步是通过设置字符格式的起始位和停止位来实现的。具体来说,在正式发送一个有效字符之前,发送方先发送一个起始位,然后是有效字符位,再在字符的末尾发送一个停止位,起始位和停止位构成一帧。在停止位和下一个起始位之间有一个长度不定的空闲位,起始位被规定为低电平(逻辑值为0),停止位和空闲位都是高电平(逻辑值为1),这样就保证了起始位的开头一定有一个跳变沿,从而标志着一个字符传输的开始。根据起始位和停止位,很容易定义和同步字符。

显然,当采用异步通信时,发送端和接收端可以通过各自的时钟控制数据的发送和接收。这两个时钟源相互独立,不能相互同步。

先简单说一下异步通信的数据发送和接收过程。

数据格式

在介绍异步通信的数据发送和接收过程之前,有必要明确异步通信的数据格式。

异步通信规定传输的数据格式由起始位、数据位、奇偶位和停止位组成。异步通信的数据格式如下图所示(本图没有画奇数校验位,因为校验位不是必须的,如果有校验位,应该在数据位之后,停止位之前)。

(1)起始位:起始位必须是持续一位时间的逻辑0电平,标志着一个字符传输的开始。接收器可以使用起始位将其接收时钟与发送器的数据同步。

(2)数据位:数据位紧接在起始位之后,是通信中真正有效的信息。数据位数可以由通信双方商定,一般可以是5位、7位或8位。标准ASCII码为0~127(7位),扩展ASCII码为0~255(8位)。传输数据时,先传输低位字符,再传输高位字符。

(3)奇偶校验位:奇偶校验位只占一位,用于奇数校验或偶数校验,奇偶校验位不需要。如果是奇数校验,需要保证传输的数据总共有奇数个逻辑高比特;如果是偶数校验,需要保证传输的数据总共有偶数个逻辑高比特。

例如,假设发送的数据位是01001100。如果是奇校验,奇校验位为0(确保总共有奇),如果是偶校验,偶校验位为1(确保总共有偶)。

可以看出,奇偶校验位只是对数据设置逻辑高或逻辑低,并不对数据做出实质性的判断。这样做的好处是,接收设备可以知道一个比特的状态,可以判断是否有干扰通信的噪声,以及传输的数据是否同步。

(4)停止位:停止位可以是1位、1.5位或2位,可通过软件设置。它必须是逻辑1电平,标志着字符传输的结束。

(5)空闲位:空闲位是指一个字符的停止位的结束和下一个字符的开始位,表示该行空闲,必须用高电平填充。

数据传输过程

知道异步通信的数据格式后,就可以按照指定的数据格式发送数据了。发送数据的具体步骤如下:

(1)在初始化之后或者当没有数据要发送时,发送器输出具有任意数量的空闲位的逻辑1。

(2)当需要发送数据时,发送方首先输出逻辑0作为起始位。

(3)然后可以输出数据位。发送方输出最低位D0,然后是D1,最后是数据的最高位。

(4)如果有奇偶校验位,发送方输出校验位。

(5)最后,发送方输出一个停止位(逻辑1)。

(6)如果没有要发送的信息,发送方输出逻辑1(空闲位),如果有要发送的信息,则进入步骤(2)。

数据接收过程

在异步通信中,每个位的时间长度由接收时钟和波特率因子决定。我们以波特率因子等于16(接收时钟每16个时钟周期移位接收移位寄存器一次)为例。

(1)开始通信,信号线空闲(逻辑1),当检测到从1到0的转变时,开始计数接收的时钟。

(2)当计数到8个时钟时,检测到输入信号,如果仍处于低电平,则确认这是起始位,不是干扰信号。

(3)接收端检测到起始位后,每16个接收时钟检测一次输入信号,将对应值作为D0位数据。

(4)每16个接收时钟检测一次输入信号,相应的值作为D1位数据,直到所有数据位都被输入。

(5)检查奇偶校验位。

(6)在接收到指定数量的数据位和奇偶校验位之后,通信接口电路希望接收停止位(逻辑1)。如果此时没有接收到逻辑1,则意味着发生了错误,并且在状态寄存器中设置“帧错误”标志;如果没有错误,所有数据位都进行奇偶校验;如果没有错误,则从移位寄存器中取出数据位,并发送到数据输入寄存器;如果有错误,则在状态寄存器中设置“奇偶校验错误”标志。

(7)接收到该帧的所有信息后,将线路上出现的高电平作为空闲位。

(8)当信号再次变低时,开始下一帧的检测。

以上是异步通信中数据发送和接收的全过程。

串行通信的几个概念

为了更好地理解串行通信,我们还需要了解串行通信的几个基本概念。

(1)发送时钟:发送数据时,先将待发送的数据发送到移位寄存器,然后在发送时钟的控制下逐位输出并行数据。

(2)接收时钟:接收串行数据时,接收时钟的上升沿对接收到的数据进行采样,进行数据位检测,移入接收器的移位寄存器,最终形成并行数据输出。

(3)波特率因子:波特率因子是指发送或接收一个数据位所需的时钟脉冲数。

串行连接器

常用的串口有两种,一种是9针串口(简称DB-9),一种是25针串口(简称DB-25)。每个接头有一个公头和一个母头,其中针状接头为公头,孔状接头为母头。下图是DB-9的外观。

从上图可以看出,在9针串行连接器中,公母连接器的引脚定义顺序不同,需要特别注意。那么,这个针是做什么的?9针串口和25针串口常用引脚的功能如下图所示。

RS-232C标准

常用的串行通信接口标准有RS-232C、RS-422、RS-423和RS-485。其中,RS-232C作为串行通信接口的电气标准,定义了数据终端设备(DTE)和数据通信设备(DCE)之间的逐位串行传输接口信息,合理安排了接口的电气信号和机械要求,在世界范围内得到了广泛应用。

电气特性

RS-232C规定了电气特性、逻辑电平和各种信号功能。

在TXD和RXD数据线上:

逻辑1是-3~-15V的电压。

逻辑0是3~15V的电压。

在RTS、CTS、DSR、DTR和DCD等控制线路上:

信号在3~15V电压下有效(ON状态)。

信号无效(关闭状态),电压为-3~-15V。

可以看出,RS-232C用正负电压来表示逻辑状态,这与晶体管-晶体管逻辑集成电路(TTL)用高低电平来表示逻辑状态的规定正好相反。

信号线分布

RS-232C标准接口有25条线,包括4条数据线、11条控制线、3条定时线和7条备用和未定义线。

那么,这些信号线是如何分布在9针串口和25针串口的管脚上的呢?9针串口和25针串口的信号线分布如下图所示。

下面我们来简单介绍一下这些信号线。

(1)数据设备就绪(DSR),有效状态(开)表示数据通信设备处于可用状态。

(2)数据终端就绪(DTR),有效状态(开)表示数据终端设备处于可用状态。

这两个设备状态信号有效,只说明设备本身可用,不代表通信链路可以开始通信。能否开始通信取决于以下控制信号。

(3)请求发送(RTS),即数据终端设备(DTE)请求数据通信设备(DCE)发送数据。

(4) CTS,表示数据通信设备(DCE)已经准备好数据,并且可以将数据发送到数据终端设备(DTE ),是对请求发送信号RTS的响应。请求发送(RTS)和允许发送(CTS)用于半双工通信系统。在全双工系统中,不需要使用RTS和CTS信号,只需打开它们即可。

(5)数据载波检测(DCD),它指示数据通信设备(DCE)已经连接了通信链路,并通知数据终端设备(DTE)它已准备好接收数据。

(6)振铃指示(RI),当数据通信设备接收到交换机发送的振铃呼叫信号时,它使该信号有效(on ),以通知终端它已被呼叫。

(7)发送数据(TXD),数据终端设备(DTE)通过这条信号线向数据通信设备(DCE)发送串行数据。

(8)接收信号(RXD),数据终端设备(DTE)通过它接收数据通信设备(DCE)发送的串行数据。

(9)接地线(SG,PG),分别代表信号地和保护地的信号线。

声明本站所有作品图文均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系我们

Top