第七章常用数字接口电路chap7_第1页
第七章常用数字接口电路chap7_第2页
第七章常用数字接口电路chap7_第3页
第七章常用数字接口电路chap7_第4页
第七章常用数字接口电路chap7_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

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

文档简介

第7章

常用数字接口电路1主要内容:掌握二种可编程接口芯片的应用了解串行通信的一般概念

27.1接口电路概述CPU与外设之间信息交换的通道信息缓冲、信息变换、电平转换、联络控制分类:8086系统中最常用的数字接口电路芯片:8253、8255、8250功能传送方式传送的信息类型输入接口并行接口数字量的输入/输出接口输出接口串行接口模拟量的输入/输出接口37.2可编程定时/计数器8253掌握:引线功能及计数启动方法6种工作方式及其输出波形8253的使用:芯片与系统的连接芯片的初始化编程4定时/计数器的用途可以实现定时与计数两个功能,可用于系统时钟DRAM刷新定时定时采样实时控制脉冲的计数

。。。5如何实现定时?软件方法:用一段程序实现延时利用程序循环延迟指定的时间缺点:CPU占用率?延时精度?兼容?硬件方法:定时/计数器电路利用脉冲计数在设定的时间输出定时信号●8253是一种硬件定时/计数器芯片6一、外部引线及内部结构8253概貌3个16位的定时/计数器(通道)24引脚双列直插式最高计数频率2MHzTTL电平兼容单电源+5V供电7外部引线及内部结构DBD7-D08253A1A0WRRDCS通道2通道1通道0CLK0GATE0OUT0CLK1GATE1OUT1CLK1GATE1OUT1A1A0IOWIOR片选信号8外部引线及内部结构连接系统端的主要引线:D7~D0CSRDWRA1,A0

用于选择四个编址部件之一引线结构A1A0选择00计数通道001计数通道110计数通道211控制寄存器9外部引线及内部结构计数通道的主要引线(每通道均相同):CLKn

时钟脉冲输入,计数器的计时基准。GATEn

门控信号输入,控制计数器的启停。OUTn

计数器输出信号,不同工作方式下产生不同波形。(n=0~2)1011编程结构—程序员的观点计数器(3个)——包括控制寄存器——存放控制命令字(只写)占用4个地址—3个计数器,1个控制寄存器16位初值寄存器16位计数寄存器(减法计数器)12定时/计数的工作过程

1.设置8253的工作方式2.设置计数初值到初值寄存器

3.第一个CLK信号使初值寄存器的内容置入计数寄存器4.以后每来一个CLK信号,计数寄存器减15.减到0时,OUT端输出一特殊波形的信号注:以上计数过程中还受到GATE信号的控制13二、计数启动方式软件启动过程硬件启动过程GATE端保持为高电平写入计数初值后的第2个CLK脉冲的下降沿开始计数GATE端有一个上升沿对应CLK脉冲的下降沿开始计数程序指令启动————软件启动外部电路信号启动——硬件启动14三、工作方式方式0——计数结束中断方式1——可重复触发的单稳态触发器方式2——频率发生器方式3——方波发生器方式4——软件触发选通方式5——硬件触发选通15工作方式方式0方式1

软件启动,不自动重复计数。装入初值后OUT端变低电平,计数结束OUT输出高电平。硬件启动,不自动重复计数。装入初值后OUT端变高电平,计数开始OUT端变为低电平,计数结束后又变高。工作波形(计数结束中断)(单稳态触发器)16工作方式方式2方式3软、硬件启动,自动重复计数。装入初值后OUT端变高电平,计数到最后一个CLK时OUT输出负脉冲,并连续重复此过程。软、硬件启动,自动重复计数。装入初值后OUT端变高电平,然后OUT连续输出对称方波:工作波形(频率发生器)(方波发生器)前N/2或(N+1)/2个CLK,OUT为高,后N/2或(N-1)/2个CLK,OUT为低。17工作方式方式4方式5

