Professional Documents
Culture Documents
Unidad 3 Timer2
Unidad 3 Timer2
TempTMR2 = [Preescaler*(PR2+1)*Postscaler]*Tinstr
Donde
Preescaler = Valor del preescalador
PR2 = Valor cargado al registro PR2
Postscaler = Valor del post-escalador
Tinstr = 4/frecuencia de oscilación
TempTMR2 = Temporización dada en segundos
PR2 = [(TempTMR2/Tinstr)/(Preescaler*Postscaler)]-1
Se desea complementar el valor del puerto B cada 50ms. Se estará revisando que se haya cumplido el tiempo de
la temporización chequeando la bandera TMR2IF. Utilizando la expresión de la precarga y utilizando el
preescalador y el post-escalador más grande (16) obtenemos el valor que necesitamos cargar al registro PR2
para obtener una temporización de 50mS.
Ya que no podemos cargar números fraccionarios el valor del registro PR2 necesario es 194. El código del
programa sería el siguiente: