第10章串行通信_第1页
第10章串行通信_第2页
第10章串行通信_第3页
第10章串行通信_第4页
第10章串行通信_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第10章章 串行通信串行通信青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(2)主要内容主要内容 串行通信基础 可编程串行异步通信接口芯片8251 串行通信程序设计青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(3)10.1 串行接口与通信概述串行接口与通信概述 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N

2、(4)10.1.1并行通信与串行通信并行通信与串行通信 数据通信的基本方式可分为两种:并行通信与串行通信。 并行通信:指利用多条数据传输线将一个数据的各位同时传送。 特点:是传输速度快,适用于短距离通信。 串行通信:是指利用一条传输线将数据一位位地顺序传送。 特点:是通信线路简单,利用电话或电报线路就可实现通信,降低成本,适用于远距离通信,但传输速度慢。 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(5)1、串行异步通讯:以字符为信息单位传送。字符的开始是异步的。、串行异步通讯:以字符为信息单位传

3、送。字符的开始是异步的。11000010111000空空闲闲位位起始位起始位数据位数据位0低低高高校验位校验位停停止止位位2、串行同步通讯:以数据块为信息单位传送。数据块内是同步的。、串行同步通讯:以数据块为信息单位传送。数据块内是同步的。10.1.2 10.1.2 串行通讯的基本方式串行通讯的基本方式同步字符同步字符数据数据校验码校验码同步字符同步字符数据数据 数据数据校验码校验码青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(6) 串行通信中,数据通常是在二个站(点对点)之间进行串行通信中,数据

4、通常是在二个站(点对点)之间进行传送,按照数据流的方向可分成三种传送模式传送,按照数据流的方向可分成三种传送模式: :单工、半单工、半双工和全双工三种。双工和全双工三种。10.1.3 10.1.3 数据传输方式数据传输方式发送器发送器接收器接收器A站站B站站使用同一根传输线,既可发送数据又可接收数据,但不能同时进行。使用同一根传输线,既可发送数据又可接收数据,但不能同时进行。1、单工、单工(Single Duplex)2、半双工(、半双工(Half Duplex)青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U

5、. C N(7)发送器发送器接收器接收器发送器发送器接收器接收器A站站B站站图图11.1 半双工方式示意图半双工方式示意图特点:特点:每端需有一个收每端需有一个收/ /发切换电子开关发切换电子开关 因有切换,会产生因有切换,会产生时间延迟时间延迟应用:应用:打印机串口,单向传送设备,发送器打印机串口,单向传送设备,发送器接收器接收器 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(8) 特点:特点:每一端都有发送器和接收器每一端都有发送器和接收器 有二条传送线有二条传送线 应用:应用:交互式应用,远

6、程监测控制交互式应用,远程监测控制发送器发送器接收器接收器接收器接收器发送器发送器A站站B站站图图11.2 全双工方式示意图全双工方式示意图3.全双工全双工(Full Duplex) 数据的发送和接收分别由两根可以在两个不同的站点同时发送和接收的传数据的发送和接收分别由两根可以在两个不同的站点同时发送和接收的传输线进行传送,通信双方都能在同一时刻进行发送和接收操作,选择的传送输线进行传送,通信双方都能在同一时刻进行发送和接收操作,选择的传送方式称为全双工制。方式称为全双工制。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T .

7、E D U . C N(9)10.1.4 信号传输方式信号传输方式 基带传输方式基带传输方式在传输线路上直接传输不加调制的二进制信号,如图10-4所示。它要求传送线的频带较宽,传输的数字信号是矩形波。基带传输方式仅适宜于近距离和速度较低的通信。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(10) 频带传输方式频带传输方式 在长距离通信时,发送方要用调制器把数字信号转换成模拟信号,接收方则用解调器将接收到的模拟信号再转换成数字信号,这就是信号的调制解调。 实现调制和解调任务的装置称为调制解调器(MO

8、DEM)。采用频带传输时,通信双方各接一个调制解调器,将数字信号寄载在模拟信号(载波)上加以传输。因此,这种传输方式也称为载波传输方式。这时的通信线路可以是电话交换网,也可以是专用线。 常用的调制方式有三种:调幅、调频和调相 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(11)(1)调幅(AM)即载波的振幅随基带数字信号而变化. “1”对应有载波 “0” 对应无载波(2)调频(FM) 即载波频率随数字信号而变化 “0”对应”f1” “1”对应“f2”(3)调相(PM) 即载波初始相位随基带数字信号

9、而变化. “ 0”对应相位0度 “1”对应相位180度f1f2FMAM0 1 0 0 1 10度180度PM青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(12)11000010111000空空闲闲位位起始位起始位数据位数据位0低低高高校验位校验位停停止止位位10.1.5 10.1.5 串行异步通信协议串行异步通信协议1.格式规定格式规定青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(13)青岛科技大学青

10、岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(14) 字符速率与波特率的关系:字符速率与波特率的关系: 1 1个字符:个字符:1 1个起始位个起始位+8+8个数据位个数据位+1+1个校验位个校验位+2+2个终止位个终止位=12=12位位 如果波特率:如果波特率:12000 12000 则字符速率:则字符速率:12000/12=100012000/12=1000字符字符/s/s2、通信速率、通信速率1)波特率:)波特率: 是指在串行通信中,在基本波传输的情况下,每秒钟传送的二进制脉冲的数目。是指在串行通信中,在基

