8254控制字和操作模式
在这里,我们将看到8254可编程间隔定时器芯片的控制字和操作模式。
在讨论其工作模式和控制字属性之前,我们应该了解该芯片的一些重要事实。
芯片加电时,状态不确定。当时未定义模式,计数值和输出。
每个计数器在使用前都必须编程。我们不需要对一些未使用的计数器进行编程。
计数器是通过编写控制字和一个初始计数来编程的。
计数器的结构是这样的-
我们可以通过SC1和SC0选择计数器。
读取返回状态
RW1和RW2的值用于表示读取和写入操作。
M2,M1和M0的三位用于确定编程模式。这些如下所示:
控制字的最后一位(LSb)用于选择计数是二进制还是BCD。如果该值为0,它将充当二进制计数器,否则将充当BCD计数器。
现在让我们看看8254芯片的这六个工作模式:
这用于事件计数。写入控制字后,OUT首先为低电平。它会一直保持低电平,直到计数器达到0,然后在每个时钟周期后递减1。
然后,OUT变为高电平,并保持高电平,直到有一个新计数或将新的模式0控制字写入计数器为止。GATE=1表示启用计数,0表示禁用计数。
硬件可再触发一次
如果GATE为1,则启用计数,否则禁用。此模式用于生成方波。时间段等于计数。如果计数为偶数,则波形的接通时间为count/2。
否则,开启时间为(count+1)/2,关闭时间为(count-1)/2。
最初,OUT为高。计数由门的上升沿触发。当初始计数到期时,OUT会在一个时钟脉冲内变为低电平,然后再次变为高电平。
写入控制字和初始计数后,直到一次触发后的时钟脉冲才加载计数器。