软件启动,不自动重复计数。装入初值后输出端变高电平,计数结束输出一个CLK宽度的负脉冲硬件启动,不自动重复计数。OUT端波形与方式4相同(软件触发选通)(硬件触发选通)工作波形18各种工作方式特点方式0(计数结束中断)计数过程中,GATE端应保持高电平。每写入一次初值计数一个周期,然后停止计数。OUT端输出是一个约(N+1)TCLK宽度的负脉冲。计数过程中可随时修改初值重新开始计数。方式1(单稳态触发器)门控信号GATE端的跳变触发计数,可重复触发。若下一次GATE上升沿提前到达,则OUT端负脉冲拉宽为两次计数过程之和。计数过程中写入新初值不影响本次计数。19各种工作方式特点方式2(频率发生器)GATE为计数的控制信号:GATE变低计数停止,再变高时的下一个CLK下降沿,从初值开始重新计数。每个计数周期结束时(减到1时),OUT端输出一个TCLK宽度的负脉冲。计数过程自动重复进行。计数过程中修改初值不影响本轮计数过程。方式3(方波发生器)OUT输出方波,前半周期为高,后半周期为低。计数过程中修改初值不影响本半轮计数过程。其余的与方式2类似。20各种工作方式特点方式4(软件触发选通)计数过程中,GATE端应保持高电平。每写入一次初值,计数一个周期,然后停止计数。每个计数周期结束时(减到0时),OUT端输出一个TCLK宽度的负脉冲。计数过程中修改初值不影响本轮计数过程。方式5(硬件触发选通)写入初值时,GATE端应保持低电平。GATE每出现一次正脉冲,计数一个周期,然后停止计数。每个计数周期结束时(减到0时),OUT端输出一个TCLK宽度的负脉冲。计数过程中修改初值不影响本轮计数过程。21四、控制字用于确定各计数器的工作方式。8253必须先初始化才能正常工作。每个计数器都必须初始化一次。CPU通过OUT指令把控制字写入控制寄存器。格式22五、8253的应用与系统的连接设置工作方式置计数初值编程23与系统的连接示意图CLKGATEOUTD0~D7WRRDA1A0CSDBIOWIORA1A0译码器高位地址A15-A28253共三组8253占用4个接口地址:

计数器0

计数器1

计数器2

控制寄存器(决定8253的基地址)24初始化程序流程写控制字写计数值低8位写计数值高8位*非必须写入顺序:可按计数器分别写入控制字和初值。也可先写所有计数器控制字,再写入它们的初值258253应用举例采用8253作定时/计数器,其接口地址为0120H~0123H。输入8253的时钟频率为2MHz。计数器0:每10ms输出1个CLK脉冲宽的负脉冲计数器1:产生10KHz的连续方波信号计数器2:启动计数5ms后OUT输出高电平。画线路连接图,并编写初始化程序。268253应用举例(续)确定计数初值:CNT0:10ms/0.5us=20000CNT1:2MHz/10KHz=200CNT2:5ms/0.5us=10000确定控制字:

CNT0:方式2,16位计数值00110100CNT1:方式3,低8位计数值01010110CNT2:方式0,16位计数值10110000278253应用举例(续)CLK0GATE0OUT1D0~D7WRRDA1A0CSDBIOWIORA1A0译码器8253CLK2GATE1GATE2+5VCLK12MHzOUT0OUT2?线路连接图:288253应用举例初始化程序CNT0:MOVDX,0123HMOVAL,34HOUTDX,ALMOVDX,0120HMOVAX,20000OUTDX,ALMOVAL,AHOUTDX,ALCNT1:……CNT2:……29*如何读出当前计数值第1种方法——在计数过程中读计数值先锁存当前计数值,再用两条输入指令将16位计数值读出。第2种方法——停止计数器再读用GATE信号使计数器停止,再规定RL1和RL0的读写格式,然后读出。30*扩展定时/计数范围

当定时长度不够时,可把2个或3个计数通道串联起来使用,甚至可把多个8253串联起来使用。例如:CLK频率为1MHz,要求在OUT1端产生频率1Hz的脉冲。这时可将计数器0、1串联,工作方式都均为方式3,计数初值均为1000。连接方法见下页。31扩展定时/计数范围8253OUT1GATE1CLK1OUT0GATE0CLK0+5V+5V1MHz1KHz1Hz328253小结包含3个16位计数器通道4个编址部件:CNT0/1/2和控制寄存器每个计数器通道工作前必须初始化:控制字和计数初值6种工作方式每种工作方式:启动方式、输出波形、是否可重复计数等各不相同33§7.3并行接口8255特点:含3个独立的8位并行输入/输出端口,各端口均具有数据的控制和锁存能力可通过编程设置各端口的工作方式和数据传送方向(入/出/双向)。3435引线(续)连接系统端的主要引线:D0~D7CSRDWRA0,A1

