新浪博客

/定时器,其内部有三个独立的16位计数器/定时器通道,每个计数器通道均可按6种不同的方式工作,并且都可以按二进制或十进制计数。其CLK0CLK2是计数器02的时钟脉冲输入端, GATE0GATE2是门控脉冲输入端, OUT0OUT2是输出端及内部结构见下图
proteus <wbr>8086 <wbr>8253 <wbr>仿真
当用8253做外部事件计数器时,CLK端所加的计数脉冲由外部事件产生,这些脉冲的间隔可以不相等。如果要用它做定时器,CLK端应输入精确的时钟脉冲。这时, 8253所能实现的定时时间决定于计数脉冲的频率和计数器的初值,即定时时间=时钟脉冲周期tc ×预置的计数初值n8253的控制逻辑由5个控制信号WRCSA1A0组成,对应的操作见表1
proteus <wbr>8086 <wbr>8253 <wbr>仿真
8253编程时,要对其控制字寄存器写入相应的控制字,控制字寄存器格式如表2所示。
proteus <wbr>8086 <wbr>8253 <wbr>仿真
 其中: SC1, SC0———通道选择位。为00, 01, 10分别表示选择0, 1, 2通道。RL1, RL0———读/写操作位。00 表示锁存数据,可随时读取计数器中的计数值; 01 表示只读/写低8,8位自动置为0; 10表示只读/写高8,8位自动置为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 将输出一个

我的更多文章

下载客户端阅读体验更佳

APP专享