11、本波传输的情况下,每秒钟传送的二进制脉冲的数目。用波特率表示:即用波特率表示:即1波特波特=bit/s (位(位/秒)秒) 常用的标准波特率:常用的标准波特率:110,300,1K,1.2K,2.4K,4.8K,9.6K,19.2K,56K2)字符速率:)字符速率: 是指每秒所传输的字符数,这个概念使用少。是指每秒所传输的字符数,这个概念使用少。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(15)10.2 串行接口标准串行接口标准 一个完整的串行通信系统除了对上一节所介一个完整的串行通信系统除了对

12、上一节所介绍的通信规程有所规定外,还必然会涉及到在电绍的通信规程有所规定外,还必然会涉及到在电气连接上的接口标准问题。标准化的通用总线结气连接上的接口标准问题。标准化的通用总线结构能使系统结构化、模块化,大大简化系统软、构能使系统结构化、模块化,大大简化系统软、硬件设计的工作,因此被普遍采用。本节介绍目硬件设计的工作,因此被普遍采用。本节介绍目前常用的有代表性的串行接口标准。前常用的有代表性的串行接口标准。 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(16)1 1)电气特性)电气特性 RS-23

13、2RS-232对电气特性,逻辑电平和各种信号线的功能都作了规定。对电气特性,逻辑电平和各种信号线的功能都作了规定。 逻辑逻辑“1”=-3V1”=-3V-15V -15V “0”=+3V “0”=+3V+15V+15V RS-232CRS-232C是用是用正负电平正负电平来表示逻辑状态,而计算机内部电路所采用的来表示逻辑状态,而计算机内部电路所采用的TTLTTL标准是用标准是用高低电平高低电平表示逻辑状态,显然为了让计算机能利用表示逻辑状态,显然为了让计算机能利用RS-232CRS-232C与外界与外界连接,则必须在连接,则必须在RS-232CRS-232C与与TTLTTL电路之间进行电平转换,

14、实现这种转换的电电路之间进行电平转换,实现这种转换的电路,路,可用可用TTL/EIATTL/EIA电平转换器进行,如电平转换器进行,如MC1488MC1488,MC1489ICMC1489IC。10.2.1 RS-232-C总线总线 一、一、EIA-RS-232接口标准接口标准 RS-232C标准是标准是是串行异步通信中应用最广的串行总线标准,是串行异步通信中应用最广的串行总线标准,1969年由年由美国美国EIA(电子工业协会)颁发,电子工业协会)颁发,适合的数传率:适合的数传率:020Kbps。 RS-232C主要用于使用模拟信道传输数字信号的场合,推出这种标准的主要用于使用模拟信道传输数字

15、信号的场合,推出这种标准的最初目的是在数据终端设备最初目的是在数据终端设备DTE(Data Terminal Equipment)与数据通信与数据通信设备设备DCE(Data Communication Equipment)之间建立接口标准。之间建立接口标准。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(17) 采用采用EIAEIA电平比电平比TTLTTL电平具有更强的抗干扰性能。电平具有更强的抗干扰性能。RS-232C连连接接器器EIA电平电平EIA电平电平TTLTTL利用利用MC1488/MC

