RS232通信协议.pdf
《RS232通信协议.pdf》由会员分享,可在线阅读,更多相关《RS232通信协议.pdf(66页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、RS232 技术文摘 枕善居收集整理 http:/-1-版权声明:本资料来自互联网,枕善居只负责聚合,原版权规原作者所有!枕善居不负责任何责任!(我为人人,人人为我,枕善居 http:/)目目 次次 1.RS-232-C 详解 2 2.串口通信基本接线方法 12 3.串口通讯的概念及接口电路 13 4.有关 RS232 和 RS485 接口的问答 14 5.同步通信方式 16 6.通信协议19 7.实战串行通讯25 8.全双工和半双工方式 33 9.浅析 PC 机串口通讯流控制 34 10.奇偶校验 35 11.开发通信软件的技术与技巧 36 12.接口技术的基本知识 41 13.一个单片机串
2、行数据采集/传输模块的设计 44 14.单工、半双工和全双工的定义 48 15.从 RS232 端口获得电源49 16.串行同步通信的应用50 17.串行通信波特率的一种自动检测方法53 18.RS-232、RS-422 与 RS-485 标准及应用56 19.串口泵 64 RS232 技术文摘 枕善居收集整理 http:/-2-RS-232-C 详解详解 串行通信接口标准经过使用和发展,目前已经有几种。但都是在 RS-232 标准的基础上经过改进而形成的。所以,以 RS-232C 为主来讨论。RS-323C 标准是美国 EIA(电子工业联合会)与 BELL 等公司一起开发的 1969 年公布
3、的通信协议。它适合于数据传输速率在 020000b/s 范围内的通信。这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设备厂商都生产与 RS-232C 制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。在讨论 RS-232C 接口标准的内容之前,先说明两点:首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据通信设备 DCE(Data Communication Equipment)而制定的。因此这个标准的制定,并未考虑计算机系统的应用要求。但目前它又广泛地被借来用于计算机
4、(更准确的说,是计算机接口)与终端或外设之间的近端连接标准。显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相矛盾的。有了对这种背景的了解,我们对 RS-232C 标准与计算机不兼容的地方就不难理解了。其次,RS-232C 标准中所提到的“发送”和“接收”,都是站在 DTE 立场上,而不是站在 DCE 的立场来定义的。由于在计算机系统中,往往是 CPU 和 I/O 设备之间传送信息,两者都是 DTE,因此双方都能发送和接收。一、一、RS-232-C RS-232C 标准(协议)的全称是 EIA-RS-232C 标准,其中 EIA(Electronic Industry Associat
5、ion)代表美国电子工业协会,RS(ecommeded standard)代表推荐标准,232 是标识号,C 代表 RS232 的最新一次修改(1969),在这之前,有 RS232B、RS232A。它规定连接电缆和机械、电气特性、信号功能及传送过程。常用物理标准还有有 EIARS-232-C、EIARS-422-A、EIARS-423A、EIARS-485。这里只介绍 EIARS-232-C(简称 232,RS232)。例如,目前在 IBM PC 机上的 COM1、COM2 接口,就是 RS-232C 接口。1.电气特性 EIA-RS-232C 对电器特
6、性、逻辑电平和各种信号线功能都作了规定。在 TxD 和 RxD 上:逻辑 1(MARK)=-3V-15V 逻辑 0(SPACE)=+315V 在 RTS、CTS、DSR、DTR 和 DCD 等控制线上:信号有效(接通,ON 状态,正电压)+3V+15V 信号无效(断开,OFF 状态,负电压)=-3V-15V RS232 技术文摘 枕善居收集整理 http:/-3-图 1 以上规定说明了 RS-323C 标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平告语+3V;对于控制信号;接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信
7、号无效的电平低于-3V,也就是当传输电平的绝对值大于 3V 时,电路可以有效地检查出来,介于-3+3V 之间的电压无意义,低于-15V或高于+15V 的电压也认为无意义,因此,实际工作时,应保证电平在(315)V 之间。EIA-RS-232C 与 TTL 转换:EIA-RS-232C 是用正负电压来表示逻辑状态,与 TTL 以高低电平表示逻辑状态的规定不同。因此,为了能够同计算机接口或终端的 TTL 器件连接,必须在 EIA-RS-232C 与 TTL 电路之间进行电平和逻辑关系的变换。实现这种变换的方法可用分立元件,也可用集成电路芯片。目前较为广泛地使用集成电路转换器件,如 MC1488、S
8、N75150芯片可完成 TTL 电平到 EIA 电平的转换,而 MC1489、SN75154 可实现 EIA 电平到 TTL 电平的转换。MAX232 芯片可完成 TTLEIA 双向电平转换,图 1 显示了 1488 和 1489 的内部结构和引脚。MC1488 的引脚(2)、(4,5)、(9,10)和(12,13)接 TTL 输入。引脚 3、6、8、11 输出端接 EIA-RS-232C。MC1498 的 14 的 1、4、10、13 脚接 EIA 输入,而 3、6、8、11 脚接 TTL输出。具体连接方法如图 2 所示。图中的左边是微机串行接口电路中的主芯片 UART,它是TTL 器件,右
9、边是 EIA-RS-232C 连接器,要求 EIA 高电压。因此,RS-232C 所有的输出、输入信号都要分别经过 MC1488 和 MC1498 转换器,进行电平转换后才能送到连接器上去或从连接器上送进来。RS232 技术文摘 枕善居收集整理 http:/-4-图 2 2、连接器的机械特性:连接器:由于 RS-232C 并未定义连接器的物理特性,因此,出现了 DB-25、DB-15 和 DB-9各种类型的连接器,其引脚的定义也各不相同。下面分别介绍两种连接器。(1)DB-25:PC 和 XT 机采用 DB-25 型连接器。DB-25 连接器定义了 25 根信号线,分为 4 组:异步通信的 9
10、 个电压信号(含信号地 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 脚)DB-25 型连接器的外形及信号线分配如图 3 所示。注意,20mA 电流环信号仅 IBM PC 和IBM PC/XT 机提供,至 AT 机及以后,已不支持。图 3 (2)DB-9 连接器 在 AT 机及以后,不支持 20mA 电流环接口,使用 DB-9 连接器,作为提供多功能 I/O 卡或主板上 COM1 和 COM2 两个串行接口的连接器。它只提供
11、异步通信的 9 个信号。DB-25 型连RS232 技术文摘 枕善居收集整理 http:/-5-接器的引脚分配与 DB-25 型引脚信号完全不同。因此,若与配接 DB-25 型连接器的 DCE 设备连接,必须使用专门的电缆线。电缆长度:在通信速率低于 20kb/s 时,RS-232C 所直接连接的最大物理距离为 15m(50英尺)。最大直接传输距离说明:RS-232C 标准规定,若不使用 MODEM,在码元畸变小于 4%的情况下,DTE 和 DCE 之间最大传输距离为 15m(50 英尺)。可见这个最大的距离是在码元畸变小于 4%的前提下给出的。为了保证码元畸变小于 4%的要求,接口标准在电气
12、特性中规定,驱动器的负载电容应小于 2500pF。3、RS-232C 的接口信号 RS-232C 规标准接口有 25 条线,4 条数据线、11 条控制线、3 条定时线、7 条备用和未定义线,常用的只有 9 根,它们是:(1)联络控制信号线:数据装置准备好(Data set ready-DSR)有效时(ON)状态,表明 MODEM 处于可以使用的状态。数据终端准备好(Data set ready-DTR)有效时(ON)状态,表明数据终端可以使用。这两个信号有时连到电源上,一上电就立即有效。这两个设备状态信号有效,只表示设备本身可用,并不说明通信链路可以开始进行通信了,能否开始进行通信要由下面的控
13、制信号决定。请求发送(Request to send-RTS)用来表示DTE请求DCE发送数据,即当终端要发送数据时,使该信号有效(ON 状态),向 MODEM 请求发送。它用来控制 MODEM 是否要进入发送状态。允许发送(Clear to send-CTS)用来表示 DCE 准备好接收 DTE发来的数据,是对请求发送信号 RTS 的响应信号。当 MODEM 已准备好接收终端传来的数据,并向前发送时,使该信号有效,通知终端开始沿发送数据线 TxD 发送数据。这对 RTS/CTS 请求应答联络信号是用于半双工 MODEM 系统中发送方式和接收方式之间的切换。在全双工系统中作发送方式和接收方式之
14、间的切换。在全双工系统中,因配置双向通道,故不需要 RTS/CTS 联络信号,使其变高。接收线信号检出(Received Line detection-RLSD)用来表示 DCE已接通通信链路,告知 DTE 准备接收数据。当本地的 MODEM 收到由通信链路另一端(远地)的 MODEM 送来的载波信号时,使 RLSD 信号有效,通知终端准备接收,并且由 MODEM 将接收下来的载波信号解调成数字两数据后,沿接收数据线 RxD 送到终端。此线也叫做数据载波检出(Data Carrier dectection-DCD)线。振铃指示(Ringing-RI)当 MODEM 收到交换台送来的振铃呼叫信号
15、时,使该信号有效(ON 状态),通知终端,已被呼叫。(2)数据发送与接收线:RS232 技术文摘 枕善居收集整理 http:/-6-发送数据(Transmitted data-TxD)通过 TxD 终端将串行数据发送到 MODEM,(DTEDCE)。接收数据(Received data-RxD)通过 RxD 线终端接收从 MODEM 发来的串行数据,(DCEDTE)。(3)地线 有两根线 SG、PG信号地和保护地信号线,无方向。上述控制信号线何时有效,何时无效的顺序表示了接口信号的传送过程。例如,只有当 DSR 和 DTR 都处于有效(ON)状态时,才能在 DTE 和 DCE 之间进行传送操作
16、。若 DTE 要发送数据,则预先将 DTR 线置成有效(ON)状态,等 CTS 线上收到有效(ON)状态的回答后,才能在 TxD 线上发送串行数据。这种顺序的规定对半双工的通信线路特别有用,因为半双工的通信才能确定 DCE 已由接收方向改为发送方向,这时线路才能开始发送。2 个数据信号:发送 TXD;接收 RXD。1 个信号地线:SG。6 个控制信号:DSR数传机(即 modem)准备好,Data Set Ready.DTR数据终端(DTE,即微机接口电路,如Intel8250/8251,16550)准备好,Data Terminal Ready。RTS
17、DTE 请求 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收到交换机送来的振铃呼叫信号时,使该信号有效,通知 DTE 已被呼叫。用途 232 引脚
18、 CCITT Modem 名称 说明 异步 同步 1 101 AA 保护地 设备外壳接地 PE PE 2 103 BA 发送数据 数据送 Modem TXD 3 104 BB 接收数据 从 Modem 接收数据 RXD 4 105 CA 请求发送 在半双工时控制发送器的开和关 RTS 5 106 CB 允许发送 Modem 允许发送 CTS 6 107 CC 数据终端准备好 Modem 准备好 DSR 7 102 AB 信号地 信号公共地 SG SG RS232 技术文摘 枕善居收集整理 http:/-7-8 109 CF 载波信号检测 Modem 正在接收另一端送来的信号 DCD 9 空 1
19、0 空 11 空 12 接收信号检测(2)在第二通道检测到信号 13 允许发送(2)第二通道允许发送 14 118 发送数据(2)第二通道发送数据 15 113 DA 发送器定时 为 Modem 提供发送器定时信号 16 119 接收数据(2)第二通道接收数据 17 115 DD 接收器定时 为接口和终端提供定时 18 空 19 请求发送(2)连接第二通道的发送器 20 108 CD 数据终端准备好 数据终端准备好 DTR 21 空 22 125 振铃 振铃指示 RI 23 111 CH 数据率选择 选择两个同步数据率 24 114 DB 发送器定时 为接口和终端提供定时 25 空 PART2
20、 一、远距离通信 第 1 和第 2 中情况是属于远距离通信(传输距离大于 15m 的通信)的例子,故一般要加调制解调器 MODEM,因此使用的信号线较多。注意:在以下各图中,DTE 信号为 RS-232-C信号,DTE 与计算机间的电平转换电路未画出。1、采用 Modem(DCE)和电话网通信时的信号连接:若在双方 MODEM 之间采用普通电话交换线进行通信,除了需要 28 号信号线外还要增加 RI(22 号)和 DTR(20 号)两个信号线进行联络,如图 1 所示。RS232 技术文摘 枕善居收集整理 http:/-8-图 1 DSR、DTR:数传机(DCE)准备好、数据终端(DTE)准备好
21、,只表示设备本身可用。首先,通过电话机拔号呼叫对方,电话交换台向对方发出拔号呼叫信号,当对方 DCE收到该信号后,使 RI(振铃信号)有效,通知 DTE,已被呼叫。当对方“摘机”后,两方建立了通信链路。若计算机要发送数据至对方,首先通过接口电路(DTE)发出 RTS(请求发送)信号。此时,若 DCE(Modem)允许传送,则向 DTE 回答 CTS(允许发送)信号。一般可直接将 RTS/CTS接高电平,即只要通信链路已建立,就可传送信号。(RTS/CTS 可只用于半双工系统中作发送方式和接收方式的切换。当 DTE 获得 CTS 信号后,通过 TXD 线向 DCE 发出串行信号,DCE(Mode
22、m)将这些数字信号调制成模拟信号(又称载波信号),传向对方。计算机向 DTE“数据输出寄存器”传送新的数据前,应检查 Modem 状态和数据输出寄存器为空。当对方的 DCE 收到载波信号后,向对方的 DTE 发出 DCD 信号(数据载波检出),通知其 DTE 准备接收,同时,将载波信号解调为数据信号,从 RXD 线上送给 DTE,DTE 通过串行接收移位寄存器对接收到的位流进行移位,当收到 1 个字符的全部位流后,把该字符的数据位送到数据输入寄存器,CPU 可以从数据输入寄存器读取字符。2、采用专用电话线通信:在通信双方的 MODEM 之间采用电话线进行通信,则只要使用28 号信号线进行联络与
23、控制。不需要电话机、振铃信号 RI 和 DTR 信号,其信号线的连接如图 2 那样。RS232 技术文摘 枕善居收集整理 http:/-9-图 2 二、近距离通信:当通信距离较近时,可不需要 Modem,通信双方可以直接连接,这种情况下,只需使用少数几根信号线。最简单的情况,在通信中根本不需要 RS-232C 的控制联络信号,只需三根线(发送线、接收线、信号地线)便可实现全双工异步串行通信,即是这里要讨论的第一种情况。无 Modem 时,最大通信距离按如下方式计算:RS-232C 标准规定:当误码率小于 4%时,要求导线的电容值应小于 2500PF。对于普通导线,其电容值约为 170PF/M。
24、则允许距离 L=2500PF/(170PF/M)=15M 这一距离的计算,是偏于保守的,实际应用中,当使用 9600bps,普通双绞屏蔽线时,距离可达 3035 米。1、零 Modem 的最简连线(3 线制)图 3 是零 MODEM 方式的最简单连接(即三线连接),图中的 2 号线与 3 号线交叉连接是因为在直连方式时,把通信双方都当作数据终端设备看待,双方都可发也可收。在这种方式下,通信双方的任何一方,只要请求发送 RTS 有效和数据终端准备好 DTR 有效就能开始发送和接收。图 3 (1)RTS 与 CTS 互联:只要请求发送,立即得到允许 (2)DTR 与 DSR 互联:只要本端准备好,
25、认为本端立即可以接收(DSR、数传机准备好)。2、零 Modem 标准连接:如果想在直接连接时,而又考虑到 RS-232C 的联络控制信号,则采用零 MODEM 方式的标准连接方法,其通信双方信号线安排如下 1-2-3-4-5 顺序所演示的那样。无 Modem 的标准联线(7 线制)如图所示:RS232 技术文摘 枕善居收集整理 http:/-10-从中可以看出,RS-232C 接口标准定义的所有信号线都用到了,并且是按照 DTE 和 DCE之间信息交换协议的要求进行连接的,只不过是把 DTE 自己发出的信号线送过来,当作对方DCE 发来的信号,因此,又把这种连接称为双叉环回接口。双方的握手信
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RS232 通信协议
限制150内