定时器 0 和 1 共用一个可编程的 8 位预分频器,为 PCLK 提供第一级除法。
计时器 2、3 和 4 共享不同的 8 位预分频器。每个定时器都有自己的专用时钟分
频器,提供第二级时钟分频(预分频器除以 2、4、8 或 16)。或者,定时器从
外部引脚选择时钟源。定时器 0 和 1 可以选择外部时钟 TCLK0。定时器 2、3 和 4
可以选择外部时钟 TCLK1。每个定时器都有自己的 32 位下行计数器,由定时器
时钟驱动。下行计数器最初从计时器计数缓冲寄存器(TCNTBn)加载。当下行
计数器达到零时,生成计时器中断请求,通知 CPU 计时器操作已完成。当定时
器下降计数器达到零时,相应的 TCNTBn 值可自动重新加载到下降计数器中,以
开始下一个循环。但是,如果计时器停止,例如在计时器运行模式期间清除
TCONn 的计时器启用位,则 TCNTBn 的值不会重新加载到计数器中。
脉宽调制功能(PWM)使用 TCMPBn 寄存器的值。当下行计数器值与定时
器控制逻辑中比较寄存器的值匹配时,定时器控制逻辑改变输出电平。因此,
比较寄存器确定 PWM 输出的开启时间(或关闭时间)。TCNTBN 和 TCMPN 寄存
器是双缓冲的,以允许在周期的中间更新定时器参数。在当前计时器循环完成
之前,新值不会生效。下图显示了 PWM 循环的简单示例。
图 8-PWM 周期框图的简单示例
评论0
最新资源