Timer AVR定时器编程:CTC模式与正常模式

Timer AVR定时器编程:CTC模式与正常模式,timer,comparison,avr,Timer,Comparison,Avr,在比较AVR定时器编程中CTC模式和正常模式的优点和缺点时,您认为哪一个更好?为什么?你能给我解释一下吗 谢谢你的帮助。两者之间没有“更好的”了。有时你需要全数,有时你不需要。您使用的是适合您需要的,而不是“更好”的。在正常模式下,计时器会触发中断处理程序。它们实际上可以执行您想要的任何功能,但它们在CPU上运行,这会阻止其他任何功能同时运行 在CTC模式下,您也可以触发中断,但也可以不使用中断,仍然切换输出引脚。通过这种方式,功能与CPU并行,不会中断任何内容 PWM像CTC一样在后台运行,但

在比较AVR定时器编程中CTC模式正常模式优点缺点时,您认为哪一个更好?为什么?你能给我解释一下吗


谢谢你的帮助。

两者之间没有“更好的”了。有时你需要全数,有时你不需要。您使用的是适合您需要的,而不是“更好”的。在正常模式下,计时器会触发中断处理程序。它们实际上可以执行您想要的任何功能,但它们在CPU上运行,这会阻止其他任何功能同时运行

在CTC模式下,您也可以触发中断,但也可以不使用中断,仍然切换输出引脚。通过这种方式,功能与CPU并行,不会中断任何内容

PWM像CTC一样在后台运行,但引脚上的输出时序不同。它更适用于以脉宽调制为输入的伺服装置

如果您只想切换输出引脚,请使用CTC或PWM。如果您想做更多的工作,请使用正常模式(或CTC或PWM,取决于定时要求)

从手册中:

不建议使用输出比较在正常模式下生成波形,因为这将占用太多的CPU时间

为了在CTC模式下生成波形输出,可以通过将比较输出模式位设置为切换模式(COM1A1:0=1),将OC1A输出设置为在每个比较匹配上切换其逻辑电平