《微机原理与接口串行通信接口.pptx》由会员分享,可在线阅读,更多相关《微机原理与接口串行通信接口.pptx(145页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第九章第九章 串行通信与接口串行通信与接口第1页/共145页教学重点异步通信协议和RS232C接口8051、8250芯片的结构与编程使用 异步通信程序第2页/共145页9.1 串行通信基础n串行通信:将数据分解成二进制位用一条信号线,逐位顺序传送的将数据分解成二进制位用一条信号线,逐位顺序传送的方式方式n串行通信的优点:通信通信的线路少,因而在远距离通信时可以极大地降低成的线路少,因而在远距离通信时可以极大地降低成本本串行通信适合于远距离数据传送,也常用于速度要求不串行通信适合于远距离数据传送,也常用于速度要求不高的近距离数据传送高的近距离数据传送nPC系列机上有两个串行异步通信接口、键盘、鼠
2、标器与主机间采用串行数据传送第3页/共145页1.传输制式n单工方式(Simplex):只只允许数据按照一个固定的方向传送允许数据按照一个固定的方向传送数据流数据流单工方式单工方式A发送器B接收器图示第4页/共145页1.传输制式(续)n半双工方式(Half-Duplex)收发双方均具备接收和发送数据能力。由于只有一条通收发双方均具备接收和发送数据能力。由于只有一条通道,不能同时在两个方向上传送数据。道,不能同时在两个方向上传送数据。数据流数据流半双工方式半双工方式A发送器接收器B接收器发送器图示第5页/共145页1.传输制式(续)n全双工方式(Full Duplex):收发双方均具备接收和发
3、送数据能力,并可以同时进行收发双方均具备接收和发送数据能力,并可以同时进行双向传输。双向传输。数据流数据流全双工方式全双工方式A发送器接收器B接收器发送器图示第6页/共145页2.传输速率n比特率(信息传输速率):每秒传送的二进制数位数每秒传送的二进制数位数(比特数比特数)单位为单位为bpsbps(bit per secondbit per second)n波特率(码元传输率):每秒传送的码元每秒传送的码元(符号符号)数数单位为单位为:波特波特(BaudBaud)即每秒传送即每秒传送1 1个码元个码元 (符号符号)称传输率称传输率是是1 1波特。波特。第7页/共145页2.传输速率(续)n波特
4、率与比特率的差异若每个码元所含的信息量为若每个码元所含的信息量为1 1比特比特(Bit)(Bit),则波特率等于,则波特率等于比特率,否则二者不等比特率,否则二者不等例如,在四相调制系统中,例如,在四相调制系统中,每次调制取每次调制取4 4种相位差值,种相位差值,它代表它代表2 2 位二进制信息位,此时位二进制信息位,此时,比特率比特率=2=2波特率波特率标准波特率系列为标准波特率系列为:110110、300300、600600、12001200、18001800、24002400、48004800、96009600、1920019200第8页/共145页3.串行通信协议n通信协议:收发双方共
5、同遵守的基本通信规程(收发双方共同遵守的基本通信规程(ProtocolProtocol)n通信协议主要内容:同步方式同步方式传输控制步骤传输控制步骤差错检验方式差错检验方式数据编码数据编码数据传输速率数据传输速率通信版文的格式通信版文的格式控制字符的定义控制字符的定义等等第9页/共145页4.串行通信的基本方式n串行通信有两种基本方式异步串行通信在通信的数据流中,字符间异步,字符内部各位间同步。在通信的数据流中,字符间异步,字符内部各位间同步。“异步”体现在字符与字符之间通信没有严格的定时要求。体现在字符与字符之间通信没有严格的定时要求。一旦传送开始,一旦传送开始,收收/发双方则以预先约定的传
6、输速率,在时钟发双方则以预先约定的传输速率,在时钟的作用下,传送这个字符中的每一位的作用下,传送这个字符中的每一位。同步串行通信数据流中的字符与字符之间和字符内部位与位之间都同步。数据流中的字符与字符之间和字符内部位与位之间都同步。同步串行通信是以数据块(字符块)为信息单位传送,而每帧同步串行通信是以数据块(字符块)为信息单位传送,而每帧信息包括成百上千个字符;信息包括成百上千个字符;传送一旦开始,要求传送一旦开始,要求每帧信息内部的每一位都要同步每帧信息内部的每一位都要同步。第10页/共145页n异步通信协议(起止式通信协议)格式第11页/共145页起始位:每一帧字符的开始,1位,逻辑0 数
7、据位:紧接着起始位,数据位个数为58位,数据从最低位开始发送奇偶校验位:数据位之后,发送1位奇偶校验位,也可以不发校验位停止位:一帧字符的最后发停止位,它可以是1位、1.5位或2位的逻辑1信号空闲位:在每一帧字符之间可以有不等位数的逻辑1信号,表示没有传送图示n异步通信协议(起止式通信协议)格式第12页/共145页比如比如ASCII ASCII 字符字符 A,A,二进制是二进制是0100 0001(80100 0001(8位位),它们在起始,它们在起始位和位和2 2位停止位之间传送,并使用了位停止位之间传送,并使用了1 1位奇校验位。位奇校验位。OutOut 0 1 0 0 0 0 0 1 0
8、 0 1 1先出后出D7D0第13页/共145页u为了确保异步串行通信传输正确:14用相反极性的起始位和停止位/空闲位提供准确的时间基准接收器在每位的中心采样,以获得最大的收/发时钟频率偏差容限接收器采用比传送波特率更高频率的时钟来控制采样时间,以提高采样的分辨能力和抗干扰能力。第14页/共145页例题:异步传输7位ASCII码,如果需要数据传输速率为240字符/秒,使用1位奇偶校验位和1位停止位,则:波特率应该是多少?有效数据位传输位是多少?传输效率是多少?答:答:波特率是波特率是 (7(7位数据位位数据位+1+1位起始位位起始位+1+1位校验位位校验位+1+1位停止位位停止位)240)24
9、0 =2400b/s =2400b/s 有效数据位传输位是有效数据位传输位是 :7240=1680b/s7240=1680b/s 传输效率是:传输效率是:1680/2400=70%1680/2400=70%第15页/共145页以一个数据块(帧)为传输单位,每个数据块附加1个或2个同步字符,最后以校验字符结束同步通信的数据传输效率和传输速率较高,但硬件电路比较复杂串行同步通信主要应用在网络当中最常使用高级数据链路控制协议HDLCn同步通信协议第16页/共145页n同步通信协议的格式:多多个个数数据据字字节节加加上上同同步步字字符符构构成成一一个个数数据据包包称称为为1 1帧帧每一帧以每一帧以1
10、1个或个或2 2个同步字符个同步字符(SYNC)SYNC)为起始为起始紧紧跟跟同同步步字字符符之之后后是是 N N个个数数据据字字符符,N N可可由由用用户户设定设定以两个检验字符以两个检验字符(CRCCRC)作为作为1 1帧的结束帧的结束第17页/共145页CRC2CRC1数据字节n数据字节1SYNC1 一 帧SYNC2CRC2CRC1数据字节n数据字节2数据字节1SYNC 一 帧CRC2CRC1数据字节n数据字节3数据字节2数据字节1 一 帧a.单同步数据格式单同步数据格式b.双同步数据格式双同步数据格式c.外同步数据格式外同步数据格式第18页/共145页5.信号的调制与解调n调制(Mod
11、ulating)发送方将数字信号转换成模拟信号(实现发送方将数字信号转换成模拟信号(实现频谱搬移)n解调(Demodulating)接收方将接收的模拟信号还原成数字信号接收方将接收的模拟信号还原成数字信号n调制解调器MODEM具有调制和解调功能的器件合制在一个装置具有调制和解调功能的器件合制在一个装置数字信号的带宽较宽,模拟信号带宽较窄远距离传送需要调制图示第19页/共145页20u调制方法:调制方法:按照调制技术的不同分为调频(FM)、调幅(AM)和调相(PM)三种,根据传输数字信号的变化规律去调整载波的频率、幅度或相位 第20页/共145页5.信道复用时分多路复用TDM(Time Divi
12、sion Multiplexing)就是将一条物理传输线路按时间分成若干时间片轮换地为多个信号所占用,每个时间片由复用的一个信号占用。频分多路复用FDM(Frequency Division Multiplexing)利用频率调制原理,将要同时传送的多个信号进行频谱搬移,使它们互不重叠地占据信道频带的不同频率段,然后经发送器从同一信道上同时或不同时地发送出去。计算机串行数据通信及其接口中使用时分多路复用系统。第21页/共145页9.2 串行接口标准RS-232CnRS-232C是美国电子工业协会EIA制定的通用串行接口标准1962年公布,1969年修订,1987年1月正式改名为EIA-232D
13、n是数据终端设备DTE(Data Terminal Equipment)与数据发送设备DCE(Data Communication Equipment)之间相互连接的标准接口第22页/共145页最高数据传输率为19.2Kbps,传输电缆长度不超过15米RS232C接口采用标准的D型25针连接器(DB25连接器)及九针连接器图示9.2 9.2 串行接口标准RS-232CRS-232C第23页/共145页1.RS232C引脚定义:n232C包括两个信道:主信道和次信道n次信道为辅助串行通道提供数据控制和通道,但其传输速率比主信道要低得多,其他跟主信道相同,通常较少使用第24页/共145页表表9.1
14、 9.1 常用的常用的RSRS232C232C接口信号接口信号振铃指示RI22DTE准备好DTE DCEDTR20数据载波检测DCE DTEDCD8信号地GND7DCE准备好DCE DTEDSR6允许发送DCE DTECTS5请求发送DTE DCERTS4接收数据DCE DTERXD3发送数据DTE DCETXD2功能信号方向功能缩写符号引脚号第25页/共145页1.RS232C引脚定义(续)pDTR(Data Terminal Ready):DTE 准备好信号DETDET接接通通电电源源并并进进入入工工作作状状态态后后向向DCEDCE发发出出DTRDTR信信号号,仅当仅当DCEDCE收到信号
15、后方可进行通信收到信号后方可进行通信pDSR(Data Set Ready):DCE准备好信号DCEDCE接接通通电电源源并并进进入入工工作作状状态态后后向向DTEDTE发发出出DSRDSR信信号号,DTEDTE确信该信号有效后,发出请求发送信号。确信该信号有效后,发出请求发送信号。pRTS(Request To Send):数据请求发送当DTE设备准备发送数据时,向DCE发出RTS信号pCTS(Clear To Send):允许发送信号是DCE设备对DTE发来RTS信号的回答,数据才能被发送。第26页/共145页1.RS232C引脚定义(续)pDCD(Data Carrier Detecte
16、d):数据载波检测信号当当DCEDCE检检测测到到线线路路上上出出现现有有效效载载波波信信号号后后,向向 DTEDTE发发出出DCDDCD信号。信号。pRI(Ring Indicate):振铃指示当当调调制制解解调调器器接接收收到到对对方方的的拨拨号号信信号号期期间间,该该引引脚脚信信号号作为电话铃响的指示、保持有效作为电话铃响的指示、保持有效第27页/共145页pTxD:发送数据串行数据的发送端pRxD:接收数据串行数据的接收端pGND:信号地为所有的信号提供一个公共的参考电平1.RS232C引脚定义(续)p保护地(机壳地):起屏蔽保护作用的接地端pTxC:发送器时钟控制数据终端发送串行数据
17、的时钟信号pRxC:接收器时钟控制数据终端接收串行数据的时钟信号第28页/共145页2.2.RS-232CRS-232C的连接n微机利用232C接口连接调制解调器,用于实现通过电话线路的远距离通信n微机利用232C接口直接连接进行短距离通信。这种连接不使用调制解调器,所以被称为零调制解调器(Null Modem)连接第29页/共145页u连接调制解调器电话线MODEM微机2345678202223456782022MODEM23456782022数据装置准备好DSR数据终端准备好DTR发送数据TxD接收数据RxD请求发送RTS允许发送CTS信号地GND载波检测CD振铃指示RI微机2345678
18、2022第30页/共145页u不使用联络信号的3 3线相连方式为了交换信息,TxD和RxD应当交叉连接程序中不必使RTS和DTR有效也不应检测CTS和DSR是否有效 TxDRxDGND微机微机TxDRxDGND第31页/共145页u“伪”使用联络信号的3 3线相连方式RTS和CTS各自互接,DTR和DSR各自互接表明请求传送总是允许、数据装置总准备好DSRDTRTxDRxDRTSCTSGND微机微机第32页/共145页u使用联络信号的多线相连方式通信比较可靠所用连线较多,不如前者经济DSRDTRTxDRxDRTSCTSGND微机微机DSRDTRTxDRxDRTSCTSGND第33页/共145页
19、3.电气特性nRS-232C采用EIA电平逻辑逻辑“1”1”在在3V3V15V15V之间之间逻辑逻辑“0”0”在在3V3V15V15V之间之间实际常用实际常用12V12V或或15V15V图示标准TTL电平高电平:2.4V5V低电平:0V0.4VRS232C电平与 TTL电平不兼容,二者之间通常需加电平转换电路图示第34页/共145页n必须抗共模噪声干扰 RS-232C RS-232C由于在发送器与接收器之间有公共信号地,不由于在发送器与接收器之间有公共信号地,不可能使用双端信号,因此共模噪声很容易引入信号系统中,可能使用双端信号,因此共模噪声很容易引入信号系统中,且噪声幅度可高达好几伏,这是迫
20、使且噪声幅度可高达好几伏,这是迫使RS-232CRS-232C使用较高传使用较高传输电压的主要原因。输电压的主要原因。另一个原因是为了补偿传输线上的信号衰减和沿线附加电另一个原因是为了补偿传输线上的信号衰减和沿线附加电平的影响。平的影响。第35页/共145页n最大传输速率和最大传输线长度的关系36一般应用情况下,RS-232C的最高传输速率为20Kb/s,最大传输线长度为30m。第36页/共145页4.机械特性连接器连接器第37页/共145页n连接器的连接连接器的连接第38页/共145页n电缆长度电缆长度在通信速率低于20Kb/s时,RS-232C所能直接连接的最大物理距离为15m(50ft)
21、。RS-232C规定,若不使用MODEM,则码元的畸变要小于4%,驱动器的负载电容应该小于2500pF,则单位(1ft)长度的电容值为NpF的电缆的长度应该是:使用特制的低电容电缆也能有效地提高电缆长度,可以达到150m(500ft)甚至更多。第39页/共145页5.5.RS-232 RS-232 的局限RS-232C采用单端驱动、单端接收的单端双极性电路标准。仅用一条线路传输一种信号,根据该信号线上电平相对于公共的信号地电平的大小来决定逻辑的“1”和“0”。对于多条信号线来讲,它们的地线是公共的,这种共地传输方式,抗干扰能力很差。尽管采用电平转换器来提高信号传输电平,但在较长距离时,由于电压
22、损失,仍不可避免错误。当信号穿过电磁干扰环境时,也可能因附加的干扰信号电平使发送的“0”变为“1”或“1”变为“0”。故其信号波特率不能过高,仅限在20Kb/s以下,且距离不大于15m。第40页/共145页6.6.异步通信适配器PC微机异步通信适配器是微机与微机、微机与MODEM及微机与外设之间进行异步通信的接口。其核心是UART。USART(Universal Synchronous/Asynchronous Receiver and Transmitter)通用同步/异步接收发送器常见的UART主要有8251A、INS8250、PC16450和PC16550。此外,还有带更大缓冲的UART
23、,称为PC16650和PC16750 第41页/共145页9.3 可编程串行通信接口芯片8251An可用于同步传送和异步传送p同步传送同步传送5 58 8位位/字符;内同步或外同步;可自动插入同步字符字符;内同步或外同步;可自动插入同步字符p异步传送异步传送 5 58 8位位/字符;时钟频率为波特率的字符;时钟频率为波特率的1 1、1616、6464倍;可倍;可产生终止字符;可产生产生终止字符;可产生1 1、1.51.5、2 2位的停止位;可检测位的停止位;可检测假起始位;自动检测和处理终止字符假起始位;自动检测和处理终止字符9.3.1 8251A的基本功能第42页/共145页9.3.1 82
24、51A的基本功能n波特率:0 064K(64K(同步同步);0 019.2K(19.2K(异步异步)n全双工双缓冲器发送和接收双缓冲器发送和接收n出错检测:具有奇偶、溢出和帧错等检测电路具有奇偶、溢出和帧错等检测电路n输入输出电平与TTL电平兼容;单一单一+5V+5V电源;单一电源;单一TTLTTL电平时钟;电平时钟;n双列直插封装第43页/共145页9.3.2 8251A的结构n数据总线缓冲器:三态双向三态双向8 8位缓冲器,位缓冲器,8251A8251A通过它与通过它与CPUCPU交换信息交换信息n读/写控制逻辑电路:控制读控制读/写、复位等操作写、复位等操作图示调制/解调控制电路:提供一
25、组调制/解调控制信号,使8251A可与MODEM相连发送缓冲器:由数据发送缓冲器与并串移位寄存器组成,将并行数据转换成串行数据发送出去第44页/共145页9.3.2 8251A的结构(续)n发送控制电路:协调发送缓冲器工作,为传送提供识别控制信息位(如协调发送缓冲器工作,为传送提供识别控制信息位(如起始位,停止位、同步字符等)起始位,停止位、同步字符等)n接收缓冲器:接收串行数据,并按相应格式转换成并行数据接收串行数据,并按相应格式转换成并行数据n接收控制电路:协调接收缓冲器工作协调接收缓冲器工作第45页/共145页n8251A的引脚功能与CPU连接信号pD D7 7D D0 0:双双向向数数
26、据据线线,与与系系统统的的数数据据总总线线相相连连,传传送送命命令令字,状态信息和收发数据字,状态信息和收发数据pRESETRESET:复复位位信信号号,有有效效时时,将将内内部部寄寄存存器器和和控控制制逻逻辑辑清清0 0pCS#CS#(Chip(Chip Select)Select):片片选选信信号号,来来自自CPUCPU的的I/OI/O地地址址译译码器码器pRD#RD#、WR#WR#:读、写控制信号,与系统的:读、写控制信号,与系统的IORIOR、IOWIOW相连相连pCLKCLK :系统时钟信号,产生:系统时钟信号,产生8251A8251A内部的时序信号内部的时序信号pC/D#C/D#:
27、控制口:控制口/数据口选择信号;数据口选择信号;*C/D#=1C/D#=1,选中控制,选中控制/状态端口状态端口*C/D#=0C/D#=0,选中数据端口,选中数据端口第46页/共145页表表9.2 RD*9.2 RD*、WR*WR*、C/D*C/D*的编码和对应的操作的编码和对应的操作D7D0为高阻状态1D7D0为高阻状态110向8251A写控制命令0110读取8251A的状态1010向8251A输出数据0100从8251A输入数据10 0 0操作WR#RD#C/D#CS#第47页/共145页与CPU连接信号pTxRDY(transmitter TxRDY(transmitter Ready)
28、Ready):发发送送器器准准备备好好信信号号,输输出,高电平有效出,高电平有效uTxRDY有效的条件是:*CTS#CTS#引脚是低电平,初始化命令字的引脚是低电平,初始化命令字的TxEN=1TxEN=1,当发送缓,当发送缓冲器为空时,此信号有效冲器为空时,此信号有效*它有效表明它有效表明CPUCPU可以向可以向8251A8251A发送数据发送数据*在中断方式下,在中断方式下,TxRDYTxRDY可作为中断请求信号可作为中断请求信号*CPUCPU向向8251A8251A写入一个字符后,写入一个字符后,TxRDYTxRDY自动复位自动复位第48页/共145页与CPU连接信号pTxE(Transm
29、itter Empty)TxE(Transmitter Empty)*发送器空信号,输出,高电平有效发送器空信号,输出,高电平有效*表示发送器中并串转换器已空,发送过程已完成;表示发送器中并串转换器已空,发送过程已完成;*8251A8251A从从CPUCPU接收待发的数据后,自动复位;接收待发的数据后,自动复位;*字符发送完,字符发送完,TxETxE又变为高;又变为高;*TxRDYTxRDY较较TxETxE之前有效之前有效pRxRDY(Receiver Ready)*接收器准备好信号,输出,高电平有效*表示8251A已经接收了一个数据,正等待CPU取走;*该信号可作为向CPU发出的中断请求信号
30、;*当CPU读取数据后,RxRDY自动复位。第49页/共145页与CPU连接信号pSRNDET(Synchronous Detect)SRNDET(Synchronous Detect)*同同步步检检验验信信号号,双双向向,高高电电平平有有效效。该该信信号号仅仅用用于于同同步步方式,其输入输出由程序控制。方式,其输入输出由程序控制。内同步方式:*SRNDETSRNDET端输出。当端输出。当8251A8251A检测到同步字符时,该信号为检测到同步字符时,该信号为高电平,表示接收发送达到同步。高电平,表示接收发送达到同步。外同步方式:*SRNDETSRNDET端输入。当片外电路检测到同步字符时从该
31、端端输入。当片外电路检测到同步字符时从该端输入高电平,它使输入高电平,它使8251A8251A在在RxCRxC时钟下开始装配字符。时钟下开始装配字符。第50页/共145页与调制/解调器的接口信号pDTR#(Data Terminal Ready)DTR#(Data Terminal Ready)*数据终端准备好信号,低电平有效。数据终端准备好信号,低电平有效。*有效表示有效表示DTEDTE设备已准备好。设备已准备好。pDSR#(Data Set Ready)DSR#(Data Set Ready)*数据装置准备好,输入,低电平有效。数据装置准备好,输入,低电平有效。*它是它是MODEMMODE
32、M对对DTRDTR信号的回答,表示信号的回答,表示MODEMMODEM已准备好。已准备好。pRTS#(Request To Send)*请求发送信号,输出,低电平有效。*用于通知MODEM,DTE设备要求发送数据第51页/共145页与调制/解调器的接口信号pCTS#(Clear To Send)*允许发送信号,输入,低电平有效。*是MODEM对RTS 的响应信号,表示允许DTE设备发送数据pTxD(Transmitter Data)*发送数据线pRxD(Receiver Data)*接收数据线第52页/共145页传输速率控制线pTxC(Transmitter Clock)TxC(Transmi
33、tter Clock)*发送器时钟,控制发送器时钟,控制8251A8251A发送字符的速率发送字符的速率pRxC(Receiver Clock)RxC(Receiver Clock)*接收器时钟,控制接收器时钟,控制8251A8251A接收字符的速率接收字符的速率在同步方式下:在同步方式下:TxCTxC和和RxCRxC的频率等于字符传输的波特率的频率等于字符传输的波特率在异步方式下:在异步方式下:TxCTxC和和RxCRxC的频率可以是字符传输波特率的频率可以是字符传输波特率的的1 1倍、倍、1616倍或倍或6464倍,由初始化编程设定倍,由初始化编程设定第53页/共145页9.3.3 825
34、1A的编程使用1.工作方式字n作用:设定设定8251A8251A的工作方式,如异步的工作方式,如异步/同步方式,字符格式,同步方式,字符格式,传输率等传输率等n写入次序工作方式字必须紧跟复位操作之后写入工作方式字必须紧跟复位操作之后写入n工作方式字的格式为:第54页/共145页NoNo异步异步(D(D1 1DD0 0 00)00)YesYes(D(D1 1DD0 0=00)=00)/DD0 0DD1 1DD2 2DD3 3DD4 4DD5 5DD6 6DD7 711=11=异步异步646410=10=异步异步161601=01=异步异步1100=00=同步方式同步方式波特率系数波特率系数11=
35、811=8位位10=710=7位位01=601=6位位00=500=5位位字符长度字符长度11=211=2个停止个停止 位位10=1.510=1.5个停止个停止 位位01=101=1个停止个停止 位位00=00=不确定不确定帧控制帧控制11=11=偶校验偶校验01=01=奇校验奇校验0=0=无校验无校验奇奇/偶校验偶校验1=11=1个同步字符个同步字符0=20=2个同步字符个同步字符1=1=外同步外同步0=0=内同步内同步同步控制同步控制同步同步?n工作方式字的格式第55页/共145页n工作方式字的格式说明pD D1 1、D D0 0:同步异步:同步异步/波特率系数选择波特率系数选择*D D1
36、 1D D0 0=00=00,为同步方式控制字,为同步方式控制字*此时由此时由D D7 7D D6 6位来选择同步的方式位来选择同步的方式*D D1 1D D0 00000,是异步方式控制字,是异步方式控制字*D D1 1D D0 0=01=01、1010、1111,其波特率系数分别为:,其波特率系数分别为:1 1、1616、6464*TxCTxC和和RxCRxC的频率、波特率系数和波特率的关系为的频率、波特率系数和波特率的关系为:第56页/共145页n工作方式字的格式说明pD D3 3、D D2 2:字符长度选择:字符长度选择*D D3 3D D2 2=00=00、0101、1010、111
37、1,数据分为:,数据分为:5 5、6 6、7 7、8 8位位pD D5 5、D D4 4:奇:奇/偶校验选择偶校验选择*D D5 5D D4 4=0=0、1010、1111,分别为:无校验、奇校验、偶校验,分别为:无校验、奇校验、偶校验pD D7 7、D D6 6:同步控制方式:同步控制方式/停止位长选择停止位长选择*当当D D1 1D D0 0=00=00,为同步控制方式设置,为同步控制方式设置*D D7 7D D6 6=00=00、0101、1010、1111,分别为双,分别为双/单同步下的内单同步下的内/外同外同步;步;*当当D D1 1D D0 00000,为停止位长选择,为停止位长选
38、择*D D7 7D D6 6=01=01、1010、1111,停止位长分别为:,停止位长分别为:1 1、1.51.5、2 2位位第57页/共145页例例9.1 9.1 设设定定8251A8251A工工作作于于异异步步方方式式,波波特特率率系系数数是是16,16,每每个个字字符符7 7位位数数据据位位,1 1位位起起始始位位,2 2位位停停止止位位,偶校验。偶校验。则其工作方式字为则其工作方式字为 :1111 1010B=0FAH1111 1010B=0FAH设定工作方式程序段为设定工作方式程序段为:MOVMOVDX DX,309H309H;8251A8251A的控制口的控制口MOVMOVAL
39、AL,0FAH0FAH;工作方式字工作方式字OUTOUTDX DX,ALAL第58页/共145页2.工作命令字工作命令字n作用:确定确定8251A8251A的实际操作,使的实际操作,使8251A8251A进入某种工作状态,以进入某种工作状态,以便发送或接收数据便发送或接收数据n工作命令字的格式:TXENDTRRXESBRKERRTSIREHD0D1D2D3D4D5D6D7发送允许数据终端准备好接收允许发中止字符错误标志复位发送请求内部复位搜索同步字符第59页/共145页n工作命令字的格式:pD D0 0:发送允许:发送允许*D D0 0=1=1,允许发送,允许发送,D D0 0=0=0,禁止发
40、送,禁止发送pD D1 1:数据终端准备就绪。:数据终端准备就绪。*D D1 1=1=1,置引脚,置引脚DTR#DTR#有效,表示数据终端准备好有效,表示数据终端准备好pD D2 2:接收允许:接收允许*D D2 2=1=1,允许接收,允许接收,D D2 2=0=0,禁止接收,禁止接收pD D3 3:发中止字符:发中止字符*D D3 3=1=1,使引脚,使引脚TxDTxD为低电平,输出中止字符为低电平,输出中止字符*D D3 3=0=0,正常工作情况,正常工作情况第60页/共145页n工作命令字的格式说明pD D4 4:错误标志复位:错误标志复位*D D4 4=1=1,使状态寄存器中出错标志,
41、使状态寄存器中出错标志(FE(FE、OEOE、PE)PE)复位复位pD D5 5:发送请求:发送请求*D D5 5=1=1,置引脚,置引脚RTS#RTS#为低电平,向为低电平,向MODEMMODEM提出发送请提出发送请求求pD D6 6:内部复位。:内部复位。*D D6 6=1=1,使,使8251A8251A复位复位pD D7 7:搜索同步字符,只用于内同步方式:搜索同步字符,只用于内同步方式*D D7 7=1=1,8251A8251A对对RxDRxD引脚输入的信息进行同步字符搜索,引脚输入的信息进行同步字符搜索,若搜索到,使若搜索到,使SYNDETSYNDET输出高电平输出高电平第61页/共
42、145页例例9.2 9.2 要使要使8251A8251A内部复位,且允许接收和发送,内部复位,且允许接收和发送,应先发复位字,再发允许收发字。应先发复位字,再发允许收发字。程序段为:程序段为:MOVMOVDX,DX,309H309H ;309H309H 8251A 8251A命令口命令口MOVMOVAL,AL,0100 0000B0100 0000B;置;置D D6 6=1=1,OUTOUTDX,ALDX,AL;使内部复位;使内部复位MOVMOVAL,AL,0000 0101B0000 0101B;置;置D D2 2=1,D=1,D0 0=1=1OUTOUTDX,ALDX,AL;允许接收与发送
43、;允许接收与发送第62页/共145页3.状态字状态字n8251A内部设有状态寄存器,CPU用IN指令读入8251A的状态字,查询接口当前的工作状态。n状态字的格式:发送准备好接收准备好发送器空奇偶错溢出错格式错同步检测数据设备准备好TxRDYRxRDYTxEPEOEFESYNDETDSRD0D1D2D3D4D5D6D7第63页/共145页n状态字的格式说明pRxRDYRxRDY(D D1 1)、TxETxE(D D2 2)和和SYNDETSYNDET(D D6 6)的的含含义义与与同同名名引脚的含义和状态相同引脚的含义和状态相同pDSRDSR(D D7 7)=1=1,表示,表示DSR#DSR#
44、引脚为低电平引脚为低电平pTxRDYTxRDY(D D0 0)=1=1,只只表表示示输输出出缓缓冲冲器器已已空空,这这与与输输出出引引脚脚TxRDYTxRDY的含义有所不同。的含义有所不同。*仅当状态位仅当状态位TxRDY=1TxRDY=1,引脚,引脚CTS#CTS#为低和命令字的为低和命令字的TxENTxEN位位=1=1,三者同时满足时,三者同时满足时,输出引脚输出引脚TxRDY=1TxRDY=1第64页/共145页n状态字的格式说明pFE=1FE=1表表示示帧帧格格式式错错,即即在在异异步步方方式式下下,当当一一个个字字符符结结束束而没有检测到规定的停止位的差错而没有检测到规定的停止位的差
45、错pOE=1OE=1表表示示溢溢出出错错,即即CPUCPU尚尚未未读读取取上上一一个个字字符符而而又又接接收收了下一个字符的错误了下一个字符的错误pPE=1PE=1表示当前出现了奇偶校验错表示当前出现了奇偶校验错*FEFE、OEOE和和PEPE的的有有效效并并不不影影响响8251A8251A的的操操作作,它它们们被被工工作作命令字的命令字的ERER位复位。位复位。第65页/共145页例例9.3 9.3 查询查询8251A8251A接收器是否准备好,可用以下接收器是否准备好,可用以下程序段程序段:MOVMOVDX ,DX ,309H309H;309H309H:状态口地址状态口地址L L:ININ
46、AL ,DXAL ,DX;读状态字;读状态字ANDANDAL ,AL ,02H02H;查;查D D1 1(RxRDY)(RxRDY)=1?=1?JZJZL L;未准备好,继续查询;未准备好,继续查询MOVMOVDX,DX,308H308H;308H308H:数据口地址数据口地址ININAL ,DXAL ,DX ;已准备好,读取数据;已准备好,读取数据第66页/共145页例例9.4 9.4 在传输过程中要检查出错信息在传输过程中要检查出错信息MOV DX,MOV DX,309H309H;309H309H为为 状态口状态口IN AL ,DXIN AL ,DX;读状态字;读状态字TEST AL ,T
47、EST AL ,38H38H;检查;检查D D5 5D D4 4D D3 3三位三位 (FEFE、OEOE、PEPE)JNZ ERRORJNZ ERROR;若其中有一位为;若其中有一位为1 1,则出错,则出错ERRORERROR:第67页/共145页4.工作方式字和工作方式字和 工作命令字的使用工作命令字的使用n方式字、命令字、状态字之间的关系方方式式字字只只约约定定了了双双方方通通信信的的方方式式、数数据据格格式式、传传输速率等参数输速率等参数数据的发送或接收,要靠命令字来确定数据的发送或接收,要靠命令字来确定要要正正确确地地接接收收/发发送送数数据据,则则需需要要CPUCPU查查询询状状态
48、态字来进行控制字来进行控制第68页/共145页n方式字和命令字的写入8251A8251A的的工工作作方方式式字字与与操操作作命命令令字字占占有有同同一一端端口口地地址址,写写入入方方式式字字和和命命令令字字时时要要按按一一定定的的顺顺序序先先后写入后写入对对8251A8251A复复位位之之前前,最最好好先先写写3 3个个“0”0”,并并作作相相应的延时应的延时写写入入顺顺序序:写写三三个个0 0 复复位位工工作作方方式式字字工工作作命令字命令字11工作命令字工作命令字2 2 。图示第69页/共145页n8251A与CPU的信息交换方式查询方式CPUCPU先读入先读入8251A8251A状态字状
49、态字若若状状态态字字的的D D0 0(TxRDY)=1(TxRDY)=1,CPUCPU可可向向8251A8251A数数据据口口写写入入数据,完成串行数据的发送数据,完成串行数据的发送若若状状态态字字的的D D1 1(RxRDY)=1(RxRDY)=1,CPUCPU可可从从8251A8251A数数据据口口读读取取数据,完成一帧数据的接收数据,完成一帧数据的接收第70页/共145页中断方式8251A8251A没没有有单单独独的的中中断断请请求求引引脚脚,TxRDYTxRDY引引脚脚可可作作为为发发送中断求信号送中断求信号引脚引脚RxRDYRxRDY可作为接收中断请求信号;可作为接收中断请求信号;若
50、若数数据据发发送送与与接接收收均均采采用用中中断断方方式式,则则TxRDYTxRDY和和RxRDYRxRDY可可通通过过“或或门门”向向CPUCPU提提出出中中断断请请求求,CPUCPU转转入入中中断断程程序后再查询状态字,分别转向发送或接收处理程序序后再查询状态字,分别转向发送或接收处理程序第71页/共145页5.5.8251A8251A的编程举例例例9.5 9.5 设定设定8251A8251A工作于异步方式,波特率因子为工作于异步方式,波特率因子为6464,每字符每字符7 7个数据位,偶校验,个数据位,偶校验,2 2个停止位,写个停止位,写出初始化程序段,设数据口地址为出初始化程序段,设数