TACCR0用变量赋值是怎么计算周期时长的?

2019-03-24 11:51发布

TACCR0用变量赋值是怎么计算周期时长的? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1条回答
qinkaiabc
2019-03-24 19:05
< 捕获.PNG


定时/计数模式TAR寄存器是一个16位的定时/计数寄存器。在时钟的上升沿,TAR的内容会根据不同的模式而增加或者减小,TAR可以通过软件进行读/写;另外,当定时/计数器发生溢出时将产生中断。1、停止模式定时器暂停但不发生复位。2、增加模式计数器的周期长度等于TACCR0的值加1。在计数过程中改变TACCR0的值,如果新的计数周期大于或等于以前的周期,或者大于当前计数器的值时,计数器将以新的计数周期作为计数周期。如果新的周期小于当前计数器的值,则计数器将变为0,然后重新开始计数。当计数器等于TACCR0时产生CCIFG中断标志,当计数器从TACCR0转到0是将产生TAIFG中断标志。3、连续模式在该模式下,计数器周期从0到0FFFFH。4、加/减模式该模式用来产生对称波形。计数器先增计数到TACCR0,然后减计数到0,周期是TACCR0的2倍。计数过程中改变TACCR0的值有以下两种情况:1) 如果此时为减计数,则计数器计数到0后,新的周期开始起作用。2) 如果此时为增计数,则又分为两种情况,如果新的周期大于或等于当前计数器的值,那么计数器计数到新的周期值;如果新的周期值小于当前计数器的值,那么计数器将马上执行减计数。

一周热门 更多>

相关问题

    相关文章