RESET——复位信号,接系统总线的RESETA1A0选择00端口A01端口B10端口C11控制寄存器36引线(续)连接外设端的引脚:PA0~PA7PB0~PB7PC0~PC7分别对应A、B、C三个8位输入/输出端口三个端口可通过编程分别指定为输入或输出口。其中,C口即可用作独立的输入/输出口,也可用作A、B口的控制信号输出或状态信号输入。37二、结构A组B组

端口A端口C的高4位端口B端口C的低4位388255与系统的连接示意图D0~D7WRRDA1A0CSDBIOWIORA1A0译码器8255A口B口C口D0~D7外设A15~A2系统总线39三、8255工作方式基本输入/输出方式(方式0)选通工作方式(方式1)双向传送方式(方式2)(仅A口)某端口工作于哪一种方式,可通过软件编程来指定。即向8255写入方式控制字来决定其工作方式,见下页。40方式控制字及位控字可以利用软件编程确定8255的3个端口工作于何种方式下;8255的C端口可以按位操作。当其工作于方式0下且作为输出口时,对于那些作为输出的位需要设置初始状态(1/0)。41方式控制字与位控字格式控制字——确定3个端口的工作方式位控字——确定C口某一位的初始状态,或用于设置INTE位(方式1,2)。42工作方式08255相当于三个独立的8位简单接口。各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出。C端口即可以是一个8位的简单接口,也可以分为两个独立的4位端口。设置为输出口时有锁存能力,设置为输入口时无锁存能力。43方式0的应用:用于连接简单外设。适用于:无条件输入输出方式。查询输入输出方式:把A、B口作为8位数据的输入或输出口,C口的高/低4位分别定义为A、B口的控制位和状态位。44工作方式1利用一组选通控制信号控制A端口和B端口的数据输入输出。A、B口作输入或输出口,C口的部分位固定用作A、B口的选通控制信号。A口、B口在作为输入和输出时的选通信号不同。输入输出45C口的信号功能(方式1输入)STB#——选通信号。它将外设数据送入8255的输入锁存器。IBF——输入锁存器满。通知外设不能送下一个数据。此信号由STB的前沿产生。CPU用IN指令取走数据后,此信号被清除。INTR——中断请求。STB#的后沿产生,用于中断CPU,让CPU读走输入锁存器中的数据。INTE——中断允许位,是否允许发出INTR请求。INTE=1和IBF为高电平时,允许发出INTR请求。46C口的信号功能(方式1输出)OBF#——通知外设取走数据。ACK#——外设响应信号,表示已从数据端口取走数据。此信号使OBF变高。INTR——ACK#上升沿产生,通知CPU输出下一个数据(通常接到8259)。INTE——中断允许位,INTE=1和OBF#为高电平时,允许产生INTR信号。47注意:INTE的状态可利用C口的位控方式来设置:输入:A口的INTE:写入PC4B口的INTE:写入PC2输出:A口的INTE:写入PC6B口的INTE:写入PC2例如:方式1输入允许A口中断,则应按如下方法设置INTEA。

MOVDX,控制寄存器地址MOVAL,0xxx1001B;1=允许中断,0=禁止中断

OUTDX,AL48方式1的应用:主要用于中断控制方式下的输入输出。C口除部分位用作选通信号外,其余位可工作在方式0下,作为输入或输出线。特别是A、B均为方式1时仅使用C口的6条线,余下二条线可作为单独的输入输出线,用程序指定其数据传送方向。49工作方式2双向方式——既是输入口,又是输出口。利用C口的5条线提供传输联络信号。类似于A口方式1下输入和输出的组合。只有A口可工作在方式2下。INTE1为PC.bit6,INTE2为PC.bit4。50方式2的应用:可用于中断控制输入输出方式。当A口工作于方式2时,B口可工作于方式1(此时C口的剩余位都用作B口选通控制线);B口也可工作于方式0(此时C口的剩余位也只能用作方式0下的输入输出线)。8255工作方式小结51四、8255芯片的应用芯片与系统的连接芯片的初始化相应的控制程序例7-3528255应用举例1

利用8255实现开关检测和继电器控制电路;当开关闭合时,使继电器通电动作;开关断开时,继电器不动作;系统每隔100ms检测一次开关状态,实现相应的继电器控制;初始状态下继电器不动作。53CSA0A1WRRDDBPA0PA7•••PB0PB7•••+5V•••+12VK继电器384H~387H388H~38BHCSA0A1OUT1CLK12MHzCLK0OUT08259APICWRRDDB82538255中断请求信号INTRQ1R1R2D154题目分析:使8255的A端口和B端口均工作于方式0;8253计数器0和计数器1均工作于方式3,利用OUT0的输出作为计数器1的时钟信号,其输出频率为2KHz,OUT1输出频率为10Hz(周期100ms);OUT1作为中断信号,每100ms产生一次中断;CPU响应中断后检测开关状态,控制继电器的动作;8253两个计数器的计数初值分别为:

