《第三章 串行通信接口技术优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第三章 串行通信接口技术优秀PPT.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章 串行通信接口技术现在学习的是第1页,共50页 第3章 串行通信接口技术 IBM-PC及其兼容机是目前应用较广泛的一种计算机,通常用它作为分布式测控系统的上位机,而单片微处理器和单片微控制器软硬件资源丰富,价格低,适合于作下位机。上位机与下位机一般采用串行通信技术,常用的有RS-232C接口及RS-422和RS-485接口。现在学习的是第2页,共50页现在学习的是第3页,共50页 3.1 串行通信基础 3.1.1 串行异步通信数据格式 无论是RS-232还是RS-485,均可采用串行异步收发数据格式。串行异步收发(UART)通信的数据格式如图3-1所示。现在学习的是第4页,共50页图3-
2、1 串行异步通信数据格式 有效数据位的个数可以规定为5、6、7或8。奇偶校验位视需要设定,紧跟其后的是停止位(逻辑1,高电平),其位数可在1、1.5、2中选择其一。停止位停止位D0 D1 D2 D3 D4 D5 D6 D7起始位奇偶位数据位现在学习的是第5页,共50页3.1.2 连接握手 连接握手过程是指发送者在发送一个数据块之前使用一个特定的握手信号来引起接收者的注意,表明要发送数据,接收者则通过握手信号回应发送者,说明它已经做好了接收数据的准备。连接握手可以通过软件,也可以通过硬件来实现。现在学习的是第6页,共50页3.1.3 确认 接收者为表明数据已经收到而向发送者回复信息的过程称为确认
3、。现在学习的是第7页,共50页3.1.4 中断n中断是一个信号,它通知CPU有需要立即响应的任务。每个中断请求对应一个连接到中断源和中断控制器的信号。n通过自动检测端口事件,发现中断并转入中断处理。n许多串行端口采用硬件中断。n硬件中断分为外部中断和内部中断。n外部中断一般是指由计算机外设发出的中断请求,如:键盘中断、打印机中断、定时器中断等。外部中断是可以屏蔽的中断,也就是说,利用中断控制器可以屏蔽这些外部设备的中断请求。n内部中断是指因硬件出错(如突然掉电、奇偶校验错等)或运算出错(除数为零、运算溢出、单步中断等)所引起的中断。内部中断是不可屏蔽的中断。现在学习的是第8页,共50页3.1.
4、5 轮询 通过周期性地获取特征或信号来读取数据或发现是否有事件发生的工作过程称为轮询。现在学习的是第9页,共50页3.1.6 差错检验n 数据通信中的接收者可以通过差错检验来判断所接收的数据是否正确。n 冗余数据校验、奇偶校验、校验和、循环冗余校验等都是串行通信中常用的差错检验方法。现在学习的是第10页,共50页 3.2 RS-232C串行通信接口 3.2.1 RS-232C端子 RS-232C的连接插头用25针或9针的EIA连接插头座,其主要端子分配如表3-1所示。现在学习的是第11页,共50页表3-1 RS-232C主要端子端 脚 方 向 符 号 功 能 25针 9针 2 3输出 TXD
5、发送数据 32输入 RXD 接收数据 47输出 RTS 请求发送 58输入 CTS 为发送清零 66输入 DSR 数据设备准备好 75GND 信号地 81输入 DCD 数据信号检测 204输出DTR 229输入 RI 现在学习的是第12页,共50页 1信号含义(1)从计算机到MODEM的信号 DTR数据终端(DTE)准备好:告诉MODEM计算机已接通电源,并准备好。RTS请求发送:告诉MODEM现在要发送数据。(2)从MODEM到计算机的信号 DSR数据设备(DCE)准备好:告诉计算机MODEM已接通电源,并准备好了。CTS为发送清零:告诉计算机MODEM已作好了接收数据的准备。DCD数据信号
6、检测:告诉计算机MODEM已与对端的MODEM建立连接了。RI振铃指示器:告诉计算机对端电话已在振铃了。(3)数据信号 TXD发送数据。RXD接收数据。现在学习的是第13页,共50页RS-232-C标准接口标准接口DCDDCDRXDRXDTXDTXDDTRDTRGNDGNDDSRDSRRTSRTSCTSCTSRIRI1 12 23 34 45 56 67 78 89 9引脚引脚符号符号方向方向功功 能能1 1载波检测载波检测DCDDCDI I2 2RXDRXDI I接收数据接收数据3 3TXDTXDO O发送数据发送数据4 4DTRDTRO O数据终端就绪数据终端就绪5 5GNDGND 信号地
7、信号地6 6DSRDSRI I数据设备就绪数据设备就绪7 7RTSRTS请求发送请求发送O O8 8CTSCTSI I清除发送清除发送 9 9RIRII I振铃指示振铃指示现在学习的是第14页,共50页RS-232-C标准接口标准接口(-)接收)接收 电流电流(+)接收)接收 电流电流发送发送电流(电流(-)发送发送电流(电流(+)131311119 98 87 76 65 54 43 32 21 122222020181814142525DTRDTRRIRIDCDDCDRTSRTSGNDGNDDSRDSRCTSCTSRXDRXDTXDTXD1 1保护地保护地2 2TXDTXDO O发送数据发
8、送数据3 3RXDRXDI I接收数据接收数据4 4RTSRTSO O请求发送请求发送5 5CTSCTSI I清除发送清除发送6 6DSRDSRI I数据设备就绪数据设备就绪7 7GNDGND信号地信号地8 8CDCDI I载波检测载波检测2020DTRDTRO O数据终端就绪数据终端就绪2222RIRII I振铃指示振铃指示引脚引脚 符号符号 方向方向功功 能能现在学习的是第15页,共50页2电气特性RS-232C的电气线路连接方式如图3-2所示。p71由图可知,每个信号用一根导线,所有信号回路共用一根地线。速率20Kbps,距离15m 驱动器DR中间连接电缆 接收器 接口 信号地线 图3-
9、2 RS-232C的电气连接现在学习的是第16页,共50页RS-232C采用负逻辑。在数据线上:传号Mark=515V,逻辑“1”电平空号Space=+5+15V,逻辑“0”电平在控制线上:通on=+5+15V,逻辑“0”电平断 off=515V,逻辑“1”电平 高低电平摆幅大,目的是增大噪声容限,提高抗高低电平摆幅大,目的是增大噪声容限,提高抗噪声、抗传输线衰减的能力。噪声、抗传输线衰减的能力。现在学习的是第17页,共50页3.2.2 通信接口的连接当两台计算机经RS-232C口直接通信时,两台计算机之间的联络线可用图3-3和图3-4表示。图3-3 使用MODEM信号的RS-232接口计算机
10、19D插座计算机29D插座 TXD 3RXD 2请求发送RTS 7为发送清零CTS 8DCE准备好DSR 6DTE准备好DTR 4地 53 TXD 2 RXD 7 RTS8 CTS6 DSR4 DTR5地 调制解调信号器现在学习的是第18页,共50页图3-4 不使用MODEM信号的RS-232C接口 计算机19D插座计算机29D插座 TXD 3 RXD 2 RTS 7 CTS 8 DSR 6 DTR 4 地 5 3 TXD 2 RXD 7 RTS 8 CTS 6 DSR 4 DTR 5地 现在学习的是第19页,共50页 3.2.3 RS-232C电平转换器n 为了实现采用+5V供电的TTL和C
11、MOS通信接口电路能与RS-232C标准接口连接,必须进行串行口的输入/输出信号的电平转换。n 目前常用的电平转换器有nMOTOROLA公司生产的MC1488驱动器、nMC1489接收器,现在学习的是第20页,共50页TI公司(德州仪器)的SN75188驱动器、SN75189接收器 美国MAXIM公司生产的单一+5V电源供电、多路RS-232驱动器/接收器,如MAX232A等。SN75196 多路多路 RS-232 驱动器和接收器驱动器和接收器现在学习的是第21页,共50页MAX232A内部具有双充电泵电压变换器,把+5V变换成10V,作为驱动器的电源,具有两路发送器及两路接收器,使用相当方便
12、。引脚如图3-5所示,典型应用如图3-6所示。图3-5 MAX232A引脚图VCCGNDT1OUTR1INR1OUTT1INT2INR2OUT C1+V+C1-C2+C2-V-T2OUT R2IN 1 162 153 144 135 126 117 108 9现在学习的是第22页,共50页图3-6 MAX232A典型应用单一+5V电源供电的RS-232C电平转换器还有TL232、ICL232等。RS-232C输入TTL/CMOS输出+10F/25VTTL/CMOS 输入10F/25VC1+VCCC 1 V+C2+VC 2 GNDT 1IN T1OUTT 2IN T2OUTR 1OUT R1IN
13、R 2OUT R2IN+5VRS-232C输出+10F/25V+10F/25V+现在学习的是第23页,共50页3.3 RS-485串行通信接口 由于RS-232C通信距离较近,当传输距离较远时,可采用RS-485串行通信接口。现在学习的是第24页,共50页3.3.1 RS-485接口标准n RS-485接口采用二线差分平衡传输,其信号定义如下。当采用+5V电源供电时:若差分电压信号为2500200mV时,为逻辑“0”;若差分电压信号为+2500+200mV时,为逻辑“1”;若差分电压信号为200+200mV时,为高阻状态。现在学习的是第25页,共50页图3-7 差分平衡电路A BVAVB发送接
14、收其一根导线上的电压是另一根导线上的电压值取反。接收器的输入电压为这两根导线电压的差值。RS-485的差分平衡电路如图3-7所示。现在学习的是第26页,共50页3.3.2 RS-485收发器n RS-485收发器种类较多,n如MAXIM公司的MAX485,nTI公 司 的 SN75LBC184、SN65LBC184,高 速 型SN65ALS1176等。n它们的引脚是完全兼容的,其中SN65ALS1176主要用于高速应用场合,如PROFIBUS-DP现场总线等。n SN75LBC184/SN65LBC184为具有瞬变电压抑制的差分收发器,前者为商业级,后者为工业级产品。引脚如图3-8所示。现在学
15、习的是第27页,共50页图3-8 SN75LBC184引脚图 1 8 2 7 3 6 4 5 R RE DE D VCC B A GND现在学习的是第28页,共50页现在学习的是第29页,共50页 3.3.3 应用电路 RS-485应用电路如图3-9所示。图3-9 RS-485应用电路+5V接至其它RS-485收发器相应端AT89S52 RS-485收发器 RXD TXD P10R VCCD BRE ADE GND现在学习的是第30页,共50页 3.3.4 RS-485网络互联 利用RS-485接口可以使一个或者多个信号发送器与接收器互联,在多台计算机或带微控制器的设备之间实现远距离数据通信,
16、形成分布式测控网络系统。1RS-485的半双工通信方式 在大多数应用条件下,RS-485的端口连接都采用半双工通信方式。有多个驱动器和接收器共享一条信号通路。图3-10为RS-485端口半双工连接的电路图。现在学习的是第31页,共50页现在学习的是第32页,共50页 图3-10 RS-485端口的半双工连接现在学习的是第33页,共50页现在学习的是第34页,共50页现在学习的是第35页,共50页第第3章章 通用串行通信接口技术通用串行通信接口技术3.3.4 RS-485网络互连2RS-485的全双工连接尽管大多数RS-485的连接是半双工的,但是也可以形成全双工RS-485连接。图3-11表示
17、两点之间的全双工RS-485连接。图3-11 两个RS-485端口的全双工连接 现在学习的是第36页,共50页现在学习的是第37页,共50页 3.4 Modbus通信协议 3.4.1 概述nModbus协议是应用于PLC或其他控制器上的一种通用语言。n通过此协议,控制器之间、控制器通过网络(如以太网)和其他设备之间可以实现串行通信。n该协议已经成为通用工业标准。采用Modbus协议,不同厂商生产的控制设备可以互连成工业网络,实现集中监控。n标准的Modbus接口使用RS-232C兼容串行接口,它定义了连接器的引脚、电缆、信号位、传输波特率、奇偶校验。控制器能直接或通过调制解调器组网。现在学习的
18、是第38页,共50页RS-232C现在学习的是第39页,共50页 3.4.2 两种传输方式 P78 n 控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。n 用户选择想要的模式,包括串口参数(波特率、校验方式等)n在配置每个控制器的时候,在一个Modbus网络上的所有设备都必须选择相同的传输模式和串口参数。n ASCII(美国标准信息交换代码)模式如图3-13所示,nRTU(远程终端单元)模式如图3-14所示。现在学习的是第40页,共50页图3-13 ASC模式 P78图3-14 RTU模式 P79现在学习的是第41页,共50页3.4.3 Modbus消
19、息帧1ASCII帧使用ASCII模式,消息以冒号“:”字符(ASCII码3AH)开始,以回车换行符(ASCII码0DH,0AH)结束。一个典型消息帧如图3-15所示。图3-15 ASC消息帧现在学习的是第42页,共50页2RTU帧使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。在网络波特率下设置多个字符时间(T1-T2-T3-T4),这是最容易实现的。在最后一个传输字符之后,一个至少3.5个字符时间的停顿标注了消息的结束,一个新的消息可在此停顿后开始。一个典型的消息帧如图3-16所示。图3-16 RTU消息帧现在学习的是第43页,共50页n消息帧的地址域包含两个字符(ASCII
20、)或8bi(RTU)。n允许的从设备地址是0247(十进制)。n单个从设备的地址范围是1247。n主设备通过将从设备的地址放入消息中的地址域来选通从设备。n当从设备发送响应消息时,它把自己的地址放入响应的地址域中,以便主设备知道是哪一个设备作出的响应。n地址0用做广播地址,以使所有的从设备都能识别。3地址域现在学习的是第44页,共50页第第3章章 通用串行通信接口技术通用串行通信接口技术3.4.3 Modbus消息帧4功能域消息帧中的功能代码域包含了两个字符(ASCII)或8bit(RTU)。允许的代码范围是十进制的1255。当消息从主设备发往从设备时,功能代码域将告知从设备需要执行哪些动作。
21、例如,去读取输入的开关状态,读一组寄存器的数据内容,读从设备的诊断状态,允许调入、记录、校验在从设备中的程序等。当从设备响应时,它使用功能代码域来指示是正常响应(无误)还是有某种错误发生(称作异常响应)。对正常响应,从设备仅响应相应的功能代码。对异常响应,从设备返回一个在正常功能代码的最高位置1的代码。现在学习的是第45页,共50页n例如,一主设备发往从设备的消息,内容是读一组保持寄存器,n功能代码是:00000011(03H)对正常响应,从设备仅响应同样的功能代码;对异常响应,从设备返回10000011(83H)。n然后,从设备将一特殊代码放到响应消息的数据域中,告诉主设备发生了什么错误。n
22、主设备应用程序得到异常的响应后,典型的处理过程是从发消息,或者诊断报告操作员。n5数据域n数据域是由两位十六进制数构成的,范围为00HFFH。n根据网络传输模式,这可以是由一对ASCII字符组成或由一RTU字符组成。n主设备发给从设备消息的数据域包含附加的信息:从设备必须采用该信息执行由功能代码所定义的动作。现在学习的是第46页,共50页n6错误检测域n标准的Modbus网络有两种错误检测方法,错误检测域的内容与所选的传输模式有关。n(1)ASCIIn当选用ASCII模式作字符帧,错误检测域包含两个ASCII字符。这是使用LRC(纵向冗余检测)方法对消息内容计算得出的,不包括开始的冒号符及回车
23、换行符。LRC字符附加在回车换行符前面。现在学习的是第47页,共50页n(2)RTUn当选用RTU模式作字符帧,错误检测域包含一16bit值(用两个8位的字符来实现)。错误检测域的内容是通过对消息内容进行循环冗余检测方法得出的。nCRC域附加在消息的最后,添加时先是低字节然后是高字节。故CRC的高位字节是发送消息的最后一个字节。现在学习的是第48页,共50页 3.4.4 错误检测方法 1奇偶校验 用户可以配置控制器是奇校验还是偶校验,或无校验。这将决定每个字符中的奇偶校验位是如何设置的。2LRC检测LRC方法是将消息中的8bit的字节连续累加,不考虑进位。3CRC检测 使用RTU模式,消息包括了一基于CRC方法的错误检测域。CRC域检测整个消息的内容。CRC域是两个字节,包含一个16位的二进制数。它由传输设备计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有错误。现在学习的是第49页,共50页n作业题:1、RS-232接口和RS-485接口的区别是什么?2、什么是Modbus 通信协议?现在学习的是第50页,共50页
限制150内