串口Usart、COM口、TTL、RS-232的区别详解

一、RS232简介

       在最初的应用中, RS-232 串口标准常用于计算机、路由与调制调解器(MODEN,俗称“猫” )之间的通讯 ,在这种通讯系统中,设备被分为数据终端设备 DTE(计算机、路由)和数据通讯设备 DCE(调制调解器)。

二、RS-232特点

(1)接口的信号电平值较高,易损坏接口电路的芯片。

  1. RS232接口任何一条信号线的电压均为负逻辑关系。即:逻辑“1”为  -3 ~ -15V逻辑“0”:+3 ~ +15V噪声容限为2V
  2. 即要求接收器能识别高于+3V的信号作为逻辑“0”低于-3V的信号作为逻辑“1”
  3. TTL电平5V为逻辑正,0为逻辑负 。与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。

(2)传输速率较低,在异步传输时,比特率为20Kbps;因此在51CPLD开发板中,综合程序波特率只能采用19200,也是这个原因。

(3)接口使用一根信号线和一根信号返回线与地线构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。

(4)传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在15米左右。

三、RS232接口

       在旧式的台式计算机中一般会有 RS-232 标准的 COM 口(也称 DB9 接口),见下图(From 野火论坛)。

       其中接线口以针式引出信号线的称为公头,以孔式引出信号线的称为母头。在计算机中一般引出公头接口,而在调制调解器设备中引出的一般为母头,使用上图中的串口线即可把它与计算机连接起来。通讯时,串口线中传输的信号就是使用前面讲解的 RS-232 标准调制的。
       在这种应用场合下, DB9 接口中的公头及母头的各个引脚的标准信号线接法见下图和下表(From 野火论坛)。

序号 名称 符号 数据方向 说明
1 载波检测 DCD DTE->DCE Data Carrier Detect , 数 据 载 波 检 测 , 用于DTE 告知对方,本机是否收到对方的载波信号
2 接收数据 RXD DTE->DCE Receive Data,数据接收信号,即输入 。
3 发送数据 TXD DTE->DCE Transmit Data,数据发送信号,即输出。两个设备之间的 TXD 与 RXD 应交叉相连
4 数 据 终 端
(DTE) 就绪
DTR DTE->DCE Data Terminal Ready,数据终端就绪,用于DTE 向对方告知本机是否已准备好
5 信号地 GND - 地线,两个通讯设备之间的地电位可能不一样,这会影响收发双方的电平信号,所以两个串口设备之间必须要使用地线连接,即共地。
6 数 据 设备(DCE) 就绪 DSR DTE->DCE Data Set Ready,数据发送就绪,用于 DCE 告知对方本机是否处于待命状态
7 请求发送 RTS DTE->DCE Request To Send,请求发送, DTE 请求 DCE本设备向 DCE 端发送数据
8 允许发送 CTS DTE->DCE Clear To Send,允许发送, DCE 回应对方的RTS 发送请求,告知对方是否可以发送数据
9 响铃指示 RI DTE->DCE Ring Indicator,响铃指示,表示 DCE 端与线路已接通

       上表中的是计算机端的 DB9 公头标准接法,由于两个通讯设备之间的收发信号(RXD与 TXD)应交叉相连,所以调制调解器端的 DB9 母头的收发信号接法一般与公头的相反,两个设备之间连接时,只要使用“直通型”的串口线连接起来即可,见下图。

       串口线中的 RTS、 CTS、 DSR、 DTR 及 DCD 信号,使用逻辑 1 表示信号有效逻辑 0表示信号无效。例如,当计算机端控制 DTR 信号线表示为逻辑 1 时,它是为了告知远端的调制调解器,本机已准备好接收数据, 0 则表示还没准备就绪。
       在目前的其它工业控制使用的串口通讯中,一般只使用 RXD、 TXD 以及 GND 三条信号线,直接传输数据信号。而 RTS、 CTS、 DSR、 DTR 及 DCD 信号都被裁剪掉了,如果您在前面被这些信号弄得晕头转向,那就直接忽略它们吧。