CNT0:2MHz/2KHz=1000(16位)CNT1:100ms/0.5ms=200(8位)558255的初始化MOVDX,387HMOVAL,82H

;100

0

0

01

0OUTDX,ALXORAL,AL;A口输出全0MOVDX,384HOUTDX,AL56578255的控制程序(中断处理)(中断初始化程序略)8253中断服务程序中的8255控制程序段如下:……MOVDX,385H;PB口地址 INAL,DX;读PB0状态

NOTAL;变反

MOVDX,384H;输出到继电器OUTDX,AL……588255应用举例2习题P342,第12题(译码器输入改为A15-A2):定时采集开关状态,并显示到数码管上59§7.4可编程串行通信接口了解:串行通信的一般概念工作方式、同步方式、数据格式、物理标准串行通信的接口标准EIARS-232C可编程串行异步通信接口8250(UART)连接、编程、应用UART:UniversalAsynchronousReceiverTransmitter*607.4.1串行通信基本概念串行通信:

●每个时间单位仅传送一位信息;

●每个字符(字节)的各位依次传送;

●字符之间的间隔不定。优点:

●传输线少,成本低,传输距离远611.串行通信工作方式单工通信——只能由一方发送,例:广播半双工通信——某一时刻只能由一方发送,例:对讲机全双工通信——双方可同时传输,例:电话同步通信——双方对每一位的收发时序完全一致,统一时钟异步通信——收发双方时钟不统一62单工/双工操作发送器接收器发送器/接收器发送器/接收器发送器/接收器发送器/接收器单工方式:半双工方式:全双工方式:A站B站63电话网络-模拟信号,计算机-数字信号。远距离通信时需要通过普通电话网络传输数字信号:频带宽电话网络:频带窄要使数字信号在电话网络上传输,需要进行信号变换—把数字信号承载到模拟信号上传输,这个模拟信号称为载波信号。调制—把数字信号承载到载波信号上解调—从载波信号中恢复出数字信号调制解调器:实现调制与解调的设备*2.调制与解调64三种调制方式根据载波Acos(t+)的三个参数:幅度、频率、相位,产生常用的三种调制技术:幅移键控法Amplitude-ShiftKeying(ASK)频移键控法Frequency-ShiftKeying(FSK)相移键控法Phase-ShiftKeying(PSK)ASK(又称为调幅)

用载波信号的不同幅度代表‘1’和‘0’FSK(又称为调频)

用载波信号的不同频率代表‘1’和‘0’PSK(又称为调相)

用载波信号的相位变化代表‘1’和‘0’(有变化为’1’,无变化为’0’)6566串行通信主要用于远距离数据传输。问题:干扰、衰减,信号畸变解决方法:差错控制技术——检测、纠正常用的数据校验方法:奇偶校验:以字符为单位进行校验发送方使发送的每个字节中’1’的个数为奇数或偶数;接收方检查收到的每个字节中’1’的个数是否符合双方的事先约定。奇偶校验可以检查出一个字节中发生的单个错误。奇偶校验不能自动纠错,发现错误后需“重传”。3.数据校验67循环冗余校验CRC(循环冗余码/多项式编码)以数据块(帧,Frame)为单位进行校验编码思想:将数据块构成的位串看成是系数为0或1的多项式如110001,可表示成多项式x5+x4+1数据块构成的多项式除以另一个多项式G(x),得到的余数多项式R(x)就称为CRC码(或称为校验和),而G(x)则称为生成多项式。CRC校验的检错方式:收发双方约定一个生成多项式G(x),发送方在帧的末尾加上校验和,使带有校验和的帧的多项式能被G(x)整除;接收方收到后,用G(x)去除它,若余数为0,则传输正确,否则传输有错。数据校验68CRC校验和计算方法若G(x)为r阶,原帧为m位,其多项式为M(x),则在原帧后面添加r个0,帧成为m+r位,相应多项式2rM(x)按模2除法用2rM(x)除以G(x):商Q(x),余R(x)即2rM(x)=G(x)Q(x)+R(x)按模2加法把2rM(x)与余数R(x)相加,结果就是要传送的带校验和的帧的多项式T(x)T(x)=2rM(x)+R(x)实际上,T(x)=2rM(x)+R(x)=[G(x)Q(x)+R(x)]+R(x)

