《串行通信协议.docx》由会员分享,可在线阅读,更多相关《串行通信协议.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、串行通信协议串行通信协议:计算机与外设或计算机之间的通信通常有两种方式:并行通信和串行通信。 并行通信指数据的各位同时传送。并行方式传输数据速度快,但占用的通信线多,传输数据 的牢靠性随距离的增加而下降,只适用于近距离的数据传送。串行通信是指在单根数据线上 将数据一位一位地依次传送。发送过程中,每发送完一个数据,再发送其次个,依此类推。承受数据时,每次从单根数据线上一位一位地依次承受,再把它们拼成一个完整的数据。在 远距离数据通信中,一般承受串行通信方式,它具有占用通信线少、本钱低等优点。1、串行通信的根本概念 (1)同步和异步通信方式串行通信有两种最根本的通信方式:同步串行通信方式和异步串行
2、通信方式。同步串行 通信方式是指在一样的数据传送速率下,发送端和承受端的通信频率保持严格同步。由于不 需要使用起始位和停顿位,可以提高数据的传输速率,但发送器和承受器的本钱较高。异步 串行通信是指发送端和承受端在一样的波特率下不需要严格地同步,允许有相对的时间时 延,即收、发两端的频率偏差在 10以内,就能保证正确实现通信。异步通信在不发送数据时,数据信号线上总是呈现高电平状态,称为空闲状态又称 MARK 状态。当有数据发送时,信号线变成低电平,并持续一位的时间,用于表示发送字符的开头,该位称为起始位, 也称 SPACE 状态。起始位之后,在信号线上依次消灭待发送的每一位字符数据,并且依据先低
3、位后高位的挨次逐位发送。承受不同的字符编码方案,待发送的每个字符的位数不同, 在 5、6、7 或 8 位之间选择。数据位的后面可以加上一位奇偶校验位,也可以不加,由编程指定。最终传送的是停顿位,一般选择1 位、1.5 位或 2 位。(2) 数据传送方式单工方式。单工方式承受一根数据传输线,只允许数据依据固定的方向传送。图8(a) 中A 只能作为发送器,B 只能作为接收器,数据只能从A 传送到B,不能从B 传送到A。半双工方式。半双工方式承受一根数据传输线,允许数据分时地在两个方向传送,但 不能同时双向传送。图 8(b)中在某一时刻,A 为发送器,B 为接收器,数据从A 传送到B; 而在另一个时
4、刻,A 可以作为接收器,B 作为发送器,数据从B 传送到A。全双工方式。全双工方式承受两根数据传输线,允许数据同时进展双向传送。图8(c) 中A 和B 具有独立的发送器和接收器,在同一时刻,既允许 A 向B 发送数据,又允许 B 向A 发送数据。(3) 波特率波特率是指每秒内传送二进制数据的位数,以b/s 和 bps位/秒为单位。它是衡量串行数据传送速度快慢的重要指标和参数。计算机通信中常用的波特率是:110,300,600, 1200,2400,4800,9600,19200bps。(4) 串行通信的检错和纠错在串行通信过程中存在不同程度的噪声干扰,这些干扰有时会导致在传输过程中消灭差 错。
5、因此在串行通信中对数据进展校验是格外重要的,也是衡量通信系统质量的重要指标。检错,就是如何觉察数据传输过程中消灭的错误,而纠错就是在觉察错误后,如何实行措施 订正错误。误码率误码率是指数据经传输后发生错误的位数与总传输位数之比。在计算机通信中,一般要求误码率到达 10-6 数量级。误码率与通信过程中的线路质量、干扰、波特率等因素有关。奇偶校验奇偶校验是常用的一种检错方式。奇偶校验就是在发送数据位最终一位添加一位奇偶校验位0 或 1,以保证数据位和奇偶校验位中 1 的总和为奇数或偶数。假设承受偶校验,则应保证 1 的总数为偶数;假设承受奇校验,则应保证 1 的总和为奇数。在承受数据时,CPU 应
6、检测数据位和奇偶校验位中 1 的总数是否符合奇偶校验规章,假设消灭误码,则应转去执行相应的错误处理效劳程序,进展后续纠错。纠错在根本通信规程中一般承受奇偶校验或方阵码检错,以重发方式进展纠错。在高级通信 中一般承受循环冗余码CRC检错,以自动纠错方式来纠错。一般说来,附加的冗余位越多,检测、纠错力量就越强,但通信效率也就越低。2、串行通信接口标准串行通信接口按电气标准及协议来分包括RS-232、RS-422、RS485、USB 等。 RS-232、RS-422 与 RS-485 标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。USB 是近几年进展起来的型接口标准,主要应用于高速数据传
7、输领域。1RS-232 串行接口目前RS-232 是PC 机与通信工业中应用最广泛的一种串行接口。RS-232 被定义为一种在低速率串行通信中增加通信距离的单端标准。RS-232 实行不平衡传输方式,即所谓单端通信。典型的RS-232 信号在正负电平之间摇摆,在发送数据时,发送端驱动器输出正电平在+5+15V,负电平在-5-15V 电平。当很多据传输时,线上为TTL 电平,从开头传送数据到完毕,线上电平从 TTL 电平到 RS-232 电平再返回 TTL 电平。接收器典型的工作电平在+3+12V 与-3-12V。RS-232 是为点对点即只用一对收、发设备通信而设计的,其驱动器负载为 37k。
8、由于RS-232 发送电平与接收电平的差仅为 2V 至 3V 左右,所以其共模抑制力量差,再加上双绞线上的分布电容,其传送距离最大为约 30 米,最高速率为20kb/s。所以 RS-232 适合本地设备之间的通信。可以通过测量 DTE 的Txd或 DCE 的Rxd 和 Gnd 之间的电压了解串口的状态,在空载状态下,它们之间应有约-10V 左右-5-15V 的电压,否则该串口可能已损坏或驱动力量弱。管脚定义RS-232 物理接口标准可分成 25 芯和 9 芯D 型插座两种,均有针、孔之分。其中 TX发送数据、RX承受数据和 GND信号地是三条最根本的引线,就可以实现简洁的全双工通信。DTR数据
9、终端就绪、DSR数据预备好、RTS恳求发送和 CTS去除发送是最常用的硬件联络信号。RS-232 接口定义及连线RS-232/串口/异步口/com(通信)口严格的讲RS-232 接口是DTE(数据终端设备)和DCE(数据通信设备)之间的一个接口。远程通信终端设备 DTE ( Date Terminal Equipment )数据通信设备 DCE ( Data Communcation Equipment )DTE 包括计算机、终端、串口打印机等。(针输出)DCE 通常有调制解调器(MODEM)和某些交换机com 口。(孔输出)RS-232C 标准中提到的“发送”和“接收”,都是站在 DTE 立
10、场立场上。 1.电气特性TxD RxD规律 1(MARK)= -3v -15v规律 0(MARK)= +3v +15v RTS CTS DSR DTR DCD 等信号有效(接通,ON 状态,正电压)= +3v +15v信号无效(断开,OFF 状态,负电压)= -3v -15v与 TTL 以凹凸平表示规律状态的规定不同。因此,为了能同计算机接口或终端的TTL 器件连接,必需进展电平和规律关系的变换。广泛承受集成电路转换器件, MC1488、SN75150(TTL-EIA)、MAX232(TTLEIA)。2.连接器的机械特性DB-9 连接器:AT 机以后,不支持 20MA 电流环接口,使用DB-9
11、,作为供给多假设功能I/O 卡或主板上COM1/COM2 两个串口的连接器。电缆长度:通信速率低于 20kb/s 时,RS-232C 直接连接最大 15m。最大传输距离:假设不使用MODEM,码元畸变小于 4%的状况下,最大 15m。3.RS-232C 的接口信号常用的只有 9 根,标准 25 根,4 条数据、11 条掌握线、3 条定时、7 条备用。 联络掌握信号线:DSR 数据装置预备好 ( Data set ready )有效时ON 状态,说明MODEM 处于可以使用状态。DTR 数据终端预备好 ( Data set raady )有效时ON 状态,说明数据终端处于可以使用状态。这两个信号
12、有时连到电源上,一上电就马上有效。只说明设备本身可用,并不说明通信链路可以开头通信,能否开头通信要由下面的掌握信号打算。RTS 恳求发送 ( Request to send )表求DTE 恳求DCE 发送数据,有效ON。用来掌握MODEM 是否要进入发送状态。CTS 允许恳求 ( Clear to send )表示DCE 预备好接收DTE 发来的数据,有效ON。是对RTS 的响应信号。当 MODEM 预备好接收终端传来的数据,并向前发送, 使该信号有效,通知终端开头开头沿发送数据线TxD 发送数据。RTS/CTS 恳求应答用于半双工MODEM 系统中发送方式和接收方式切换,在全双工系统配置双向
13、通道,不需要RTS/CTS。RLSD 接收线信号检出 ( Received line dectection )表示DCE 已接通通信链路,告知DTE 预备接收数据。当本地MODEM 收到远地MODEM 送来的载波信号,使RLSD 信号有效。DCD 通知终端预备接收 ( Data carrier dectection )此线也叫 数据载波检出。RI 振铃指示 ( Ringing )MODEM 收到交换台送来的振铃呼叫信号,有效ON。通知终端,已被呼叫。 数据发送与接收线TxD 发送数据 ( Transmitted data ) RxD 接收数据 ( Received data ) 地线有两根SG
14、、DG,分别是信号地和保护地,无方向。只有当DSR、DTR 都处于ON 状态时,才能在DTE 和 DCE 之间进展传送操作。假设DTE 要发送数据,则预先将DTR 线置有效ON,等CTS 线上收到有效ON 答复后,才能在TxD 线上发送串行数据。远距离通信1. 承受MODEM(DCE)和 网通信连接发送数据时,首先通过DTE 发出 RTS(恳求发送)。此时,假设 DCE(MODEM)允许传送,则答复 CTS(允许发送)信号。一般可直接将 RTS/CTS 接高电平,即只要通信链路已建立,就可传送信号。RTS/CTS 可只用于半工发送/接收切换。DTE 获CTS,通过TxD 线向DCE 发出串行信
15、号。计算机向DCE“数据输出存放器”传送的数据。当对方DCE 收到载波信号后,向对方DTE 发出DCD 信号。2. 承受专用 通信:只使用 2-8 号信号线,不需要RI、DTR。近距离通信最简洁的状况,不需要RS-232 掌握联络信号,只需要(发送线、接收线、信号地线)便可实现全双工异步串行通信。RS-232 标准规定:误码率低于 4%,要求导线电容小于 2500PF(一般导线,电容值约为270PF/M)。则允许距离L=2500PF/170PF=15M。实际应用中,当使用 9600bps,一般屏蔽线时,距离可达 30-35 米。1.零 MODEM(3 线制) RTS 与CTS 互联:只要请示,
16、马上得到允许。 DTR 与DSR 互联:只要本端预备好,马上认为本端可以接收。2.零 MODEM 标准连接 当甲方DTE 预备好,发出DTR 信号,该信号直接联至乙方的RI 和 DSR,即只要甲方预备好,乙方马上产生呼叫RI 有效,并用时预备好DSR,尽管乙方并不存在DCE。 甲方 RTS 和 CTS 相连,并与乙方DCD 互连。即:一旦甲方恳求,马上得到允许CTS,同时乙方DCD 有效,即检测到载波信号。 甲方TxD 与乙方RxD 相连,一发一收。DTE9 芯 25 芯25 芯9 芯DCE终 端302023通 信针输出203032针输出7040478050586060665070751080
17、81420204922229依据RS232 标准,传输速率一般不超过 20kbps,传输距离一般不超过 15M。实际使用时通信速率最高可达 115200bps。RS232 串行接口根本接线原则设备之间的串行通信接线方法,取决于设备接口的定义。设备间承受 RS232 串行电缆连接时有两类连接方式:直通线:即一样信号Rxd 对 Rxd、Txd 对 Txd相连,用于 DTE数据终端设备 与 DCE数据通信设备相连。如计算机与MODEM或DTU相连。穿插线:即不同信号Rxd 对Txd、Txd 对Rxd相连,用于DTE 与DTE 相连。如计算机与计算机、计算机与采集器之间相连。以上两种连接方法可以认为同
18、种设备相连承受穿插线连接,不同种设备相连承受直通线连接。在少数状况下会消灭两台具有DCE 接口的设备需要串行通信的状况,此时也用穿插方式连接。当一台设备本身是 DTE,但它的串行接口按 DCE 接口定义时,应按 DCE 接线。如艾默生网络能源生产的一体化采集器IDA 采集模块上的调测接口是按DCE 接口定义的,当计算机与IDA 采集模块的调测口连接时就要承受直通串行电缆。一般地,RS232 接口假设为公头,则该接口按 DTE 接口定义;假设为母头,则该接口按 DCE 接口定义。但留意也有反例,不能一概而论。(一些 DTE 设备上的串行接口按 DCE 接口定义而承受DB9 或 DB25 母接口的
19、缘由主要是由于DTE 接口一般都承受公头,当人用手接触时易接触到针脚;承受母头时因不易遇到针脚,可避开人体静电对设备的影响。)对于某些设备上的非标准 RS232 接口,需要依据设备的说明书确定针脚的定义。假设Txd、Rxd 和Gnd 三个针脚,但不清楚哪一个针脚是Txd,哪一个针脚是Rxd,可以通过用万用表测量它们与Gnd 之间的电压来判别,假设有一个电压为-10V 左右,则万用表红表笔所接的是DTE 的 Txd 或 DCE 的Rxd。RS232 的三种接线方式三线方式:即两端设备的串口只连接收、发、地三根线。一般状况下,三线方式即可满足要求,如监控主机与采集器及大局部智能设备之间相连。简易接
20、口方式:两端设备的串口除了连接收、发、地三根线外,另外增加一对握手信号一般是DSR 和 DTR。具体需要哪对握手信号,需查阅设备接口说明。完全口线方式:两端设备的串口9 线全接。此外,有些设备虽然需要握手信号,当并不需要真正的握手信号,可以承受自握手的方式。(2)RS-422/485 串行接口平衡传输RS-422 由 RS-232 进展而来。为改进RS-232 通信距离短、速度低的缺点,RS-422 定义了一种平衡通信接口,将传输速率提高到 10Mbit/s,并允许在一条平衡总线上连接最多 10 个接收器。RS-422 是一种单机发送、多机接收的单向、平衡传输标准。RS-422 的数据信号承受
21、差分传输方式,也称作平衡传输。它使用一对双绞线,将其中一线定义为 A,另一线定义为 B,如图 1-8-8。通常状况下,发送驱动器 A、B 之间的正电平在+2+6V,是一个规律状态,负电平在-2-6V,是另一个规律状态。另有一个信号 地 C,在RS-485 中还有一“使能”端, “使能”端是用于掌握发送驱动器与传输线的切断与连接。当“使能”端起作用时,发送驱动器处于高阻状态,称作“第三态”,即它是有别于规律“1”与“0”的第三态。接收器也作与发送端相应的规定,收、发端通过平衡双绞线将AA 与BB 对应相连, 当在收端 AB 之间有大于+200mV 的电寻常,输出正规律电平,小于-200mV 时,
22、输出负规律电平。接收器接收平衡线上的电平范围通常在200mV 至 6V 之间。RS-422RS-422 标准全称是“平衡电压数字接口电路的电气特性”,它定义了接口电路的特性。图 1-8-9 是典型的 RS-422 四线接口。实际上还有一根信号地线,共 5 根线。由于接收器承受高输入阻抗和发送驱动器比 RS232 更强的驱动力量,故允许在一样传输线上连接多个接收节点,最多可接 10 个节点。即一个主设备Master,其余为从设备Salve,从设备之间不能通信,所以 RS-422 支持点对多的双向通信。RS-422 四线接口由于承受单独的发送和接收通道,因此不必掌握数据方向,各装置之间任何必需的信
23、号交换均可以按软件方式XON/XOFF 握手或硬件方式一对单独的双绞线实现。RS-422 的最大传输距离为 4000 英尺约 1200 米,最大传输速率为 10Mb/s。其平衡双绞线的长度与传输速率成反比,在100kb/s 速率以下,才可能到达最大传输距离。只有在很短的距离下才能获得最高速率传输。一般 100 米长的双绞线上所能获得的最大传输速率仅为 1Mb/s。RS422 接口的定义很简单,一般只使用四个端子,其针脚定义分别为 TX+、TX-、RX+、RX-,其中 TX+和TX-为一对数据发送端子,RX+和 RX-为一对数据接收端子,参见图 1-8-10。 RS422 承受了平衡差分电路,差
24、分电路可在受干扰的线路上拾取有效信号,由于差分接收器 可以区分 0.2V 以上的电位差,因此可大大减弱地线干扰和电磁干扰的影响,有利于抑制共模干扰,传输距离可达 1200 米。另外和 RS232 不同的是,在一RS422 总线上可以挂接多台设备组网,总线上连接的设备 RS422 串行接口同名端相接,与上位机则收发穿插,可以实现点到多点的通信,如图1-8-11 所示。RS232 只能点到点通信,不能组成串行总线。通过 RS422 总线与计算机某一串口通信时,要求各设备的的通信协议一样。为了在总线上区分各设备,各设备需要设置不同的地址。上位机发送的数据全部的设备都能接收到, 但只有地址符合上位机要
25、求的设备响应。RS-485为扩展应用范围,EIA 在 RS-422 的根底上制定了RS-485 标准,增加了多点、双向通信力量,通常在要求通信距离为几十米至上千米时,广泛承受RS-485 收发器。RS-485 收发器承受平衡发送和差分接收,即在发送端,驱动器将TTL 电平信号转换成差分信号输出;在接收端,接收器将差分信号变成TTL 电平,因此具有抑制共模干扰的力量,加上接收器具有高的灵敏度,能检测低达 200mV 的电压,故数据传输可达千米以外。RS-485 很多电气规定与RS-422 相仿。如都承受平衡传输方式、都需要在传输线上接终接电阻等。RS-485 可以承受二线与四线方式,二线制可实现
26、真正的多点双向通信。而采用四线连接时,与 RS-422 一样只能实现点对多的通信,即只能有一个主Master设备, 其余为从设备,但它比 RS-422 有改进,无论四线还是二线连接方式总线上可连接多达 32 个设备,SIPEX 公司推出的SP485R 最多可支持 400 个节点。RS-485 与 RS-422 的共模输出电压是不同的。RS-485 共模输出电压在-7V 至+12V 之间, RS-422 在-7V 至+7V 之间,RS-485 接收器最小输入阻抗为 12K ;RS-422 是 4k ; RS-485 满足全部 RS-422 的标准,所以 RS-485 的驱动器可以用在 RS-42
27、2 网络中应用。但RS-422 的驱动器并不完全适用于RS-485 网络。RS-485 与 RS-422 一样,最大传输速率为 10Mb/s。当波特率为 1200bps 时,最大传输距离理论上可达 15 千米。平衡双绞线的长度与传输速率成反比,在 100kb/s 速率以下, 才可能使用规定最长的电缆长度。RS-485 需要 2 个终接电阻,接在传输总线的两端,其阻值要求等于传输电缆的特性阻抗。在矩距离传输时可不需终接电阻,即一般在300 米以下不需终接电阻。RS485 是RS422 的子集,只需要 DATA+D+、DATA- D-两根线。RS485 与RS422的不同之处在于RS422 为全双
28、工构造,即可以在接收数据的同时发送数据,而RS485 为半双工构造,在同一时刻只能接收或发送数据。RS485 总线上也可以挂接多台设备,用于组网,实现点到多点及多点到多点的通信多点到多点是指总线上所接的全部设备及上位机任意两台之间均能通信。连接在 RS485 总线上的设备也要求具有一样的通信协议,且地址不能一样。在不通信时,全部的设备处于接收状态,当需要发送数据时,串口才翻转为发送状态,以避开冲突。为了抑制干扰,RS485 总线常在最终一台设备之后接入一个120 欧的电阻。很多设备同时有 RS485 接口方式和 RS422 接口方式,常共用一个物理接口,见图1-8-14。图中,RS485 的D
29、+和D-与 RS422 的T+和 T-共用。(3)RS232/422/485 串行通信接口性能比较上述三种通信接口的比较见下表1-8-2。接口性能 RS-232 RS422 RS485操作方式 电平 差分 差分最 大 传 输 速 率20kb/s(15m)10Mb/s(12m)1Mb/s(120m)100kb/s(1200m) 10Mb/s(12m)1Mb/s(120m)100kb/s(1200m)驱动器输出电压 无负载时 5V15V 5V 5V 有负载时 2V 1.5V驱动器负载阻抗 3k 7k100 (min) 54 (min)接收输入阻抗 3k 7k4k12k 接收器灵敏度 3V 200m
30、V 200mV 工作方式 全双工 全双工 半双工连接方式 点到点 点到多点 多点到多点表 1-8-2 RS232、RS422、RS-485 接口性能比较(4)USB 接口USB,全称是Universal Serial Bus通用串行总线,它是在 1994 年底由康柏、IBM、 Microsoft 等多家公司联合制订的,但是直到 1999 年,USB 才真正被广泛应用。自从 1994年 11 月 11 日发表了USB V0.7 以后,USB 接口经受了六年的进展,现在USB 已经进展到了 2.0 版本。USB 接口的特点是:数据传输速率高。USB 标准接口传输速率为 12Mbps,最的 USB2
31、.0 支持最高速率达 480Mbps。同串行端口比,USB 大约快 1000 倍;同并行端口比,USB 端口大约快50%。数据传输牢靠。USB 总线掌握协议要求在数据发送时含有3 个描叙数据类型、发送方向和终止标志、USB 设备地址的数据包。USB 设备在发送数据时支持数据侦错和纠错功能,增加了数据传输的牢靠性。同时挂接多个USB 设备。USB 可通过菊花链的形式同时挂接多个USB 设备, 理论上可达 127 个。USB 接口能为设备供电。USB 线缆中包含有两根电源线及两根数据线。耗电比较少的设备可以通过USB 口直接取电。可通过 USB 口取电的设备又分低电量模式和高电量模式,前者最大可供给 100 毫安的电流,而后者则是 500 毫安。支持热插拔。在开机状况下,可以安全地连接或断开设备,到达真正的即插即用。USB 还具有一些的特性,如:实时性可以实现和一个设备之间有效的实时通信、动态性可以实现接口间的动态切换、联合性不同的而又有相近的特性的接口可以联合起来、多能性各个不同的接口可以使用不同的供电模式。