1.T/C0计数寄存器——TCNT0
TCNT0是T/C0的计数值寄存器,该寄存器可以直接被MCU读写访问。写TCNT0寄存器将在下一个定时器时钟周期中阻塞比较匹配。因此,在计数器运行期间修改TCNT0的内容,有可能将丢失一次TCNT0与OCR0的匹配比较操作。
2.输出比较寄存器——OCR0
8位寄存器OCR0中的数据用于同TCNT0寄存器中的计数值进行匹配比较。在T/C0运行期间,比较匹配单元一直将寄存器TCNT0的计数值同寄存器OCR0的内容进行比较。一旦TCNT0的计数值与OCR0的数据匹配相等,将产生一个输出比较匹配相等的中断申请,或改变OC2的输出逻辑电平。
3.定时计数器中断屏蔽寄存器——TIMSK
(1)OCIE2(OCIE0):T/C2(T/C0)输出比较匹配中断允许标志位
当OCIE2(OCIE0)被设为“1”,且状态寄存器中的I位被设为“1”时,将使能T/C2(T/C0)的输出比较匹配中断。若在T/C2(T/C0)上发生输出比较匹配,即OCF2=1(OCF0=1)时,则执行T/C2(T/C0)输出比较匹配中断服务程序。
(2)TOIE2(TOIE0):T/C2(T/C0)溢出中断允许标志位
当TOIE2(TOIE0)被设为“1”,且状态寄存器中的I位被设为“1”时,将使能T/C2(T/C0)溢出中断。若在T/C2(T/C0)上发生溢出,即TOV2=1(TOV0=1)时,则执行T/C2(T/C0)溢出中断服务程序。
4.定时计数器中断标志寄存器——TIFR
(1)OCF2(OCF0):T/C2(T/C0)比较匹配输出的中断标志位
当T/C2(T/C0)输出比较匹配成功,即TCNT2=OCR2(TCNT0=OCR0)时,OCF2(OCF0)位被设为“1”。当转入T/C2(T/C0)输出比较匹配中断向量执行中断处理程序时,OCF2(OCF0)由硬件自动清零。写入一个逻辑“1”到OCF2(OCF0)标志位将清除该标志位。当寄存器SREG中的I位、OCIE2(OCIE0)以及OCF2(OCF0)均为“1”时,T/C2(T/C0)的输出比较匹配中断被执行。
(2)TOV2(TOV0):T/C2(T/C0)溢出中断标志位
当T/C2(T/C0)产生溢出时,TOV2(TOV0)位被设为“1”。当转入T/C2(T/C0)溢出中断向量执行中断处理程序时,TOV2(TOV0)由硬件自动清零。写入一个逻辑“1”到TOV2(TOV0)标志位将清除该标志位。当寄存器SREG中的I位、TOIE2(TOIE0)以及TOV2(TOV0)均为“1”时,T/C2(T/C0)的溢出中断被执行。在PWM模式中,当T/C2(T/C0)计数器的值为0x00并改变计数方向时,TOV2(TOV0)自动被置为“1”。
5.T/C0控制寄存器——TCCR0
8位寄存器TCCR0是T/C0的控制寄存器,它用于选择计数器的计数源、工作模式和比较输出的方式等。(www.xing528.com)
(1)FOC0:强制输出比较
FOC0位只在T/C0被设置为非PWM模式下工作时才有效,但为了保证同以后的器件兼容,在PWM模式下写TCCR0寄存器时,该位必须被写零。当将一个逻辑“1”写到FOC0位时,会强加在波形发生器上一个比较匹配成功信号,使波形发生器依据COM0[1∶0]位的设置而改变OC0输出状态。注意:FOC0的作用仅如同一个选通脉冲,而OC0的输出还是取决于COM0[1∶0]位的设置。
一个FOC0选通脉冲不会产生任何的中断申请,也不影响计数器TCNT0和寄存器OCR0的值。一旦一个真正的比较匹配发生,OC0的输出将根据COM0[1∶0]位的设置而更新。
(2)WGM0[1∶0]:波形发生模式
这两个标志位控制T/C0的计数与工作方式、计数器计数的上限值,以及确定波形发生器的工作模式,如表7-1所示。T/C0支持的工作模式有:普通模式、比较匹配时定时器清零(CTC)模式,以及两种脉宽调制(PWM)模式。
表7-1 T/C0的波形产生模式
(3)COM0[1∶0]:比较匹配输出方式
这两个位用于控制比较输出引脚OC0的输出方式。如果COM0[1∶0]中的任何一位或两位被置“1”,OC0的输出将覆盖PB3引脚的通用I/O端口功能,但此时PB3引脚的数据方向寄存器DDRB3位必须置为输出方式。当引脚PB3作为OC0输出引脚时,其输出方式取决于COM0[1∶0]和WGM0[1∶0]的设定。
表7-2给出了在WGM0[1∶0]的设置为普通模式和CTC模式(非PWM)时,COM0[1∶0]位的功能定义。表7-3给出了在WGM0[1∶0]的设置为快速PWM模式时,COM0[1∶0]位的功能定义。表7-4给出了在WGM0[1∶0]设置为相位可调的PWM模式时,COM0[1∶0]位的功能定义。
表7-2 比较输出模式,非PWM模式(WGM=0、2)
表7-3 比较输出模式,快速PWM模式(WGM=3)
表7-4 比较输出模式,相位可调PWM模式(WGM=1)
(4)CS0[2∶0]:T/C0时钟源选择
这3个标志位被用于选择设定T/C0的时钟源,如表7-5所示。
表7-5 T/C0的时钟源选择
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。