16、1489MC1488/MC1489的的TTLRS-232CTTLRS-232C电平转换电平转换青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(18)1 1)连接器()连接器(ConnectorConnector) 2.机械特性机械特性1234DB-25型连接器5678911132522201814发送电流(-)发送电流(+)DCDGNDDSRCTSRTSRXDTXD(-)接收电流(+)接收电流123456789DSRRTSCTSRIDCDRXDTXDDTRGNDDB-9型连接器青岛科技大学青岛科技大

17、学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(19)引脚号引脚号信号名称信号名称缩写缩写传送方向与功能说明传送方向与功能说明25脚9脚23发送数据发送数据TXDDTE DCE 输出数据到输出数据到Modem32接收数据接收数据RXDDTE DCE 由由Modem输入数据输入数据47请求发送请求发送RTSDTE DCE DTE请求发送数据请求发送数据58清除发送清除发送CTSDTE DCE Modem表明同意发送表明同意发送66数据传输就绪数据传输就绪DSRDTE DCE 表明表明Modem已准备就绪已准备就绪75信号地

18、信号地GND无方向无方向 所有信号的公共地线所有信号的公共地线81载波检测载波检测DCDDTE DCE Modem正在接收载波信号正在接收载波信号204数据终端就绪数据终端就绪DTRDTE DCE 通知通知Modem DTE已准备好已准备好229振铃指示振铃指示RIDTE DCE 表明表明Modem已收到拨号呼叫已收到拨号呼叫青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(20)TXD(Transmitted Data):):发送数据,发送数据,DTE通过通过TXD将串将串行数据发送到行数据发送到M

19、odem。 RXD(Received Data):):接收数据,接收数据,DTE通过通过RXD接收从接收从Modem来的串行数据。来的串行数据。 RTS(Request to Send):用来表示用来表示DTE请求请求DCE发送数据。发送数据。CTS(Clear to Send):用来表示用来表示DCE已准备好,可以为已准备好,可以为DTE发送数据,此信号是对发送数据,此信号是对RTS的响应信号。的响应信号。RTS/CTS是一对握手联络信号,用于采用是一对握手联络信号,用于采用Modem的半双工系的半双工系统中作发送统中作发送/接收方式之间的切换。接收方式之间的切换。青岛科技大学青岛科技大学

20、W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(21)DSR(Data communication equipment Set Ready):):表表示示Modem已准备就绪已准备就绪DTR(Data Terminal Ready):):DTE用来通知用来通知Modem,已已准备就绪,可以接收数据。准备就绪,可以接收数据。DCD(Data Carrier Detection):用来表示用来表示Modem正在接正在接收来自对方收来自对方Modem的载波信号,通知的载波信号,通知DTE准备接收数据。准备接收数据。RI(Ringi

21、ng Indicator):通知通知DTE、Modem已收到电话已收到电话交换机送来的振铃呼叫信号,使用公用电话线时要用此交换机送来的振铃呼叫信号,使用公用电话线时要用此信号。信号。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(22)2)电缆长度)电缆长度RS-232直接连接的最大物理距离直接连接的最大物理距离15M,通信速率,通信速率20Kbps。3)信号线的连接)信号线的连接(1)近距离连接()近距离连接(15m15m)a)a)需用需用MODEMMODEM和专用电话线和专用电话线b)b)需用需

22、用2 29 9条信号线(在接口与条信号线(在接口与MODEMMODEM之间)之间)计算机计算机串串行行接接口口UART调制调制解调解调器器ModemTXDRXD调制调制解调解调器器Modem串串行行接接口口UART计算机计算机电话线电话线采用采用Modem时时RS-232C信号线的使用信号线的使用 RTSCTSDSRDTRDCDRIGNDTXDRTSCTSDSRDTRDCDRIGNDRXD青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(24)10.2.2 RS-422和和RS-485总线总线 1RS

23、-422A标准接口 RS-422RS-422由由RS-232CRS-232C发展而来。为改进发展而来。为改进RS-232CRS-232C通信距离短、通信距离短、速度低的缺点,速度低的缺点,RS-422RS-422定义了一种平衡通信接口,将传输速定义了一种平衡通信接口,将传输速率提高到率提高到10Mbit/s10Mbit/s,在此速率下电缆允许长度为,在此速率下电缆允许长度为120m,120m,并允并允许在一条平衡总线上连接最多许在一条平衡总线上连接最多1010个接收器。如果采用较低传个接收器。如果采用较低传输速率,如输速率,如9000bps9000bps时,最大距离可达时,最大距离可达1200

