uart-232

RS-232

求助编辑百科名片

个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。

目录

EIA RS-232C接口标准

1.    远程通信连接数据终端

2.    发送”和“接收”

RS-232C标准(协议)

1.    1.电气特性

2.    2、连接器的机械特性

3.    3、RS-232C 的接口信号

4.    4、RS-232的接线

RS-232-RS-485

RS-422-RS-485接口

25芯针转换为9芯针

RS-232-RS-232C接口定义(25芯)

RS-232-RS-232C接口定义(9芯)

RS-232-缺点

展开

EIA RS-232C接口标准

1.    远程通信连接数据终端

2.    发送”和“接收”

RS-232C标准(协议)

1.    1.电气特性

2.    2、连接器的机械特性

3.    3、RS-232C 的接口信号

4.    4、RS-232的接线

RS-232-RS-485

RS-422-RS-485接口

25芯针转换为9芯针

RS-232-RS-232C接口定义(25芯)

RS-232-RS-232C接口定义(9芯)

RS-232-缺点

展开

  

RS-232-C

  

  

仅供参考

RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道。

  在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。

  RS-232-C标准规定的数据传输速率为50、75、100、150、300、600、1200、2400、4800、9600、19200、38400波特

  RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的

  

rs232(9针)接口

通信。

  

  

编辑本段EIA RS-232C 接口标准

  串行通信接口标准经过使用和发展,目前已经有几种。但都是在RS-232标准的基础上经过改进而形成的。所以,以RS-232C为主来讨论。RS-232C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在0~20000b/s范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通信设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。

  在讨论RS-232C接口标准的内容之前,先说明两点:

远程通信连接数据终端

  首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据电路设备DCE(Data Circuit Equipment)而制定的。因此这个标准的制定,并未考虑计算机系统的应用要求。但目前它又广泛地被借来用于计算机(更准确的说,是计算机接口)与终端或外设之间的近端连接标准。显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相矛盾的。有了对这种背景的了解,我们对RS-232C标准与计算机不兼容的地方就不难理解了。

“发送”和“接收”

  其次,RS-232C标准中所提到的“发送”和“接收”,都是站在DTE立场上,而不是站在DCE的立场来定义的。由于在计算机系统中,往往是CPU和I/O设备之间传送信息,两者都是DTE,因此双方都能发送和接收。

编辑本段RS-232C 标准(协议)

  RS-232C 标准(协议)的全称是 EIA-RS-232C 标准,其中EIA (Electronic Industry Association)代表美国电子工业协会,RS(recommended standard)代表推荐标准,232是标识号,C代表RS232的最新一次修改(1969),在这之前,有RS232B、RS232A。它规定连接电缆和机械、电气特性、信号功能及传送过程。常用物理标准还有有EIARS-422A、EIA RS-423A、EIARS-485。这里只介绍EIA RS-232C(简称232,RS232)。例如,目前在IBM PC机上的COM1、COM2接口,就是RS-232C接口。

1.电气特性

  EIA-RS-232C 对电器特性、逻辑电平和各种信号线功能都作了规定。

  在TxD和RxD上:

  逻辑1(MARK)=-3V~-15V

  逻辑0(SPACE)=+3~+15V

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

  信号有效(接通,ON状态,正电压)=+3V~+15V

  信号无效(断开,OFF状态,负电压)=-3V~-15V

  以上规定说明了RS-232C标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号;接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在±(3~15)V之间。

  EIA RS-232C 与TTL转换:EIA RS-232C 是用正负电压来表示逻辑状态,与TTL以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口终端的TTL器件连接,必须在EIA RS-232C 与TTL电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,如MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。MAX232芯片可完成TTL←→EIA双向电平转换。

2、连接器的机械特性

  连接器:由于RS-232C并未定义连接器的物理特性,因此,出现了DB-25、DB-15和DB-9各种类型的连接器,其引脚的定义也各不相同。下面分别介绍两种连接器。

  (1)DB-25:PC和XT机采用DB-25型连接器。DB-25连接器定义了25根信号线,分为4组:

  ①异步通信的9个电压信号(含信号地SG)2,3,4,5,6,7,8,20,22

  ②20mA电流环信号 9个(12,13,14,15,16,17,19,23,24)

  ③空6个(9,10,11,18,21,25)

  ④保护地(PE)1个,作为设备接地端(1脚)

  注意,20mA电流环信号仅IBM PC和IBM PC/XT机提供,至AT机及以后,已不支持。

  (2)DB-9:

  在AT机及以后,不支持20mA电流环接口,使用DB-9连接器,作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。它只提供异步通信的9个信号。DB-9型连接器的引脚分配与DB-25型引脚信号完全不同。因此,若与配接DB-25型连接器的DCE设备连接,必须使用专门的电缆线。

  电缆长度:在通信速率低于20kb/s时,RS-232C 所直接连接的最大物理距离为15m(50英尺)。

  最大直接传输距离说明:RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间最大传输距离为15m(50英尺)。可见这个最大的距离是在码元畸变小于4%的前提下给出的。为了保证码元畸变小于4%的要求,接口标准在电气特性中规定,驱动器的负载电容应小于2500pF。

