avr单片机定时中断问题
请问,在做AVR单片机定时中断时,怎样确定预分频因子,和OCRn以及TCNT的值??? 要根据具体的应用综合考虑性能和控制精度等因素。 Atmega16,12M晶振。AD采样控制输出PWM(由于某种原因,不能使用定时器的PWM功能)PWM的脉冲周期是20ms,脉冲宽度在1ms-2ms间根据AD值变化,变化范围1ms。使用TC18分频的话,1ms=1500个时钟脉冲10位AD采样,最大1024,用于控制1ms(1500个时钟脉冲)的输出,对于10位AD采样来说,没有精度损失。另外,脉冲周期20ms=30000个时钟脉冲,小于TCNT1的最大长度65535,编程也方便很多。不分频的话,1ms=12000个时钟脉冲系统负担不说。AD采样只有1024,用于控制12000个时钟脉冲,精度没有提高,所以没有必要。另外,20ms=240000个时钟脉冲,大于65535,程序的复杂性增加。64分频,1ms=187.5个时钟脉冲AD采样的1024精度的不到发挥。如果这时仍能满足你的使用要求,大可以采用8位的AD转换(256)。从而可采用较低成本的其它芯片了。所以,在这个应用中,8分频是最佳选择。 手册里不是有公式么?仔细看一遍就OK的。
页:
[1]