24、m1200m。RS-422RS-422是一种是一种单机发送、多机接收的单向、平衡传输的总线标准。单机发送、多机接收的单向、平衡传输的总线标准。 RS-422 RS-422标准规定了双端电气接口型式,使用双端线传送标准规定了双端电气接口型式,使用双端线传送信号。它通过传输线驱动器,把逻辑电平变换成电位差,完信号。它通过传输线驱动器,把逻辑电平变换成电位差,完成始端的信息传送;通过传输线接收器,把电位差转变成逻成始端的信息传送;通过传输线接收器,把电位差转变成逻辑电平,实现终端的信息接收,如图辑电平,实现终端的信息接收,如图10-1110-11所示。在电路中所示。在电路中规定只能有一个发送器,可以

25、有多个接收器,可以支持点对规定只能有一个发送器,可以有多个接收器,可以支持点对多的通信方式。该标准允许驱动器输出为多的通信方式。该标准允许驱动器输出为2 26v6v,接收,接收器可以检测到的输入信号电平可低到器可以检测到的输入信号电平可低到200mV200mV。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(25)特点特点: (1)采用平衡发送器和差动接收器,由于是双线传输,大大提高了抗共模干扰的能力。因为是两条传输线的电位差决定逻辑电平AA-BB +2V,表示“0”(2)传输速率 10Mbps(1

26、5m时) 90Kbps(1200m时)MC3487MC3486BTTLRS-422A电平平衡发送器差动接收器BAA连接连接:青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(26)图10-11RS-422电气连接图RS422电 平发 送 器接 收 器TTL电 平TTL电 平+-图10-12 RS-422A接口电路示意图TTL INTTL OUTMC3487MC3486MC3486MC3487TTL INTTL OUTDTEDCE青岛科技大学青岛科技大学 W W W . Q U S T . E D U

27、. C NW W W . Q U S T . E D U . C N(27)2 RS-485标准接口 RS-485RS-485是一种多发送器的电路标准,它是是一种多发送器的电路标准,它是RS-422ARS-422A性能的扩展,是真正意义上的总线标准。它允许在二根性能的扩展,是真正意义上的总线标准。它允许在二根导线导线( (总线总线) )上挂接上挂接3232台台RS-485RS-485负载设备。负载设备可以负载设备。负载设备可以是发送器、被动发送器、接收器或组合收发器是发送器、被动发送器、接收器或组合收发器( (发送器发送器和接收器的组合和接收器的组合) )。图。图10-1310-13给出了给出

28、了RS-485RS-485的接口示意图,的接口示意图,从图中可以看出,它也是差分驱动从图中可以看出,它也是差分驱动( (发送器发送器) )电路,在发电路,在发送控制允许送控制允许( (高电平高电平) )的情况下,的情况下,TXDTXD端的端的TTLTTL电平经发送电平经发送器转换成器转换成RS-485RS-485标准的差分信号,送至标准的差分信号,送至RS-485RS-485总线。同总线。同样样RS-485RS-485总线上的差分信号,在接收允许总线上的差分信号,在接收允许( (低电平低电平) )的情的情况下,经接收器转换后变成况下,经接收器转换后变成TTLTTL电平信号,供计算机或电平信号,

29、供计算机或设备接收。设备接收。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(28)图10-13 RS-485接口示意图R S485总 线TTL电 平TXD发 送 控 制R XD接 收 允 许发 送 器接 收 器+-青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(29) RS-485具有以下特点: RS-485 RS-485的电气特性:逻辑的电气特性:逻辑“1”1”以两线间的电压差为以两线间的电压差为+2

30、V-+2V-+6V+6V表示;逻辑表示;逻辑“0”0”以两线间的电压差为以两线间的电压差为-2V- -6V-2V- -6V表示。接表示。接口信号电平比口信号电平比RS-232-CRS-232-C降低了,就不易损坏接口电路的芯片,降低了,就不易损坏接口电路的芯片,且该电平与且该电平与TTLTTL电平兼容,可方便与电平兼容,可方便与TTL TTL 电路连接。电路连接。 RS-485 RS-485的数据最高传输速率为的数据最高传输速率为10Mbps10Mbps RS-485 RS-485接口是采用平衡驱动器和差分接收器的组合,抗接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强。共模干扰能力