3、RS-232C 的接口信号

  RS-232C 的功能特性定义了25芯标准连接器中的20根信号线,其中2条地线、4条数据线、11条控制线、3条定时信号线,剩下的5根线作备用或未定义。常用的只有10根,它们是:

  (1)联络控制信号线:

  数据发送准备好(Data set ready-DSR)——有效时(ON)状态,表明MODEM处于可以使用的状态。

  数据终端准备好(Data terminal ready-DTR)——有效时(ON)状态,表明数据终端可以使用。

  这两个信号有时连到电源上,一上电就立即有效。这两个设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的控制信号决定。

  请求发送(Request to send-RTS)——用来表示DTE请求DCE发送数据,即当终端准备要接收MODEM传来的数据时,使该信号有效(ON状态),请求MODEM发送数据。它用来控制MODEM是否要进入发送状态。

  允许发送(Clear to send-CTS)——用来表示DCE准备好接收DTE发来的数据,是与请求发送信号RTS相应的信号。当MODEM准备好接收终端传来的数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线TxD发送数据。

  这对RTS/CTS请求应答联络信号是用于半双工MODEM系统中发送方式和接收方式之间的切换。在全双工系统中,因配置双向通道,故不需要RTS/CTS联络信号,使其变高。

  接收线信号检出(Received Line detection-RLSD)——用来表示DCE已接通通信链路,告知DTE准备接收数据。当本地的MODEM收到由通信链路另一端(远地)的MODEM送来的载波信号时,使RLSD信号有效,通知终端准备接收,并且由MODEM将接收下来的载波信号解调成数字两数据后,沿接收数据线RxD送到终端。此线也叫做数据载波检出(Data Carrier dectection-DCD)线。

  振铃指示(Ringing-RI)——当MODEM收到交换台送来的振铃呼叫信号时,使该信号有效(ON状态),通知终端,已被呼叫。

  (2)数据发送与接收线:

  发送数据(Transmitted data-TxD)——通过TxD终端将串行数据发送到MODEM,(DTE→DCE)。

  接收数据(Received data-RxD)——通过RxD线终端接收从MODEM发来的串行数据,(DCE→DTE)。

  (3)地线 :  

 GND、Sig.GND——保护地和信号地,无方向。

  上述控制信号线何时有效,何时无效的顺序表示了接口信号的传送过程。例如,只有当DSR和DTR都处于有效(ON)状态时,才能在DTE和DCE之间进行传送操作。若DTE要发送数据,则预先将DTR线置成有效(ON)状态,等CTS线上收到有效(ON)状态的回答后,才能在TxD线上发送串行数据。这种顺序的规定对半双工的通信线路特别有用,因为半双工的通信才能确定DCE已由接收方向改为发送方向,这时线路才能开始发送。

  2个数据信号:发送TXD;接收RXD。

  1个信号地线:SG。

  6个控制信号:

  DSR数据发送准备好,Data Set Ready。

  DTR数据终端准备好,Data Terminal Ready。

  RTSDTE请求DCE发送(Request To Send)。

  CTSDCE允许DTE发送(Clear To Send),该信号是对RTS信号的回答。

  DCD数据载波检测(Data Carrier Detection),当本地DCE设备(Modem)收到对方的DCE设备送来的载波信号时,使DCD有效,通知DTE准备接收, 并且由DCE将接收到的载波信号解调为数字信号,经RXD线送给DTE。

  RI振铃信号(Ringing),当DCE收到对方的DCE设备送来的振铃呼叫信号时,使该信号有效,通知DTE已被呼叫。

