TODOPIC
Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: Tiri en 05 de Abril de 2011, 06:52:52
-
Hola,
me gustaria saber las formulas para calcular el periodo del timer. Estoy trabajando con un dsPIC33FJ. He hecho la configuracion gracias al assistente para configurar el timer de la familia 33F, que he encontrado por el foro, pero aun así me gustaria hacer los numeros por mi mismo. Los datos son:
Modo de trabajo del Timer: 16 bits
Timer: TMR1
Origen de los pulsos: Internos - Fcy
Frecuencia de instrucciones - Fcy (MIPS): 40 MIPS
¿Acumulación de tiempo a nivel alto (TGate)?: No
Prescaler: 1:256
Periodo del Timer: 65535
Activación del Timer (Ton): No
¿Sigue activo en modo Idle / Sleep?: Sí
Solucion: 419.42400000000003 ms.
He probado a jugar con los numeros para llegar a la solucion pero me falta algun factor que no tengo en cuenta.
Muchas gracias
-
A ver si puedo tratar de explicar el asunto...
FCY = 40Mips -> 40MHz -> que cada ciclo de instrucción dura 1/40M -> 25nS
El timer queda contando dichos pulsos pero con un divisor (prescaler) de 256, por lo tanto cada 256 pulsos sólo se incrementará en 1. Si ahora multiplicamos por el período que vos pusiste nos da 25nS * 256 * 65535 = 419.424ms
La idea es, duración el pulso * prescaler * periodo = tiempo total de la cuenta