31、增强。 RS-485 RS-485接口的最大传输距离为接口的最大传输距离为1200m1200m,在总线上允许连接,在总线上允许连接多达多达128128个收发器,即具有多站能力和多机通信功能,这样个收发器,即具有多站能力和多机通信功能,这样用户可以利用单一的用户可以利用单一的RS-485RS-485接口方便地建立起半双工通信网接口方便地建立起半双工通信网络。可以说络。可以说RS-485RS-485是一个真正意义上的总线标准。是一个真正意义上的总线标准。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(3

32、0) RS-485与RS-422的区别在于: 硬件线路上,硬件线路上,RS-422RS-422至少需要至少需要4 4根通信线,而根通信线,而RS-RS-485485仅需仅需2 2根;根;RS-422RS-422不能采用总线方式通信,但可不能采用总线方式通信,但可以采用环路方式通信,而以采用环路方式通信,而RS-485RS-485两者均可。两者均可。 通信方式上,通信方式上,RS-422RS-422可以全双工,而可以全双工,而RS-485RS-485只能只能半双工。半双工。 两者的其它差异见表两者的其它差异见表10-210-2所示。所示。青岛科技大学青岛科技大学 W W W . Q U S T

33、. E D U . C NW W W . Q U S T . E D U . C N(31)10.3 可编程串行接口芯片可编程串行接口芯片8251A青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(32)串口的基本任务(1)进行串,并转换(2)实现串行数据格式化(3)可靠性检验(4)实施接口与DCE之间联络控制青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N(33)10.3 可编程串行异步通信接口芯片可编程串

34、行异步通信接口芯片8251A1两种工作方式:同步方式,异步方式。同步方式下,波特率为064Kbps,异步方式下,波特率为019.2Kbps。2同步方式下的格式每个字符可以用5、6、7或8位来表示,并且内部能自动检测同步字符,从而实现同步。除此之外,8251A也允许同步方式下增加奇/偶校验位进行校验。3异步方式下的格式每个字符也可以用5、6、7或8位来表示,时钟频率为传输波特率的1、16或64倍,用1位作为奇/偶校验。1个启动位。并能根据编程为每个数据增加1个、15个或2个停止位。可以检查假启动位,自动检测和处理终止字符。4全双工的工作方式其内部提供具有双缓冲器的发送器和接收器。5提供出错检测具

35、有奇偶、溢出和帧错误三种校验电路。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N34 内部结构内部结构数据总线缓冲器读/写控制电路调制解调控制电路发送缓冲器发送控制接收缓冲器接收控制TxDTxEMPTYTxCRxDRxRDYRxCSYNDET/BRKDETTxRDYD7D0RESET发送器接收器CLKC/DRDWRDSRDTRCTSRTS内部数据总线青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N35 发送

36、器由发送缓冲器和发送控制电路两部分组成。采用异步方式,则由发送控制电路在其首尾加上起始位和停止位,然后从起始位开始经移位寄存器从数据输出线TXD逐位串行输出。1 发送器发送器 采用同步方式,则在发送数据之前,发送器将自动送出1个或2个同步字符,然后才逐位串行输出数据。 如果CPU与8251A之间采用中断方式交换信息,那么TXRDY可作为向CPU发出的中断请求信号。当发送器中的8位数据串行发送完毕时,由发送控制电路向CPU发出TXE有效信号,表示发送器中移位寄存器已空。 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D

37、 U . C N36 接收器由接收器由接收缓冲器和接收控制电路接收缓冲器和接收控制电路两部分组成。两部分组成。 接收移位寄存器从接收移位寄存器从RXD引腿上接收串行数据转换成并行数引腿上接收串行数据转换成并行数据后存入接收缓冲器。据后存入接收缓冲器。 异步方式:异步方式:在在RXD线上检测低电平,将检测到的低电平作线上检测低电平,将检测到的低电平作为起始位,为起始位, 8251A开始进行采样,完成字符装配,并进开始进行采样,完成字符装配,并进行奇偶校验和去掉停止位,变成了并行数据后,送到数据行奇偶校验和去掉停止位,变成了并行数据后,送到数据输入寄存器,同时发出输入寄存器,同时发出RXRDY信号

