1、首先8253可编程定时器/计数器有3个独立的16位计数器,每个计数器都可由程序设置6种工作方式,每个计数器均以减法计数。
2、计数器方式,在CPU给计数器装入计数初值后,当GATE端变为高电平或者给一触发脉冲时,可由外部事件作为CLK脉冲对计数值进行减1计数,当计数器减至0时,在OUT端得到输出信号。
3、定时器方式 ,在CPU给计数器送入计数初值后,当GATE端变为高电平时,由CLK脉冲触发定时器开始工作,定时器产生CLK时钟整数倍的定时时间间隔。CLK是连续的、周期精确的时钟脉冲。
4、本实验中8253计数器按方式0工作(计数结束中断方式),在控制字写进控制字寄存器之后,计数器的输出OUT立即变低,在GATE为高电平的情况下,计数器才开始计数,直到计数到0,OUT才变为高电平。此高电平一直保持到CPU又写入一个方式0控制字,OUT又立即变低,再写入计数值,计数器按照新的计数值开始计数。
5、本实验所设计数初值为5,也就是外部5个脉冲下降沿, OUT脚输出一个高电平。实验时, 将OUT0接到LED上,观察OUT0何时才变为高电平。