=G(x)Q(x)(模2运算)所以,若接收的T(x)正确,则它肯定能被G(x)除尽。数据校验69数据校验CRC校验码的检错能力:可检出所有奇数个错可检出所有单位/双位错可检出所有≤G(x)长度的突发错常用的生成多项式:CRC12=x12+x11+x3+x2+1CRC16=x16+x15+x2+1CRC32=x32+x26+x23+x22+x16+x11+x10+x8+x7+x5+x4+x2+x+1704.同步通信与异步通信所有串行通信都需要一个时钟信号来作为数据的定时参考。发送器和接收器用时钟来决定何时发送和读取每一个数据位。根据传输时采用的是统一时钟还是本地局部时钟,分为同步传输和异步传输两种。同步传输用一个时钟脉冲确定一个数据位,异步传输用多个时钟脉冲确定一个数据位(如16个)同步传输以数据块(当作“位流”看待)为单位传输,异步传输以字符为单位传输,但都称为帧(Frame)71同步通信的时钟定时方法数据(62H)01100010同步传输先发送高位(MSB)发送方在时钟信号的下降沿发送字节接收方在时钟信号的上升沿接收字节时钟(发送时钟与接收时钟完全同步)LSBMSB727374757.4.2串行通信的接口标准机械特性:连接器的尺寸、引脚分布信号特性:信号电平、通信速率功能特性:引脚功能、控制时序最常见的串行通信标准是RS-232C。76RS-232C标准外形为25针或9针的D型连接器通信速率:波特率Baud(符号数/s)

100、300、600、1200、2400、48009600、19.2K、33.6K、56K

信号电平:逻辑“1”:-3V~-15V逻辑“0”:+3V~+15VTTL电平与RS232电平转换:TTL→RS232:MC1488RS232→TTL:MC148977主要引脚的功能78信号时序(接收)设备握手DTR:PC→M(保持,表示PC已可以工作)DSR:PC←M(保持,表示M已可以工作)监视载波信号DCD:PC←M←载波(表示数据链已建立)接收数据RD:PC←M←数据调制信号结束通信DCD消失、PC撤除DTR、Modem撤除DSR79信号时序(发送)设备握手DTR:PC→M(保持)DSR:PC←M(保持)请求发送RTS:PC→M(保持),M→载波,在对方产生DCDCTS:PC←M(保持)发送数据TD:PC→M→数据调制信号结束通信PC撤除RTS/DTRModem撤除CTS/DSR,停止发送载波80RS-232C接口连接方式81RS-232C接口连接方式(续)一种简化的连接方式(NullModem)适用于双机直连TDRDRTSCTSDCDGNDDTRDSRRITDRDRTSCTSDCDGNDDTRDSRRI827.4.3可编程串行通信接口8250主要内容: 1)8250的引脚及功能

2)与系统的连接

3)内部结构与内部寄存器4)8250的编程831.8250的引脚及功能面向系统的引脚:D0~D7

双向数据线。与系统数据总线DB相连接,用以传送数据、控制信息和状态信息。CS0,CS1,CS2

片选信号,当它们同时有效时,该8250芯片被选中。CSOUT

片选输出信号。当8250的CS0、CS1和CS2同时有效时,CSOUT为高电平。MR

主复位信号,复位后8250的状态见P331表7-5。84A0~A28250内部寄存器的选择信号。不同的编码对应于不同的寄存器。ADS

地址选通信号。有效时可将CS0,CS1,CS2及A0-A2锁存于8250内部。不需要锁存时,ADS可直接接地。DISTR读选通信号。通常与系统总线的IOR信号相连接。DOSTR写选通信号。通常与系统总线的IOW信号相连接。INTR

中断请求信号。当允许8250中断时,接收出错、接收数据寄存器满、发送数据寄存器空以及MODEM的状态均能够产生有效的INTR信号。858250的引脚及功能(续)面向通信设备的引脚信号SIN,SOUT:串行输入/输出端CTS,RTS,DTR,DSR:(同RS232标准中的信号)RLSD:即RS232C标准中的DCD信号RI:(同RS232标准中的信号)OUT1,OUT2:可由用户编程确定其状态的输出端BAUDOUT:波特率信号输出(频率=fCLK/分频值)XTAL1,XTAL2:接外部晶振,作为基准时钟fCLKRCLK:接收时钟输入(可直接与BAUDOUT相连)864.3878250与8088系统的连接系统总线D7-D0DISTRDOSTRINTRMRA0A1A2ADSDISTRDOSTRCS2CS1CS0+5VCSD7-D0#IOR#IOWINTRRESETA0A1A2电平转换/驱动器14881489到RS232接口XTAL1XTAL2BAUDOUTRCLK