38、送信号送CPU,表示已经收,表示已经收到一个可用的数据。到一个可用的数据。 同步方式同步方式:首先搜索同步字符。:首先搜索同步字符。8251A监测监测RXD线,每当线,每当RXD线上出现一个数据位时,接收下来并送入移位寄存器线上出现一个数据位时,接收下来并送入移位寄存器移位,与同步字符寄存器的内容进行比较,如果两者不相移位,与同步字符寄存器的内容进行比较,如果两者不相等,则接收下一位数据,并且重复上述比较过程。当两个等,则接收下一位数据,并且重复上述比较过程。当两个寄存器的内容比较相等时,寄存器的内容比较相等时,8251A的的SYNDET升为高电平,升为高电平,表示同步字符已经找到,同步已经实

39、现。表示同步字符已经找到,同步已经实现。2 接收器接收器青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N373数据总线缓冲器数据总线缓冲器 数据总线缓冲器是CPU与8251A之间的数据接口。包含3个8位的缓冲寄存器:两个寄存器分别用来存放CPU向8251A读取的数据或状态信息。一个寄存器用来存放CPU向8251A写入的数据或控制。 读读/写控制电路用来配合数据总线缓冲器的工作。功能如下:写控制电路用来配合数据总线缓冲器的工作。功能如下: (1) 接收写信号,并将来自数据总线的数据和控制字写入接收写信号

40、,并将来自数据总线的数据和控制字写入8251A; (2) 接收读信号,并将数据或状态字从接收读信号,并将数据或状态字从8251A送往数据总线;送往数据总线; (3) 接收控制接收控制/数据信号数据信号C/,高电平时为控制字或状态字;低电,高电平时为控制字或状态字;低电平时为数据。平时为数据。 (4) 接收时钟信号接收时钟信号CLK完成完成8251A的内部定时;的内部定时; (5) 接收复位信号接收复位信号RESET,使,使8251A处于空闲状态。处于空闲状态。4读读/写控制电路写控制电路青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U

41、S T . E D U . C N3810.3.3 8251A的引脚功能的引脚功能80868251ACLKD7D0译码CSABRDWRRDWRC/DTxRDYTxERxRDYSYNDETRESET外设DTRDSRRTSCTSTxDRxDTxCRxC计数器/定时器青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N39 1发送器发送器 a. 数据输出线数据输出线TxD b. 发送时钟发送时钟 TxC c. 发送器准备好发送器准备好 TxRDY d. 发送器空信号发送器空信号 TxEMPY 过程过程 TxRD

42、Y有效有效CPU写数据到写数据到82518251发数据发数据 发送完毕,发送完毕,TxEMPY有效有效2接收器接收器 a. 数据输入线数据输入线RxD b. 接收时钟接收时钟 RxC c. 接收器准备好接收器准备好 RxRDY 过程过程 8251发数据发数据 RxRDY有效有效 CPU读读8251青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N403调制解调控制电路调制解调控制电路 /DTR/DTR数据终端准备好信号。是由数据终端准备好信号。是由825IA825IA送往外设送往外设的,表示的,表示CP

43、UCPU当前已经准备就绪。当前已经准备就绪。 /DSR/DSR数据设备准备好。是外设送往数据设备准备好。是外设送往825lA825lA的,表的,表示当前外设已经准备好数据。示当前外设已经准备好数据。8251Modem/DTR/DTR/DSR/DSR青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N41 /RTS/RTS请求发送信号。是请求发送信号。是8251A8251A送往外设的,送往外设的,表示表示C CP PU U已经准备好发送。已经准备好发送。 /CTS/CTS清除请求发送信号。由外设送往清除请求

44、发送信号。由外设送往825lA825lA的,当为低电平时,允许的,当为低电平时,允许825lA825lA执行发送操作。执行发送操作。 8251Modem/RTS/RTS/CTS/CTS青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N424读读/写控制电路写控制电路 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N4310.3.4 8251A的编程的编程编程的内容包括两大方面: 是由CPU发出的控制字,即方式选

