的下降沿置位,由RD信号的上升沿复位.
INTR:中断请求信号,高电平有效,由8255输出,向CPU发中断请求.发中断请求的条件是STB、IBF、INTE(中断允许)为高电平。中断请求信号由RD的下降沿复位。 INTE A:A口中断允许信号,由PC4的置位/复位来控制,INTE B由PC2的置位/复位来控制。
方式1输出:
当任何一个端口按照工作方式1输入时,控制联络信号如图所示:
各控制信号的功能如下:
OBF:输出缓冲器满信号,低电平有效,是8255输出给外围设备的联络信号。表示CPU已把输出数据送到指定端口,外设可以把数据取走。它由WR信号的上升沿置“0”(有效),由ACK信号的下降沿置“1”(无效)。
ACK:外设响应信号,低电平有效。表示CPU输出给8255的数据已由外设取走。 INTR:中断请求信号,高电平有效。表示数据已被外设取走,请求CPU继续输出数据。中断请求的条件是ACK、OBF和INTE(中断允许)为高电平,中断请求信号由WR的下降沿复位。
INTE A:由PC6的置位/复位来控制。 INTE B:由PC2的置位/复位来控制。
工作方式2:
A口除了工作方式0、1之外,还有工作方式2。按照方式2工作时,A口称为双向数据总线端口,既可以发送数据,又可以接收数据。其主要功能可概括如下: 1、有一个8为双向数据输入/输出端口(A)和一个5位控制信号端口(C)。 2、输入、输出均可锁存。
3、5位控制信号端口(C)作为8位双向数据输入/输出端口A的控制/状态信号端口。
4、工作方式2只适合于A口。
按照工作方式2工作时,A口既可工作于查询方式,又可工作于中断方式.其控制联络信号如图所示:
第5页
各控制信号功能如下:
INTR:中断请求信号,高电平有效.在输入、输出方式时,可用于向CPU发中断请求。
OBF:输出缓冲器满信号,低电平有效。是8255输出给外设的联络信号,表示CPU已把数据输出到A口。
ACK:外设响应信号,低电平有效。用来启动A口三态输出缓冲器输出数据。 INTE1:是一个与输出缓冲器相关的中断允许触发器,由PC6的置位/复位来控制。 STB:选通输入,低电平有效。是由外设送来的输入信号,用来将数据送入输入锁存器。
IBF:输入缓冲器满信号,高电平有效,表示数据已送入输入锁存器。 INTE2;是一个与输入缓冲器相关的中断允许触发器,由PC4的置位/复位来控制。 当A口工作于方式2时,B口可工作于方式0或方式1,既可以作为输入端口,又可以作为输出端口。这时C口主要用于控制/状态信号的输入/输出。C口各位的功能如图所示,其中高5位用于A口,低3位用于B口 3.2.2 定时计数器8253资料
8253工作原理
8253是可编程的计数器/定时器,其内部有三个独立的16位计数器/定时器通道,每个计数器通道均可按6种不同的方式工作,并且都可以按二进制或十进制计
第6页
数。其CLK0~CLK2是计数器0~2的时钟脉冲输入端, GATE0~GATE2是门控脉冲输入端, OUT0~OUT2是输出端及内部结构见下图
当用8253做外部事件计数器时,在CLK端所加的计数脉冲由外部事件产生,这些脉冲的间隔可以不相等。如果要用它做定时器,则CLK端应输入精确的时钟脉冲。这时, 8253所能实现的定时时间决定于计数脉冲的频率和计数器的初值,即定时时间=时钟脉冲周期tc ×预置的计数初值n8253的控制逻辑由5个控制信号WR、CS、A1和A0组成,对应的操作见表1。
8253编程时,要对其控制字寄存器写入相应的控制字,控制字寄存器格式如表2所示。
其中: SC1, SC0———通道选择位。为00, 01, 10分别表示选择0, 1, 2通道。RL1, RL0———读/写操作位。00 表示锁存数据,可随时读取计数器中的计数值; 01 表示只读/写低8位,高8位自动置为0; 10表示只读/写高8位,低8
第7页
位自动置为0; 11表示读/写16位数据,先低8位,后高8位。M2,M1,M0———工作方式选择位。8253 具有3 个独立的16 位减法计数器,6 种不同的工作方式。 方式0 :又称计数结束产生中断工作方式。当程序将工作方式控制字写入控制字寄存器时,计数器的输出端OUT 立即变为低电平。在计数初值写入该计数器后,输出仍将保持为低电平。当门控信号GATE 为高电平时,计数器对输入端CLK的输入脉冲开始作减一计数,当计数器从初值减为0 时,输出端OUT由低电平变为高电平,该输出信号可作为向CPU 发出的中断请求信号。
方式1 :又称可编程单稳态工作方式。功能是在GATE 信号的上升沿作用下,输出端OUT 产生一个负脉冲信号,负脉冲的宽度可由定时器的计数初值和时钟频率编程确定。
方式2 :又称频率发生器工作方式。当程序将工作方式控制字写入控制字寄存器时,计数器的输出端OUT立即变为高电平。在写入计数初值后,计数器对输入时钟CLK计数。在计数过程中OUT 保持不变,直到计数器从初值减为1时,输出OUT 将变低,再经过一个CLK周期,OUT 恢复为高电平,并按已设定的计数初值重新开始计数。在需要产生某个脉冲信号或将某一个较高频率的脉冲信号分频为较低频率时,可使用8253 的方式2。
方式3 :又称方波发生器工作方式。方式3 的工作类似于方式2 ,不同之处是方式3 的输出OUT是方波。 方式4 :又称软件触发选通工作方式。其功能是在输出OUT 端隔一定时间产生一价目负脉冲。与方式0 不同的是,输出脉冲的宽度是固定的,但产生负脉冲所相隔时间是可编程的。
方式5 : 又称硬件触发选通工作方式。方式5的工作类似于方式4 ,不同之处是GATE 信号的作用不同。方式5 的计数过程由GATE 的上升沿触发,当计数结束时,OUT 将输出一个CLK周期的低电平信号。 3.2.3 串行通信可编程接口芯片8251A资料
第8页
8251工作原理:
1.发送器
a. 数据输出线TxD b. 发送时钟 TxC
c. 发送器准备好 TxRDY d. 发送器空信号 TxEMPY 过程
TxRDY有效?CPU写数据到8251?8251发数据 ? 发送完毕,TxEMPY有效 2.接收器
a. 数据输入线RxD b. 接收时钟 RxC
c. 接收器准备好 RxRDY 过程
8251接数据 ? RxRDY有效 ? CPU读8251 3.调制解调控制电路
DTR——数据终端准备好信号。是由8251A送往外设的,表示CPU当前已经准备就绪。
DSR——数据设备准备好。是外设送往825lA的,表示当前外设已经准备好数据。
RTS——请求发送信号。是8251A送往外设的,表示CPU已经准备好发送。 CTS——允许发送信号。由外设送往825lA的,当为低电平时,允许825lA执行发送操作。 读/写控制
第9页