串口通信的几个概念 为了更好的理解串口通信,我们还需要了解几个串口通信当中的基本概念。 (1)发送时钟:发送数据时,首先将要发送的数据送入移位寄存器,然后在发送时钟的控制下,将该并行数据逐位移位输出。 (2)接收时钟:在接收串行数据时,接收时钟的上升沿对接收数据采样,进行数据位检测,并将其移入接收器的移位寄存器中,最后组成并行数据输出。 (3)波特率因子:波特率因子是指发送或接收1个数据位所需要的时钟脉冲个数。 串口接头 常用的串口接头有两种,一种是9针串口(简称DB-9),一种是25针串口(简称DB-25)。每种接头都有公头和母头之分,其中带针状的接头是公头,而带孔状的接头是母头。下图是DB-9外观图 由上图可以看出,在9针串口接头中,公头和母头的管脚定义顺序是不一样的,这一点需要特别注意。那么,这个管脚都有什么作用呢?9针串口和25针串口常用管脚的功能说明如下图所示。 RS-232C标准 常用的串行通信接口标准有RS-232C、RS-422、RS-423和RS-485。其中,RS-232C作为串行通信接口的电气标准定义了数据终端设备(DTE:data terminal equipment)和数据通信设备(DCE:data communicaTIon equipment)间按位串行传输的接口信息,合理安排了接口的电气信号和机械要求,在世界范围内得到了广泛的应用。 RS-232C对电器特性、逻辑电平和各种信号功能都做了规定。 在TXD和RXD数据线上:
逻辑1为-3~-15V的电压。
逻辑0为3~15V的电压。
在RTS、CTS、DSR、DTR和DCD等控制线上:
信号有效(ON状态)为3~15V的电压。
信号无效(OFF状态)为-3~-15V的电压。
由此可见,RS-232C是用正负电压来表示逻辑状态,与晶体管-晶体管逻辑集成电路(TTL)以高低电平表示逻辑状态的规定正好相反。 RS-232C标准接口有25条线,其中,4条数据线、11条控制线、3条定时线以及7条备用和未定义线。 那么,这些信号线在9针串口和25针串口的管脚上是如何分配的呢?9针串口和25针串口信号线分配如下图所示。 下面对这些信号线做个简单的介绍。 (1)数据装置准备好(DSR),有效状态(ON)表示数据通信设备处于可以使用状态。 (2)数据终端准备好(DTR),有效状态(ON)表示数据终端设备处于可以使用状态。 这两个设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的一些控制信号决定。 (3)请求发送(RTS),用来表示数据终端设备(DTE)请求数据通信设备(DCE)发送数据。 (4)允许发送(CTS),用来表示数据通信设备(DCE)已经准备好了数据,可以向数据终端设备(DTE)发送数据,是对请求发送信号RTS的响应。请求发送(RTS)和允许发送(CTS)用于半双工的通信系统中,在全双工的系统中,不需要使用请求发送(RTS)和允许发送(CTS)信号,直接将其置为ON即可。 (5)数据载波检出(DCD),用于表示数据通信设备(DCE)已接通通信链路,告知数据终端设备(DTE)准备接收数据。 (6)振铃指示(RI),当数据通信设备收到交换台送来的振铃呼叫信号时,使该信号有效(ON),通知终端,已被呼叫。 (7)发送数据(TXD),数据终端设备(DTE)通过该信号线将串行数据发送到数据通信设备(DCE)。 (8)接收信号(RXD),数据终端设备(DTE)通过该信号线接收从数据通信设备(DCE)发来的串行数据。 (9)地线(SG、PG),分别表示信号地和保护地信号线。
|