TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: cucu en 19 de Febrero de 2009, 09:21:56
-
hola, tengo una duda en el cálculo de mi preescaler del timer0.
Quiero calcular las vueltas que dará en un segundo, con lo que, mi idea sería:
1seg = (vueltas.preescaler)/frecuencia.
Siendo frecuencia la de mi reloj, ¿es así?
Gracias. saludos
-
primero debes saber el tiempo que demora en desbordar el timer0, es decir de pasar de 0 a 255, ese tiempo depende del preescaler. existe una formula:
Periodo del TMR0 = 4 x 1 x Preescaler x (255- Valor cargado en Timer0)
Fxtal
entonces por decir, para un Xtal de 4MHZ, un preescaler de 256, y le cargas valor 0 en timer0 entonces:
Periodo TMR0 = 0.0625
Para 1seg = 16x 0.0625
-
Gracias. pero cuna duda más. cuando necesito exactitud,
vueltas = 255-valor del timer
Según la fórmula me salen 5 vueltas, el valor del timer es 249,250 o 251? es que me hago un lio exagerao! Gracias. Saludos.