打印
[Atmel]

每天跟我读点资料:SAM D21数据手册(209)

[复制链接]
459|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
29.6.2.5 记数器操作

    记数器能被设置为向上或向下记数。当记数器向上记数并且顶值到达,记数器翻转到0继续下一个时

钟循环,记数器将翻转到顶值当到达0时。在one-shot模式时,记数器将停止记数在翻转发生时。

    为了设置记数器向下记数,写一个1到控制B设置寄存器(CTRLBSET.DIR)的方向比特。为了设置向上

记数,写一个1到控制B清除寄存器(CTRLBCLR.DIR).

        每次记数器到达顶值或到达0,它将设置在中断标志状态和清除寄存器(INTFLAG.OVF)中的溢出中断

标志。它也可能生产一个上溢或下溢事件,当事件控制寄存器上溢/下溢事件输出使能比特是1

(EVCTRL.OVFEO)。

    记数值能被从记数值寄存器(COUNT)中读出或者一个新值能被写入到COUNT寄存器,见下图所示。给

出了一个写新记数值的例子。COUNT值当TC开始时将总是变成零,除非一些别的值被写入或 TC被事先重载入

顶值,因此TC一记数时就停止。

    



    停止命令
    关于停止命令,它能在控制B设置寄存器(CTRLBSET.CMD)命令比特组中唤醒,记数器将保持它的当前

值。所有的波形全清除。记数器停止记数,并且状态寄存器的停止比特被设置(STATUS.STOP)。

    触发命令和事件激活
    触发能被唤起或者是软件命令,用在控制B设置寄存器(CTRLBSET.CMD)中的触发命令,或者作为一个

触发事件激活,用在事件控制寄存器中的事件激活比特组(EVCTRL.EVACT)。
    当一个触发在记数器运行时被唤醒,记数器将翻转到顶值或0值,依据记数器的方向。
    当一个触发在记数器停止期间被唤醒,记数器将继续从COUNT寄存器的值记数。

    注意: 
    当触发事件激活被配置并且使能事件激活,使能的记数器将不开始记数。记数器将在下一个进入的

事件开始并且重开始在任何紧随事件。

记数事件激活
    当记数事件激活被配置,每个新进入事件将使记数器增加或减少,依据方向位的状态

(CTRLBSET.DIR)。
    开始事件激活
    当TC被配置为一个开始事件激活,在EVCTRL.EVACT比特组,使能TC不能使记数器开始;开始被延期直到下一个输入事件或软件触发激活。当记数器正在运行时,一个输入事件对记数器没有影响。









相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:http://shop34182318.taobao.com/ http://shop562064536.taobao.com

2398

主题

6950

帖子

67

粉丝