SOUTSINRTSDTRDSRDCDCTSRI8250XTAL882.8250的内部寄存器共10个可编程(寻址)的寄存器线路控制寄存器(LCR)——BASE+3线路状态寄存器(LSR)——BASE+5发送保持寄存器(THR)——BASE+0(写)接收缓冲寄存器(RBR)——BASE+0(读)除数锁存器低8位(DLL)——BASE+0(DL=1)除数锁存器高8位(DLH)——BASE+1(DL=1)中断允许寄存器(IER)——BASE+1中断识别寄存器(IIR)——BASE+2Modem控制寄存器(MCR)——BASE+4Modem状态寄存器(MSR)——BASE+6898250的内部寄存器(续)除数锁存器(DLL,DLH)—BASE+0,1用来保存分频系数,以获得所需的波特率。波特率可以简单地看成每秒传送多少二进制位PC机中基准时钟频率fCLK=1.8432MHz,波特率因子K=16。所以,对于指定的波特率B

除数值=1843200/(B×16)=115200/B例如,通信速率为9600波特时,除数值=12。注意:写除数前,必须把LCR的最高位(DL位)置1908250的内部寄存器(续)线路控制寄存器(LCR)—BASE+3决定传输时的数据帧格式(通信双方必须一致)D7D6D5D4D3D2D1D0DL位:0=正常操作1=写除数寄存器0=正常操作1=SOUT强制为1

(Break符号)xx0=无校验001=奇校验011=偶校验101=恒为1111=恒为00=1位停止位1=2位停止位10=7位数据位11=8位数据位918250的内部寄存器(续)线路状态寄存器(LSR)—BASE+5反映传输时的通信线状态0D6D5D4D3D2D1D0发送移位寄存器空发送保持寄存器空检测到Break接收缓冲寄存器满溢出错奇偶错格式错(停止位个数不符)928250的内部寄存器(续)发送保持寄存器(THR)——BASE+0要发送的数据写入此寄存器。当发送移位寄存器TSR空时,THR中的内容移入TSR被发送出去。只有THR空时,CPU才能写入下一个要发送的数据接收缓冲寄存器(RBR)——BASE+0RSR收到一个完整的数据后,就将其送入RBR中。CPU可从RBR中读取收到的数据。RBR只能缓冲一个数据,当CPU未能及时取走上一个数据,下一个数据又送入RBR时,会产生溢出错938250的内部寄存器(续)中断允许寄存器(IER)——BASE+1决定哪类中断可以产生(也可禁止所有中断产生)0000D3D2D1D01=允许RBR满中断1=允许THR空中断1=允许线路状态中断(溢出错、奇偶错、格式错、Break)1=允许Modem状态中断948250的内部寄存器(续)中断识别寄存器(IIR)——BASE+2用于识别产生中断的原因00000D2D1D00=无中断1=有中断00=Modem状态中断(优先级最低)01=THR空中断10=RBR满中断11=线路状态中断958250的内部寄存器(续)Modem控制寄存器(MCR)—BASE+4产生RTS、DTR信号产生OUT1、OUT2信号设置循环自检状态000D4D3D2D1D0DTRRTSOUT1OUT2LOOP968250的内部寄存器(续)Modem状态寄存器(MSR)—BASE+6反映RS232接口的状态△CTS△DSR△RI△RLSDCTSD7D6D5D4D3D2D1D0RLSDRIDSR反映4个引脚的当前状态(反相值)反映了自上次读MSR后这4个引脚是否发生了变化(1=发生了变化)978250发送数据的工作过程1)CPU(数据)→8250的THR;2)TSR移空时,THR→TSR,LSR中“数据发送保持寄存器空”状态位置位;3)TSR根据LCR中规定的格式从低到高逐位发送数据;4)LSR中“数据发送保持寄存器空”状态位可用来产生中断,也可查询该状态位,以实现数据的连续发送。TSRTHR串行数据输出并行数据LSRINTLCR数据状态1)2)3)2)4)4)988250接收数据的工作过程1)SIN引脚上的串行数据逐位进入RSR;2)RS

温馨提示

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

评论

0/150

提交评论