《微机串行接口和串行通信.ppt》由会员分享,可在线阅读,更多相关《微机串行接口和串行通信.ppt(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、并行、串行(并行、串行(I/O)接口)接口 9.1 并行并行(I/O)接口接口 9.1.1 并行接口的特点并行接口的特点 9.1.2 可编程并行接口芯片可编程并行接口芯片8255A 9.2 8255A应用举例应用举例9.3 键盘、显示器及其接口键盘、显示器及其接口 9.3.1 概述概述 9.3.2 键盘识别原理键盘识别原理 9.3.3 LED显示器及其接口显示器及其接口9.4 串行接口和串行通信串行接口和串行通信 9.4.1 串行通信的基本概念串行通信的基本概念 9.4.2 串行接口串行接口 第第 9 章章 9.4.3 串行通信的三种方式串行通信的三种方式 9.4.4 串行数据传送方式串行数据
2、传送方式 9.4.5 信号的调制与解调信号的调制与解调 9.4.6 RS-232串行通信标准串行通信标准9.5 可编程串行可编程串行I/O接口接口8251A 9.5.1 8251A的基本工作原理的基本工作原理 9.5.2 8251A的引脚特性的引脚特性 9.5.3 8251A的控制字和状态字的控制字和状态字 9.5.4 8251A的初始化编程的初始化编程 9.5.5 8251A的应用示例的应用示例 9.4 9.4 串行接口和串行通信了解:了解:n串行通信的一般概念串行通信的一般概念n n工作方式、同步方式、数据格式、物理标准工作方式、同步方式、数据格式、物理标准工作方式、同步方式、数据格式、物
3、理标准工作方式、同步方式、数据格式、物理标准n串行通信的接口标准串行通信的接口标准n nEIA RS-232CEIA RS-232Cn可编程串行异步通信接口可编程串行异步通信接口8251(UART)n n连接、编程、应用连接、编程、应用连接、编程、应用连接、编程、应用n nUART:Universal Asynchronous Receiver TransmitterUART:Universal Asynchronous Receiver Transmitter*9.4 串行接口和串行通信串行接口和串行通信9.4.1 串行通信的基本概念串行通信的基本概念u数据传送有两种方式:数据传送有两种方式
4、:u并并行行传传送送:数数据据同同时时通通过过数数据据总总线线传传送送,在在传传送送时,每一位数据占一根数据线。时,每一位数据占一根数据线。u串串行行传传送送:数数据据转转换换后后放放到到一一根根数数据据线线上上,依依次次一位一位地从低位到高位按时间先后传送。一位一位地从低位到高位按时间先后传送。u波特率波特率:每秒钟传送串行数据的数据位数:每秒钟传送串行数据的数据位数u例例如如,每每秒秒钟钟传传送送1200位位串串行行数数据据,其其波波特特率率为为1200 9.4 串行接口和串行通信串行接口和串行通信9.4.2 串行接口串行接口串行接口的主要任务串行接口的主要任务u(1)进行串进行串并转换。
5、并转换。u(2)实现串行数据格式化。实现串行数据格式化。u(3)可靠性检验。可靠性检验。u(4)实实施施接接口口与与通通信信设设备备之之间间的的联联络络控制。控制。9.4.3 串行通信的三种方式串行通信的三种方式全双工全双工站站A站站B站站A站站B站站A站站B半双工半双工单工单工示例示例9.4.4 串行数据传送方式串行数据传送方式n串串行行通通信信时时的的数数据据、控控制制和和状状态态信信息息都都使使用同一根信号线传送用同一根信号线传送n收收发发双双方方必必须须遵遵守守共共同同的的通通信信协协议议(通通信信规规程程),才才能能解解决决传传送送速速率率、信信息息格格式式、位同步、字符同步、数据校
6、验等问题位同步、字符同步、数据校验等问题n串串行行异异步步通通信信以以字字符符为为单单位位进进行行传传输输,其其通信协议是通信协议是起止式异步通信协议起止式异步通信协议1.异步通信异步通信起止式异步通信协议起起始始位位每每个个字字符符开开始始传传送送的的标标志志,起始位采用逻辑起始位采用逻辑0电平电平起始位起始位校验位校验位停止位停止位空闲位空闲位数据位数据位低位低位高位高位字符字符0/10/1 0/10/10/10/10/10/11 10 01 11 11 1数数据据位位数数据据位位紧紧跟跟着着起起始始位位传传送送。由由58个二进制位组成,低位先传送个二进制位组成,低位先传送校校验验位位用用
7、于于校校验验是是否否传传送送正正确确;可可选择奇检验、偶校验或不传送校验位选择奇检验、偶校验或不传送校验位停停止止位位表表示示该该字字符符传传送送结结束束。停停止止位采用逻辑位采用逻辑1电平,可选择电平,可选择1、1.5或或2位位空空闲闲位位传传送送字字符符之之间间的的逻逻辑辑1电电平平,表示没有进行传送表示没有进行传送数据传输速率n数据传输速率也称比特率(数据传输速率也称比特率(Bit Rate)n每秒传输的二进制位数每秒传输的二进制位数bpsn字字符符中中每每个个二二进进制制位位持持续续的的时时间间长长度度都都一一样样,为为数数据据传输速率的倒数传输速率的倒数n当当进进行行二二进进制制数数
8、码码传传输输,且且每每位位时时间间长长度度相相等等时时,比特率还等于波特率(比特率还等于波特率(Baud Rate)n过过去去,串串行行异异步步通通信信的的数数据据传传输输速速率率限限制制在在50 bps到到9600 bps之之间间。现现在在,可可以以达达到到115200 bps或更高或更高2.同步通信n以以一一个个数数据据块块(帧帧)为为传传输输单单位位,每每个个数数据据块块附附加加1个或个或2个同步字符,最后以校验字符结束个同步字符,最后以校验字符结束n同同步步通通信信的的数数据据传传输输效效率率和和传传输输速速率率较较高高,但但硬硬件电路比较复杂件电路比较复杂n串行同步通信主要应用在网络
9、当中串行同步通信主要应用在网络当中n最常使用高级数据链路控制协议最常使用高级数据链路控制协议HDLC同步字符同步字符数据数据数据数据数据数据校验字符校验字符9.4.5 信号的调制与调器n调制(调制(Modulating)n把数字信号转换为电话线路传送的模拟信号把数字信号转换为电话线路传送的模拟信号n解调(解调(Demodulating)n将电话线路的模拟信号转换为数字信号将电话线路的模拟信号转换为数字信号n调制解调器调制解调器MODEMn具有调制和解调功能的器件合制在一个装置具有调制和解调功能的器件合制在一个装置示例示例9.4.6 RS-232C串行通信标准n美国电子工业协会美国电子工业协会E
10、IA制定的制定的通用标准串行接口通用标准串行接口n1962年公布,年公布,1969年修订年修订n1987年年1月正式改名为月正式改名为EIA-232Dn设计目的是用于连接调制解调器设计目的是用于连接调制解调器n现现已已成成为为数数据据终终端端设设备备DTE(例例如如计计算算机机)与与数数据通信设备据通信设备DCE(例如调制解调器)的标准接口(例如调制解调器)的标准接口n可实现远距离通信,也可近距离连接两台微机可实现远距离通信,也可近距离连接两台微机n属于网络层次结构中的最低层:物理层属于网络层次结构中的最低层:物理层9.4.6 RS-232C串行通信标准n232C接口标准使用一个接口标准使用一
11、个25针连接器针连接器n绝绝大大多多数数设设备备只只使使用用其其中中9个个信信号号,所所以以就有了就有了9针连接器针连接器n232C包括两个信道:主信道和次信道包括两个信道:主信道和次信道n次次信信道道为为辅辅助助串串行行通通道道提提供供数数据据控控制制和和通通道道,但但其其传传输输速速率率比比主主信信道道要要低低得得多多,其其他跟主信道相同,通常较少使用他跟主信道相同,通常较少使用RS-232C的引脚(1)nTxD:发送数据发送数据n串行数据的发送端串行数据的发送端nRxD:接收数据接收数据n串行数据的接收端串行数据的接收端RS-232C的引脚(2)nRTS:请求发送:请求发送n当当数数据据
12、终终端端设设备备准准备备好好送送出出数数据据时时,就就发发出出有有效效的的RTS信号,用于通知数据通信设备准备接收数据信号,用于通知数据通信设备准备接收数据nCTS:清除发送(允许发送):清除发送(允许发送)n当当数数据据通通信信设设备备已已准准备备好好接接收收数数据据终终端端设设备备的的传传送送数数据时,发出据时,发出CTS有效信号来响应有效信号来响应RTS信号信号nRTS和和CTS是是数数据据终终端端设设备备与与数数据据通通信信设设备备间间一一对用于数据发送的联络信号对用于数据发送的联络信号RS-232C的引脚(3)nDTR:数据终端准备好数据终端准备好n通通常常当当数数据据终终端端设设备
13、备一一加加电电,该该信信号号就就有有效效,表表明明数数据终端设备准备就绪据终端设备准备就绪nDSR:数据装置准备好数据装置准备好n通通常常表表示示数数据据通通信信设设备备(即即数数据据装装置置)已已接接通通电电源源连连到通信线路上,并处在数据传输方式到通信线路上,并处在数据传输方式nDTR和和DSR也也可可用用做做数数据据终终端端设设备备与与数数据据通通信信设设备间的联络信号,例如应答数据接收备间的联络信号,例如应答数据接收RS-232C的引脚(4)nGND:信号地信号地n为所有的信号提供一个公共的参考电平为所有的信号提供一个公共的参考电平nCD:载波检测(载波检测(DCD)n当当本本地地调调
14、制制解解调调器器接接收收到到来来自自对对方方的的载载波波信信号号时,该引脚向数据终端设备提供有效信号时,该引脚向数据终端设备提供有效信号nRI:振铃指示振铃指示n当当调调制制解解调调器器接接收收到到对对方方的的拨拨号号信信号号期期间间,该该引脚信号作为电话铃响的指示、保持有效引脚信号作为电话铃响的指示、保持有效RS-232C的引脚(5)n保护地保护地(机壳地)(机壳地)n起起屏屏蔽蔽保保护护作作用用的的接接地地端端,一一般般应应参参照照设设备备的的使用规定,连接到设备的外壳或大地使用规定,连接到设备的外壳或大地nTxC:发送器时钟:发送器时钟n控制数据终端发送串行数据的时钟信号控制数据终端发送
15、串行数据的时钟信号nRxC:接收器时钟:接收器时钟n控制数据终端接收串行数据的时钟信号控制数据终端接收串行数据的时钟信号 RS-232C的连接n微微机机利利用用232C接接口口连连接接调调制制解解调调器器,用用于于实现通过电话线路的远距离通信实现通过电话线路的远距离通信n微微机机利利用用232C接接口口直直接接连连接接进进行行短短距距离离通通信信。这这种种连连接接不不使使用用调调制制解解调调器器,所所以以被被称为零调制解调器(称为零调制解调器(Null Modem)连接)连接连接调制解调器电话线电话线MODEM微机微机2345678202223456782022MODEM23456782022
16、数据装置准备好数据装置准备好DSRDSR数据终端准备好数据终端准备好DTRDTR发送数据发送数据TxDTxD接收数据接收数据RxDRxD请求发送请求发送RTSRTS允许发送允许发送CTSCTS信号地信号地GNDGND载波检测载波检测CDCD振铃指示振铃指示RIRI微机微机23456782022不使用联络信号的3线相连方式微机微机TxDRxDGND微机微机为了交换信息,为了交换信息,TxD和和RxD应当交叉连接应当交叉连接程序中不必使程序中不必使RTS和和DTR有效有效也不应检测也不应检测CTS和和DSR是否有效是否有效“伪”使用联络信号的3线相连方式RTS和和CTS各自互接,各自互接,DTR和
17、和DSR各自互接各自互接表明请求传送总是允许、数据装置总准备好表明请求传送总是允许、数据装置总准备好微机微机DSRDTRTxDRxDRTSCTSGND微机微机使用联络信号的多线相连方式通信比较可靠通信比较可靠所用连线较多,不如前者经济所用连线较多,不如前者经济微机微机DSRDTRTxDRxDRTSCTSGND微机微机 RS-232C的电气特性n232C接口采用接口采用EIA电平电平n高电平为高电平为3V15Vn低电平为低电平为3V15Vn实际常用实际常用12V或或15Vn标准标准TTL电平电平n高电平:高电平:2.4V5Vn低电平:低电平:0V0.4V相互转换相互转换9.5 可编程串行I/O接
18、口8251An串串行行传传输输,需需要要并并行行到到串串行行和和串串行行到到并并行行的的转转换换,并并按按照照传传输输协协议议发发送送和和接接收收每每个个字符(或数据块)字符(或数据块)n这些工作可由软件实现,也可用硬件实现这些工作可由软件实现,也可用硬件实现n通通用用异异步步接接收收发发送送器器UART是是串串行行异异步步通通信信的的接接口口电电路路芯芯片片,IBM PC/XT机机的的UART芯片是芯片是INS 8250,后来使用,后来使用NS16550n本节讲授用于同步和异步串行通信的本节讲授用于同步和异步串行通信的82519.5.1 8251A的基本工作原理的基本工作原理可可以以实实现现
19、异异步步通通讯讯方方式式和和同同步步通通讯讯方方式式。波特率:同步方式下:波特率:同步方式下:0-64Kbps;异步方式下:异步方式下:0-19.2Kbps。同同步步方方式式下下,每每字字符符为为5,6,7,8位位,能能自动检测同步字符,自动添加奇偶校验。自动检测同步字符,自动添加奇偶校验。异异步步方方式式下下,每每字字符符可可为为5,6,7,8位位,自动增加起始位、停止位和校验位。自动增加起始位、停止位和校验位。数据总线数据总线缓冲器缓冲器读读/写写控制逻辑电路控制逻辑电路调制调制/解调解调控制电路控制电路接收控制电路接收控制电路串并串并转换转换发送发送缓冲器缓冲器缓冲缓冲器器并串并串转换转
20、换发送控制电路发送控制电路RESETCLKC/DC/DRDWRCSDSRDTRCTSRTSD7-D0内内部部总总线线TXDRXDTXEMPTYTXCRXRDYRXCSYNDETTXRDY发发送送器器接接收收器器图图 9-29 8251A 内部结构框图内部结构框图接接收收9.5.1 8251A的基本工作原理的基本工作原理8251的引脚信号TxRDY:告诉告诉CPU,8251已准备好发送,已准备好发送,CPU可以为其提供需要发送的字符。可以为其提供需要发送的字符。CPU可以可以查询该信号,或把该信号作为中断请查询该信号,或把该信号作为中断请求信号求信号。RxRDY:通知通知CPU,8251已从外部
21、设备收已从外部设备收到一个字符,等待到一个字符,等待CPU读取。读取。CPU可以可以查查询该信号,或把该信号作为中断请求信号询该信号,或把该信号作为中断请求信号。8251的引脚信号(续)TxE:通知通知CPU发送移位寄存器空。此时,发送移位寄存器空。此时,在状态寄存器的在状态寄存器的TxE位置位置1。CPU可以查询可以查询TxE信号或状态寄存器的信号或状态寄存器的TxE位。位。C/D*:该信号一般连至地址线该信号一般连至地址线A0,用于选,用于选择控制端口择控制端口/数据端口。数据输入输出寄存数据端口。数据输入输出寄存器合用一个端口(为器合用一个端口(为0,偶地址),控制寄,偶地址),控制寄存
22、器与状态寄存器合用一个端口(为存器与状态寄存器合用一个端口(为1,奇,奇地址)。地址)。8251的引脚信号(续)SYNDET:同步检测信号,只用于同步方式同步检测信号,只用于同步方式TxC、RxC:8251没没有有内内置置的的波波特特率率发发生生器器,必必须须由由外外部部产产生生建建立立波波特特率率的的时时钟钟信信号号,TxC、RxC通常与通常与8253连接连接端口对应的操作 C/D*RD*WR*CS*功能功能 0 0 1 0 0 1 0 0 1 0 1 0 1 1 0 0 CPU从从8251输入数据输入数据CPU向向8251输出数据输出数据CPU读取读取8251的状态的状态CPU往往8251
23、写写入入控控制制命命令令2 8251的工作方式n异步串行数据发送异步串行数据发送n异步串行数据接收异步串行数据接收n同步串行数据发送同步串行数据发送n同步串行数据接收同步串行数据接收1.异步串行数据的发送并行数据并行数据加入起始位、加入起始位、校验位、停止位校验位、停止位串行数据串行数据CPU发送缓冲寄存器发送缓冲寄存器发送移位寄存器发送移位寄存器同步控制同步控制8251TxD0/10/1 0/10/10/10/10/10/1在内部控制位在内部控制位TxENTxEN1 1、CTS*CTS*为为0 0时可以发送时可以发送2.起始位的检测起始检测起始检测确定已检测到起始位确定已检测到起始位采样数据
24、采样数据起起 始始 位位时钟时钟(RCLK)数据线数据线(SIN)T16 T16 T8 T数据接收时钟频率是数据传输频率的数据接收时钟频率是数据传输频率的16倍倍正确识别起始位,防止因干扰引起的误识别正确识别起始位,防止因干扰引起的误识别3.异步串行数据的接收并行数据并行数据检测接收错误检测接收错误删除起始位、删除起始位、校验位、停止位校验位、停止位串行数据串行数据CPU接收缓冲寄存器接收缓冲寄存器接收移位寄存器接收移位寄存器同步控制同步控制8251RxD0/10/1 0/10/10/10/10/10/1双缓冲寄存器结构双缓冲寄存器结构保证数据的连续接收保证数据的连续接收4.接收错误的处理n奇
25、偶错误奇偶错误PE(Parity Error)n若接收到的字符的若接收到的字符的“1”的个数不符合奇偶校验要求的个数不符合奇偶校验要求n帧错误帧错误FE(Frame Error)n若接收到的字符格式不符合规定(如缺少停止位)若接收到的字符格式不符合规定(如缺少停止位)n溢出错误溢出错误OE(Overrun Error)n若若接接收收移移位位寄寄存存器器接接收收到到一一个个数数据据,并并送送至至输输入入缓缓冲冲器时,器时,CPU还未取走前一个数据,就会出现数据溢出还未取走前一个数据,就会出现数据溢出n若接收缓冲器的级数多,则溢出错误的几率就少若接收缓冲器的级数多,则溢出错误的几率就少5.同步串行
26、发送数据CPU发送缓冲寄存器发送缓冲寄存器发送移位寄存器发送移位寄存器同步控制同步控制8251TxD加入同步字符、加入同步字符、校验位校验位同步字符同步字符数据数据并行数据并行数据串行数据串行数据6.同步串行接收数据CPU接收缓冲寄存器接收缓冲寄存器接收移位寄存器接收移位寄存器同步字符寄存器同步字符寄存器8251RxD比较器比较器SYNDET(输出同步信号)(输出同步信号)并行数据并行数据串行数据串行数据0/10/1 0/10/10/10/10/10/10/10/10/10/13 8251的寄存器n8251内内部部有有模模式式寄寄存存器器、控控制制寄寄存存器器、状状态态寄寄存存器器以以及及同同
27、步步字字符符寄寄存存器器。用用奇奇地地址址(C/D*=1)访问。)访问。n有有两两个个数数据据寄寄存存器器:数数据据输输入入寄寄存存器器和和数数据输出寄存器,用偶地址(据输出寄存器,用偶地址(C/D*=0)访问。)访问。模式寄存器(异步)S2S1EPPENL2L1B2B1D7D6D5D4D3D2D1D0S2S1停止位的数目:停止位的数目:00无意义无意义011位停止位位停止位101位半停止位位半停止位112位停止位位停止位 奇偶校验:奇偶校验:PEN 1有校验有校验 0 无校验无校验EP 0 奇校验奇校验 1 偶校验偶校验数据位的数目:数据位的数目:005位位016位位107位位118位位波特
28、率因子:波特率因子:00同步模式同步模式01波特率因子为波特率因子为110波特率因子为波特率因子为1611波特率因子为波特率因子为64模式寄存器(同步)模式寄存器(同步)SCSESDEPPENL2L100D7D6D5D4D3D2D1D0SCS同步字符数:同步字符数:0 2个同步字符个同步字符 1 1个同步字符个同步字符 ESD同步方式:同步方式:0 内同步内同步 1 外同步外同步 奇偶校验:奇偶校验:PEN 1有校验有校验 0 无校验无校验EP 0 奇校验奇校验 1 偶校验偶校验数据位的数目:数据位的数目:005位位016位位107位位118位位控制寄存器EHTRRTSERSBRKRxEDTR
29、TxEND7D6D5D4D3D2D1D0搜索同搜索同步字符步字符进行内进行内部复位部复位使使RTS*输出低输出低电平电平接收接收允许允许发送发送允许允许错误标错误标志复位志复位间断间断发送发送使使DTR*输出低输出低电平电平状态寄存器状态寄存器DSRSYNDETFEOEPETxERxRDYTxRDYD7 D6 D5D4D3D2D1D0DSR引引脚为低脚为低电平电平与与SYNDET引脚电引脚电平相同平相同帧格式帧格式错误错误和和TxE引引脚电平脚电平相同相同数据输出数据输出缓冲区空缓冲区空超越错超越错误误奇偶奇偶错误错误和和RxRDY引脚相同引脚相同 9.5.4 8251A初始化流程例1 异步模
30、式下的初始化程序举例假设假设8251的两个端口地址分别是的两个端口地址分别是50H和和52HMOVAL,0FAHOUT52H,AL;设设置置模模式式字字,异异步步模模式式,波波特特率率因因子子16,7位位数据位,偶校验,数据位,偶校验,2个停止位个停止位MOVAL,37HOUT52H,37H;设置控制字,允许发送,允许接收;设置控制字,允许发送,允许接收模式字模式字控制字控制字 例2 同步模式下的初始化程序举例MOV AL,38H;2个同步字符,偶校验,个同步字符,偶校验,7位位OUT 52H,ALMOV AL,16H;16H为同步字符为同步字符OUT 52H,ALOUT 52H,ALMOV
31、AL,97H;搜索同步字符,双工方式;搜索同步字符,双工方式OUT 52H,AL模式字模式字控制字控制字例3 利用状态字进行编程的举例n用用查查询询方方式式串串行行输输入入80个个字字符符,并并把把字字符存放到缓冲区符存放到缓冲区BUFF中中n8251初始化初始化n查询查询RxRDY状态位状态位n考虑出错情况考虑出错情况8251软复位MOV CX,3XOR AL,ALMOV DX,CNTPORTAGA:OUT DX,ALCALL DELAY LOOP AGAMOV AL,40H;软复位命令;软复位命令 OUT DX,ALCALL DELAY查询式串行输入初始化MOV AL,5AHOUT DX,
32、AL;7位数据,位数据,1位停止位,奇校验,波特率因子位停止位,奇校验,波特率因子16 CALL DELAYMOV AL,17HOUT DX,AL;清除错误标志,全双工,清除错误标志,全双工,DTR有效有效CALL DELAY查询式串行输入循环初始化MOV AX,DATAMOV DS,AXLEA BX,BUFFMOV CX,80查询式串行输入查询状态MOV DX,CNTPORTSTATUS:IN AL,DXTEST AL,02H;RxRDY1?JZ STATUSMOV DX,DATAPORTIN AL,DXMOV BX,ALINC BX查询式串行输入判断错误MOV DX,CNTPORTIN A
33、L,DXTEST AL,38H;有没有错误有没有错误JNZ ERRLOOP STATUSJMP EXITERR:EXIT:查询式串行输入对于对于8251A异步通信初始化程序段如下异步通信初始化程序段如下n若若8251A采采用用异异步步通通信信方方式式,设设定定字字符符7位位数数据据、1位位偶偶校校验验、2位停止位,倍频系数位停止位,倍频系数(波特率因子波特率因子)为为16。方式控制字为。方式控制字为FAH。n命命令令控控制制字字37H使使TxEN为为1,发发送送允允许许:使使请请求求发发送送处处于于有有效效电电平平;使使RxEN为为1,让让接接收收也也允允许许;使使数数据据终终端端准准备备好好
34、信信号号处处于于有有效效电电平平,通通知知调调制制解解调调器器,CPU已已经经准准备备就就绪绪;清清除除了了出出错标志等。错标志等。程序实现:程序实现:MOV AL,OFAH;设置方式字;设置方式字 OUT 52H,AL MOV AL,37H;设置命令字,启动发送;设置命令字,启动发送 OUT 52H,AL对于对于8251A同步通信初始化程序段如下同步通信初始化程序段如下n若若8251A采采用用同同步步通通信信方方式式,“奇奇”端端口口地地址址仍仍为为52H。8251A初初始始化化程程序序往往52H端口中设置的依次为方式字、同步字符和命令字。端口中设置的依次为方式字、同步字符和命令字。n方方式
35、式控控制制字字为为38H。它它设设置置了了内内同同步步方方式式、2个个同同步步字字符符、7位位数数据据、偶偶校校验验。2个同步字符可以相同,也可以不同,这里均为个同步字符可以相同,也可以不同,这里均为16H。n命命令令控控制制字字为为97H。它它使使8251A的的发发送送器器、接接收收器器启启动动;开开始始对对同同步步字字符符进进行行检检索索;CPU当当前前已已经经准准备备好好进进行行数数据据传传输输;使使状状态态寄寄存存器器中中的的3个个出出错错标标志志复位等。复位等。程序实现:程序实现:MOV AL,38H;设置方式字设置方式字 OUT 52H,AL MOV AL,16H;2个同步字符均为
36、个同步字符均为16H OUT 52H,AL OUT 52H,AL MOV AL,97H;设置命令字,启动发送器、接收器设置命令字,启动发送器、接收器 OUT 52H,AL用8251A作为串行接口的线路图教材教材291页例中页例中 8251A的初始化程序的初始化程序XOR AL,ALOUT 0DAH,ALCALL DELAY;调延时子程序调延时子程序 OUT 0DAH,ALCALL DELAYOUT 0DAH,ALCALL DELAYMOV AL,40H;设置复位命令字;设置复位命令字 OUT 0DAH,ALCALL DELAYMOV AL,4EH;设置方式字,异步、设置方式字,异步、8位数据、
37、波特率因子位数据、波特率因子16OUT 0DAH,ALCALL DELAYMOV AL,27H;设置命令字,启动发送器、接收器;设置命令字,启动发送器、接收器 OUT 0DAH,ALCALL DELAY假如要向外输出的假如要向外输出的1个字符已放在个字符已放在AH寄存器中。若采用查寄存器中。若采用查询式输出,程序先对状态口进行测试,判断询式输出,程序先对状态口进行测试,判断TXRDY状态位状态位是否有效,若是否有效,若TXRDY为为1,则说明当前数据输出缓冲器为,则说明当前数据输出缓冲器为空,空,CPU可以向可以向8251A输出输出1个字符。个字符。程序实现:程序实现:NEXT:IN AL,0DAH TEST AL,01H JZ NEXT MOV AL,AH OUT 0D8H,AL 教材:教材:第第293页页 题题9-4,题,题9-5,题,题9-6,题,题9-7 题题9-8,题,题9-9,题,题9-10 重要练习题重要练习题重要练习题重要练习题思考题与习题思考题与习题思考题与习题思考题与习题第第第第9 9章章章章 并行、串行(并行、串行(并行、串行(并行、串行(I/OI/O)接口)接口)接口)接口 教学进程教学进程教学进程教学进程
限制150内