45、择控制字和操作命令控制字; 是由8251A向CPU送出的状态字。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N44 时钟频率波特率因子波特率 1方式选择控制字(模式字)用于约定双方的通信方式,数据格式,传送速率S S2 2S S1 1EPEPPENPENL L2 2L L1 1B B2 2B B1 1D D7 7D D6 6D D5 5D D4 4D D3 3D D2 2D D1 1D D0 00000: :同步方式同步方式0101: :异步方式异步方式( (1 1) )1010: :异步方式异步方

46、式( (1616) )1111: :异步方式异步方式( (6464) )0000: :字符长度为字符长度为5 5位位0101: :字符长度为字符长度为6 6位位1010: :字符长度为字符长度为7 7位位1111: :字符长度为字符长度为8 8位位1 1: :带奇偶校验位带奇偶校验位0 0: :不带奇偶校验位不带奇偶校验位1 1: :偶校验偶校验0 0: :奇校验奇校验异异步步同同步步0000: :无效无效0101: :1 1位停止位位停止位1010: :1 1. .5 5位停止位位停止位1111: :2 2位停止位位停止位1111: :1 1个同步字符个同步字符,外同步外同步SYNSETSY

47、NSET为输入为输入1010: :1 1个同步字符个同步字符,内同步内同步SYNSETSYNSET为输出为输出0101: :2 2个同步字符个同步字符,外同步外同步SYNSETSYNSET为输入为输入0000: :2 2个同步字符个同步字符,内同步内同步SYNSETSYNSET为输出为输出青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N45 例1:异步通信中,若帧数据格式为:字符长度8位,双同步字符,内同步方式,奇校验,波特率因数是16,则工作字是:11011110B=DEH MOV DX,309H

48、;8251命令口 MOV AL,0DEH ;异步工作方式字 OUT DX,AL 例2:同步通信中,若帧数据格式为:字符长度8位,双同步字符,内同步方式,奇校验,则工作字是:00011100B=1CH。 MOV DX,309H ;8251命令口 MOV AL,1CH ;同步工作方式字 OUT DX,AL 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N46RxCTxCOUT CLK GATE+5v1MHz82518253如果波特率为如果波特率为1200,波特率因子为,波特率因子为16,问计数初值?,问计

49、数初值?青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N472. 控制寄存器的格式控制寄存器的格式 确定8251A的实际操作,迫使8251A进行某种操作或工作状态,以便接收或发送数据。EHIRRTSERSBRK RxEDTR TxEND7D6D5D4D3D2D1D01:允许发送1:数据终端准备好1:允许接收1:发中止字符0:正常工作1:清除错误标志1:请求发送内部复位进入搜索方式青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E

50、D U . C N483. 状态寄存器的格式(状态控制字(读)状态寄存器的格式(状态控制字(读) 8251A执行命令进行数据传送后的状态字存放在状态寄存器中,CPU通过读出状态字进行分析和判断,以决定下一步的操作。DSR SYNDET/BRKDETFEOEPETxE RxRDY TxRDYD7D6D5D4D3D2D1D01:发送器准备好1:接收器准备好1:发送器空奇偶错标志溢出错标志帧校验错标志1:已达到同步0:未达到同步SYNDETBRKDET1:接收到断缺字符0:正常工作数据装置准备好青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U

51、 S T . E D U . C N49例1: 若要查询8251A接收器是否准备好,则可用下列程序段完成MOV DX,0FFF2H ;状态口L: IN AL,DX ;读状态口AND AL,02H ;查Dl1?即准备好了吗?JZ L ;未准备好,则等待MOV DX, OFFF0H ;数据口IN AL,DX ;已准备好则输入数据例2:检查出错信息,则用下列程序段 MOV DX,309H ;状态口 IN AL,DX TEST AL,38H ;检查D5D4D3三位(FE,OE,PE) JNZ ERROR ;若其中有一位为1,则出错青岛科技大学青岛科技大学 W W W . Q U S T . E D U

52、 . C NW W W . Q U S T . E D U . C N50 8251编程 芯片复位以后,第一次用奇地址端口写入的值作为模式字进入模式寄存器。 由CPU用奇地址端口写入的值将作为控制字送到控制寄存器,而用偶地址端口写入的值将作为数据送到数据输出缓冲寄存器。青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N51应用举例 例:编写8251异步模式下的接收和发送程序,设端口地址:90H,92H,波特率因子16,1起始位,1停止位,无奇偶校验,每字符8位。 青岛科技大学青岛科技大学 W W W .

53、 Q U S T . E D U . C NW W W . Q U S T . E D U . C N52RxCTxCOUT CLK GATE+5v1.8432M 82518253青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N531 1) 82538253工作方式及计数初值工作方式及计数初值工作方式工作方式 mode3mode382538253输出频率:输出频率: foutfout96009600* *16=153600=153.6K16=153600=153.6K fclk fclk=1.8432

54、M N=12=1.8432M N=12青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N542) 82512) 8251工作方式工作方式 方式选择控制字方式选择控制字0 1 0 0 1 1 1 0 4EH青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N55操作命令控制字操作命令控制字0 0 1 1 0 1 1 1 37H青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W

