账号:
密码:
最新动态
产业快讯
CTIMES / 文章 /
如何在AVR® MCU上选择计时器 (Timer)
 

【作者: 蔡文杰】2024年05月24日 星期五

浏览人次:【1150】

阅读本文可以详细了解 AVR® 微控制器 (MCU) 上不同的计时器周边,以及如何为您的应用选择最隹的选项。


探索微控制器计时器的多样性


计时器是微控制器中常见的周边,每个计时器都有自己的优点和缺点。有些计时器被设计用作波形产生的一部分,有些则非常适合脉冲计数,而选择何种计时器取决於在各种情况下的需求和可用的资源。



计时器/计数器A 型 (TCA)


TCA 是一款针对产生脉宽调变 (PWM) 最隹化的计时器。它可以在 16 位元模式下运行,以获得高解析度输出,也可以在 2x 8 位元模式下运行,其中计时器的任何一半皆可独立运行。 计数器则持续运作直到计数至 TOP 值。在这种情况下,计数器将重置为BOTTOM值 (零),而双斜率模式除外。在双斜率模式下,计数器不会重置为零,而是向下计数至零来重置周期。 如下图 1 所示。



为了产生 PWM,有比较通道检查计数器是否符合或超过设定值。如果条件符合,相关的输出就会变高。该计时器还支援双缓冲,其中写入计数器的值将被保留,直到计时器触发更新,但会因操作模式而异。借助事件系统 (EVSYS),可以实现更进阶的控制。例如,事件系统可用於闸控输入、对事件边缘进行计数、控制计数方向 (向上或向下) 以及在各种条件下重新启动计时器。


计时器/计数器B型 (TCB)


TCB 是一款针对计时 (Timing) 和撷取 (Capture) 进行最隹化的 16 位元计时器。 TCB 可以在周期中断模式下运行,中断在固定间隔发生。逾时检查模式类似,只是计时器可以透过 EVSYS 输入重置。 TCB 也可以作为单次计时器运作。对於较长时间段,RTC/PIT 可能是比 TCB 更好的选择。


撷取模式是指计时器“撷取”计时器内计数的能力。可以做很简单的运用,例如自由运行的计时器上发生输入时,撷取两个上升沿之间的时间长度 (频率测量) 或脉冲长度 (脉冲宽度测量)。此外,两个 TCB 可以一起使用来创建真正的 32 位元计数器,以实现高精度测量。


TCB 也可用作 8 位元 PWM 产生器,如 TCA 中的单斜率模式。


计时器/计数器D型 (TCD)


TCD 是一款 12 位元计时器,经过最隹化,可产生复杂的 PWM 波形,例如半桥和全桥输出。 TCD内部有两个比较器:CMPA和CMPB。每个比较器都有一个 SET 值和一个 CLR 值。当计数达到 SET 时,输出处於作用中状态。然後,当达到 CLR 时,输出将被停止。


TCD 支援四种操作模式:一斜坡、二斜坡、四斜坡和双斜坡。这些名称代表计数器经历的周期数。四斜坡模式经历四个周期,依序重置 CMPASET、CMPACLR、CMPBSET 和 CMPBCLR。两个斜坡模式经历两个周期,依序在 CMPACLR 和 CMPBCLR 上重置。一斜坡模式仅在 CMPBCLR 上重置。最後,双斜率模式向上计数到 CMPBCLR,然後向下计数到零。为了便於观察目的,下图的每个斜坡末端都位於相同的位置;但是,当值不相等时,它们会有所不同。此外,未显示的值(例如:单一斜坡模式下的 CMPASET)仍然有效,但在此期间不发挥作用。



透过事件系统,TCD 还支援输入遮蔽、数位滤波和多种故障模式用於清除输出和/或暂停计数。 TCD 也可用於输入撷取。此外,TCD 可与 PLL (锁相环) 一起使用,使 TCD 能够以高於主时脉的频率运作。


计时器/计数器E型 (TCE)及波形扩充 (WEX)


TCE 是一款针对计时和 PWM 生成进行最隹化的 16 位元上下计时器。 TCE 是一个可逆计时器,这意味着它可以根据方向在每个输入上递增或递减。当 TCE 到达顶部时,载入的下一个值取决於该点的方向。如果它上升,那麽它会滚动到零。相同地,如果此时方向为向下,计数器将卷动到 TOP,而方向变更为向上会使计时器开始递增。


为了防止计时器周期中间出现时序干扰,TCE 支援双缓冲,在比较操作发生时载入已变更的暂存器值。这允许使用者在计时器运行时进行更改。


