你好,欢迎访问达普芯片交易网!|  电话:010-82614113

8253可编程计数/定时器编程要点

发布时间:2008-11-12阅读:1648

  8253的全部功能是由CPU编程设置的。CPU通过输出指令给8253装人控制字,从而设置其功能。8253控制字格式如图所示。

  各位的功能如表1~4所示

  8253的3个计数器是独立的16位减法计数器。计数器的工作方式由工作方式寄存器确定。计数器在编程写人初始值后,在某些方式下计数到0后自动预置,计数器连续工作。CPU访问计数器时,必须先设置工作方式控制字中的RL1、RL0位。计数器对CLK计数输入端的输人信号进行递减计数。选通信号GATE控制计数工作的进行,其功能如表5所示。

  8253的3个计数器按照各工作方式寄存器中控制字的设置进行工作。可以选择的工作方式有6种。这6种方式是:
 
  方式0:计数结束时中断。编程后自动启动,计数器减1计数,计数到终点(减至0)后输出高电平,可用于中断请求信号,GATE为低电平时停止计数,回到高电平后继续往下计数。再次启动要重新装入计数值或重新编程。
 
  方式1:可编程单脉冲输出。GATE上升沿进行初始化并开始计数。输出低电平的宽度等于计数时间。单脉冲输出可用GATE上升沿多次触发。
 
  方式2:c比率发生器。编程后重复地循环计数。计数到终点时输出一个时钟周期宽度的低电平脉冲,自动初始化后继续计数。用GATE的上升沿初始化,并开始计数。GATE为低电平时停止计数。
 
  方式3:方波发生器。这种方式是在编程后重复地循环计数,输出波形为方波。如果初始计数值为偶数,每个时钟输入脉冲使计数器减2,达到计数终点时输出电平改变。如果初始计数值为奇数,则输出高电平时第一个时钟输人脉冲使计数器减1,随后每个输人脉冲使计数器减2;输出为低电平时第一个时钟输入脉冲使计数器减3,随后每个输人脉冲使计数器减2,到达计数终点时输出电平改变,计数器自动初始化后继续计数。用GATE的上升沿初始化并开始计数,GATE为低电平时停止计数。
 
  方式4:软件启动选通脉冲输出。编程后自动启动,计数到终点后输出一个时钟周期的低电平脉冲。用GATE的上升沿初始化并开始计数,GATE为低电平时停止计数。
 
  方式5:硬件启动选通脉冲输出。编程后,等待GATE上升沿进行初始化并开始计数,计数到终点后输出一个时钟周期的低电平脉冲,计数器开始计数后不受GATE信号电平的影响,这种选通脉冲的输出可用GATE的上升沿多次触发。在工作方式控制字中,如果设置计数器锁存操作,则该控制字中工作方式选择位M1、M0和计数方式选择位BCD无效。即设置锁存操作时不影响计数器的工作方式,计数器锁存操作,是在计数器计数过程中,在不影响正在进行的计数操作的条件下,把当前的计数值锁存到寄存器,供CPU读取,这时在工作方式控制字中,SC1、SC0指定要锁存的计数器,RL1、RL0=00表示锁存操作,其余4位无效,计数器按原来设置的方式工作。

  本接口卡在使用中规定:事件计数和脉冲测量用方式0;可编程问门计数器0通道用方式2;计数器1通道用方式0。

在线人工客服

点击这里给我发消息

点击这里给我发消息

点击这里给我发消息

010-82614113

客服在线时间周一至周五
9:00-17:30