55、W . Q U S T . E D U . C N56 先对先对825lA825lA软件复位,一般采用先送软件复位,一般采用先送3 3个个0 0,再,再送送1 1个个40H40H的方法,这也是的方法,这也是8251A8251A的编程约定,的编程约定,40H40H可以看成是使可以看成是使8251A8251A执行复位操作的实际代码。执行复位操作的实际代码。 对对8251A8251A进行工作方式及操作命令设置进行工作方式及操作命令设置3) 程序程序8251初始化设置:初始化设置:青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E

56、 D U . C N57MOV AL,00H MOV AL,00H ;复位;复位82518251OUT 92H,ALOUT 92H,ALCALL DELAYCALL DELAYOUT 92H,ALOUT 92H,ALCALL DELAYCALL DELAYOUT 92H,ALOUT 92H,ALCALL DELAYCALL DELAYMOV AL,40HMOV AL,40HOUT 92H,ALOUT 92H,ALCALL DELAY CALL DELAY ;等待;等待82518251复位复位MOV AL,4EH MOV AL,4EH ;置工作方式;置工作方式OUT 92H,AL OUT 92H

57、,AL MOV AL,37H MOV AL,37H ;操作命令操作命令OUT 92H,AL OUT 92H,AL 青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N58发送:发送:SENDDATSENDDATPROCPROC;DL:DL:要发送的数据要发送的数据CHKTXR:CHKTXR:IN ALIN AL,92H92H;输入;输入状态字状态字AND ALAND AL,01H01H;查;查TXRDYTXRDYJZ CHKTXRJZ CHKTXRMOV AL,DLMOV AL,DLOUT 90HOUT

58、90H,ALAL;发送;发送RETRETSENDDATSENDDATENDPENDP接收接收:RECIDATRECIDATPROCPROC;AL:AL:接收的数据接收的数据CHKRXD:CHKRXD:IN ALIN AL,92H92H;输入;输入状态字状态字AND ALAND AL 02H02H;查;查RXRDYRXRDY?JZ CHKRXDJZ CHKRXDIN 90HIN 90H,ALAL;接收;接收RETRETRECIDATRECIDATENDPENDP青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U .

59、C N598251A应用举例 利用利用8251A和和RS232C实现两台微机之间的双机实现两台微机之间的双机串行通信的结构框图如图串行通信的结构框图如图10-12所示,这种双机通信在所示,这种双机通信在实际中应用得非常广泛。试编写完整的程序完成利用实际中应用得非常广泛。试编写完整的程序完成利用8251A双机通信将一组数据从发送机传送到接收机。双机通信将一组数据从发送机传送到接收机。(要要求通过发送器求通过发送器A把数据把数据010传送到接收机传送到接收机B中,采用异中,采用异步方式,字符长度为步方式,字符长度为8位,波特系数为位,波特系数为16,偶校验,一,偶校验,一位停止位位停止位)青岛科技

60、大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N60设计1)硬件连接 DTE(Data Terminal Equipment) 根据以上分析把二台PC机都当作数据终端设备DTE,它们之间只需TXD,RXD和SG三根线连接就能通信。 主要电路:8251串行口TTL/EIA变换器波特率发生器地址译码电路2)软件编程发送程序:包括初始化,状态查询,I/O青岛科技大学青岛科技大学 W W W . Q U S T . E D U . C NW W W . Q U S T . E D U . C N61图图10-12 8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论