4、RS-232的接线

  在工程当中经常会用到232口,一般是圆头8针与D型9针两种串口。在一定的条件下,必须要自己制作一个相应的"圆头或者是D型的"232串口。

  RS232C串口通信接线方法(三线制

  首先,串口传输数据只要有接收数据针脚和发送针脚就能实现:同一个串口的接收脚和发送脚直接用线相连,两个串口相连或一个串口和多个串口相连

  同一个串口的接收脚和发送脚直接用线相连对9针串口和25针串口,均是2与3直接相连;

  两个不同串口(不论是同一台计算机的两个串口或分别是不同计算机的串口)

  DB9-DB9

  2-3,3-2,5-5

  DB25-DB25

  2-3,3-2,7-7

  DB9-DB25

  2-2,3-3,5-7

  上面是对微机标准串行口而言的,还有许多非标准设备,如接收GPS数据或电子罗盘数据,只要记住一个原则:接收数据针脚(或线)与发送数据针脚(或线)相连,彼此交叉,信号地对应相接。

  8针圆形串口接线:2"逻辑地",4"TXD",7"RXD"。

  9针D型串口:2"RXD",3"TXD",5"逻辑地"。

编辑本段RS-232-RS-485

  RS-485总线,在要求通信距离为几十米到上千米时,广泛采用RS-485 串行总线

  RS-485采用平衡发送和差分接收,因此具有抑制共模干扰的能力。加上总线收发器具有高灵敏度,能检测低至200mV的电压,故传输信号能在千米以外得到恢复。

  RS-485采用半双工工作方式,任何时候只能有一点处于发送状态,因此,发送电路须由使能信号加以控制。

  RS-485用于多点互连时非常方便,可以省掉许多信号线。应用RS-485 可以联网构成分布式系统,其允许最多并联32台驱动器和32台接收器。

编辑本段RS-422-RS-485接口

  RS-422的电气性能与RS-485完全一样。主要的区别在于:

  RS-422有4根信号线:两根发送(Y、Z)、两根接收(A、B)。由于RS-422的收与发

  是分开的所以可以同时收和发(全双工)。

  RS-485有2根信号线:发送和接收都是A和B。由于RS-485的收与发是共用两根线所

  以不能够同时收和发(半双工)。

编辑本段25芯针转换为9芯针

  25芯接口 9芯接口

  2 3

  3 2

  4 7

  5 8

  6 6

  7 5

  8 1

  20 4

  22 9

编辑本段RS-232-RS-232C接口定义(25芯)

  针脚定义 符号

  1 频蔽地线

  2 发送数据 TXD

  3 接收数据 RXD

  4 发送请求RTS

  5 发送清除 CTS

  6 数据准备好 DSR

  7 信号地 SG

  8 载波检测 DCD

  9 发送返回(+)

  10 未定义

  11 数据发送(-)

  12~17 未定义

  18 数据接收(+)

  19 未定义

  20 数据终端准备好 DTR

  21 未定义

  22 振铃 RI

  23~24 未定义

  25 接收返回(-)

  Pin 1 Protective Ground

  Pin 2 Transmit Data

  Pin 3 Received Data

  Pin 4 Request To Send

  Pin 5 Clear To Send

  Pin 6 Data Set Ready

  Pin 7 Signal Ground

  Pin 8 Received Line Signal Detector

  (Data Carrier Detect)

  Pin 20 Data Terminal Ready

  Pin 22 Ring Indicator

编辑本段RS-232-RS-232C接口定义(9芯)

  

针脚

信号

定义

作用

1

DCD

载波检测

Received Line Signal Detector(Data Carrier Detect)

2

RXD

接收数据

Received Data

3

TXD

发送数据

Transmit Data

4

DTR

数据终端准备好

Data Terminal Ready

5

SGND

信号地

Signal Ground

6

DSR

数据准备好

Data Set Ready

7

RTS

请求发送

Request To Send

8

CTS

清除发送

Clear To Send

9

RI

振铃提示

Ring Indicator

编辑本段RS-232-缺点

  (1)接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容故需使用电平转换电路方能与TTL电路连接。

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

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

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

 

RS232,RS485波形分析

经常遇到初学者,对单片机串行通讯出了问题不知道如何办的情况。其实最有效的调试方法是用示波器观察收发数据的波形。通过观察波形可以确定以下情况: 

1. 是否有数据接收或发送; 

2. 数据是否正确; 

3. 波特率是否正确; 

一、串行数据的格式
异步串行数据的一般格式是:起始位+数据位+停止位,其中起始位1 位,数据位可以是5、6、7、8位,停止位可以是1、1.5、2位。

起始位是一个值为0的位,所以对于正逻辑的TTL电平,起始位是一位时间的低电平;停止位是值为1的位,所以对于正逻辑的TTL电平,停止位是高电平。线路路空闲或者数据传输结束,对于正逻辑的TTL电平,线路总是1。对于负逻辑(如RS-232电平)则相反。

       例如,对于16进制数据55aaH,当采用8位数据位、1位停止位传输时,它在信号线上的波形如图1(TTL电平)和图2(RS-232电平)所示。 (先传第一个字节55,再传第二个字节aa,每个字节都是从低位向高位逐位传输)

uart-232_第1张图片
图1 TTL电平的串行数据帧格式(55aah)



图2 RS-232电平的串行数据帧格式(55aah)

二、根据波形图计算波特率
如图3是图1在示波器中的显示示意,其中灰色线是示波器的时间分度线,此时假设是200us/格。

uart-232_第2张图片
图3 波特率计算示意图

       可以看了,第一个字节的10位(1位起始位,8位数据位和1位停止位)共占约1.05ms,这样可计算出其波特率约为:

10bit / 1.05ms X 1000 ≈ 9600 bit/s

       如果上图中的时间轴是100us/格,同样可以计算出波特率应是19200bit/s。

       当通讯不正常,又能观察到波形时,就可根据上述方法,从波形图计算一下波特率是否正确。

三、根据波形图判断RS-485收发数据的正确与否
       RS-485是一种半双工的串行通讯方式(RS-422为全双工),485电平芯片所以要正确接收和发送数据,必需保证控制信号和数据的同步,否则要么发送数据丢失,要么接收数据可能丢失。

       RS-485发送数据时的正确时序如图4所示。



图4 RS-485的正确发送数据时序

    在图4中,发送控制信号的宽度基本与数据信号的宽度一致,所以能保证发送数据的正确和发送后及时转为接收。

 

    图5 和图6 分别是控制信号太短和控制信号太长的情况。


uart-232_第3张图片
图5 RS-485控制信号太短时的时序


图6 RS-485控制信号太短时的时序

    在图5中,由于控制信号关闭过早,则第二个字节的后两位将发送错误;在图6中,由于控制信号关闭过迟,使485芯片在发送数据后,不能及时转到接收状态,此时总线若有数据过来,则本单元将不能正确接收。

    总结:只要掌握上述波形分析方法,任何异步串行数据的接收和发送问题,基本都可以得到解决。

RS485电平和RS422电平:由于两者均采用差分传输(平衡传输)的方式,所以它们的电平方式,一般有两个引脚 A,B 发送端 AB间的电势差U为UB-UA: +2 ~ +6v : 1 ,-2 ~ -6v : 0 ,接收端 AB间的电势差U为:大于 +200mv: 1 ,小于 -200mv: 0 ,定义逻辑1为B>A的状态,定义逻辑0为B<A的状态 ,AB之间的电压差不小于200mv 。 
USB电平:电源线是5V,为USB设备提供最大500mA的电流,它与数据线上的电平无关,数据线是差分信号,通常D+和D-在+400mV~-400mV间变化,在传统的单端(Single-ended)通信中,一条线路来传输一个比特位。高电平表示1,低电平表示0。倘若在数据传输过程中受到干扰,高低电平信号完全可能因此产生突破临界值的大幅度扰动,一旦高电平或低电平信号超出临界值,信号就会出错。在差分传输电路中,输出电平为正电压时表示逻辑“1”,输出负电压时表示逻辑“0”,而输出“0”电压是没有意义的,它既不代表“1”,也不代表“0”。而差分通信中,干扰信号会同时进入相邻的两条信号线中,在信号接收端,两个相同的干扰信号分别进入差分放大器的两个反相输入端后,输出电压为0。所以说,差分信号技术对干扰信号具有很强的免疫力。对于串行传输来说,LVDS能够低于外来干扰;而对于并行传输来说,LVDS可以不仅能够抵御外来干扰,还能够抵御数据传输线之间的串扰。因为上述原因,实际电路中只要使用低压差分信号(Low Voltage Differential Signal,LVDS),350mV左右的振幅便能满足近距离传输的要求。假定负载电阻为100Ω,采用LVDS方式传输数据时,如果双绞线长度为10m,传输速率可达400 Mbps;当电缆长度增加到20m时,速率降为100 Mbps;而当电缆长度为100m时,速率只能达到10 Mbps左右。

RS232 可做到双向传输,全双工通讯 最高传输速率 20kbps 。

422    只能做到单向传输,半双工通讯,最高传输速率10Mbps 。

485    双向传输,半双工通讯, 最高传输速率10Mbps 。

 

你可能感兴趣的:(uart-232)