TCE 具有多种用於产生波形的操作模式。这些模式与其他计时器的操作模式类似。例如,TCE 支援一般计时器操作,以及单斜率 PWM、双斜率 PWM 和频率产生。为了提高 PWM 的输出分辨率,TCE 具有高分辨率模式,可透过使用高速时脉讯号来提高 PWM 的分辨率。为了充分利用此功能,此讯号的速度应至少比 CPU 速度快 4 倍。 TCE可以利用PLL来产生时脉讯号。


此外,TCE 还与 WEX 整合。 WEX 让计时器产生互补输出、??入死区时间、建立输出样式并处理硬体中的故障讯号。


计时器/计数器F型 (TCF)


TCF 是一款经过最隹化的 24 位元计时器,其作用类似於数控振荡器 (NCO)。 NCO 是一个数位模块,主要由累加器、加法器和增量组成。每个时脉周期,都会将设定的增量加到累计总数中。当累加器溢位时,馀数将转入累加器,并产生输出。PLL 可以与 TCF 一起使用 (如果配备的话)。注意:TCF与系统周边时钟是非同步运行,提高了其灵活性;然而,这会导致读取计时器计数时出现延迟。因此,TCF 更适合用於频率生成,而不是精确计时。


在脉冲频率模式下,累加器输出用於设定输出,然後在固定数量 (由使用者设定) 的时脉周期後,输出被清除。在固定占空比模式下,累加器输出讯号切换输出正反器,产生 50% 的占空比。


即时计数器 (RTC) 和周期性中断计时器 (PIT)


RTC 提供两种计时功能:即时计数器 (RTC) 和周期性中断计时器 (PIT)。两个周边设备共享相同的时脉源:32.768 kHz 外部晶振,或内部超低功耗 32.768 kHz 振荡器,彼此独立运作。使用晶体振荡器时,RTC 可以修正高达 ±127 PPM 的误差。时脉源可以透过 15 位元预分频器按比例缩小。


RTC 可以在比较匹配和溢位时产生中断,而PIT 可以在2 的幂次时脉周期 (例如,2/4/8/…/32768) 上产生中断。需要注意的是,RTC 和 PIT 中断不一定是同步的 (即同时发生)。 PIT 应该用於超低功耗应用,因为它是唯一在掉电模式下继续发挥作用的计时器之一,而 RTC 的功耗稍高一些,但支援更长的时间周期。对於 1 Hz 刻度时钟,RTC Timeout时间可以超过 18 小时。


看门狗计时器 (WDT)


WDT 是一个特殊的计时器,如果不定期清除,它将重置微控制器。它具有多个可选择的Timeout周期,并透过内部 1.024 kHz 振荡器运行,该振荡器源自於内部超低功耗 32.768 kHz 振荡器。 WDT 有两种模式:正常模式和视窗模式。在正常模式下,必须在计数匹配之前清除 WDT。然而,如果某种错误不断地清除 WDT,则计时器将不会侦测到故障。为了防止这种可能性,可以使用视窗模式。


在视窗模式下,WDT 清除必须在设定的延迟之後、计时器触发之前发生。如果清除得太早或太晚,将被视为 WDT 违规,并会触发微控制器的重置。 WDT 暂存器受到设定变更保护 (CCP) 功能和控制暂存器锁定的保护。这使得软体错误很难无意中更改 WDT 设定。 WDT 可以在所有电源模式下运作。


选择合适的计时器及了解更多信息


了解计时器周边後,可以轻松掌握选择最符合应用所需功能的计时器。在许多情况下,可能有多个的计时器可以执行该工作。你直接选择最简单的计时器?让具有更多功能的计时器可供将来使用。要更详细地了解所有这些计时器的运作方式以及与其相关的暂存器可叁考AVR MCU网站内数据手册、应用笔记和技术简介。使用特定计时器的程式码范例可以透过搜寻 MPLAB® Discover网页找到 ( https://mplab-discover.microchip.com)。


本文作者为:Microchip应用工程师经理 蔡文杰


相关文章
打开讯号继电器的正确方式
生成式AI助功率密集的计算应用进化
AI赋能智慧制造转型
生成式AI刺激应用创新 带动软硬体新商机
台湾AI关键元件的发展现况与布局
comments powered by Disqus
相关讨论
  相关新闻
» 联电首推22eHV平台促进下世代智慧型手机显示器应用
» 筑波医电於台湾国际医疗展展示Spark手术麻醉系统
» 贸泽电子和ADI合作出版电子书协助工程师解决设计挑战
» 2024博世科技日成就生活之美 用软体科技带动各领域创新
» 台达与德仪携手成立实验室 布局先进电动车电源系统


刊登廣告 新聞信箱 读者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 远播信息股份有限公司版权所有 Powered by O3  v3.20.1.HK86LDB3JQISTACUKX
地址:台北数位产业园区(digiBlock Taipei) 103台北市大同区承德路三段287-2号A栋204室
电话 (02)2585-5526 #0 转接至总机 /  E-Mail: webmaster@ctimes.com.tw