TEMPORIZADOR
El módulo TIMER0, puede ser configurado como CONTADOR o como TEMPORIZADOR
Módulo TIMER0 como TEMPORIZADOR:
Para Configurar el Módulo TIMER0 como TEMPORIZADOR, tomaremos en cuenta lo siguiente:
El Registro de Control para el TIMER0 es T0CON
Acrivar el Timer0 TMR0 (T0CON<7>).
TMR0=1 Habilitado.
TMR0=0 Deshabilitado.
Definir el Tamaño del Registro de Trabajo del TIMER0 T08BIT (T0CON<6>)
T08BIT=1 8 Bits.
T08BIT=0 16 Bits.
Asignar el origen de la Fuente de Reloj a la Frecuencia de Trabajo.
T0CS=0 Fuente de Reloj Interna.
Activar el prescaler para el TIMER0.
PSA=0 prescaler activo.
PSA=1 Prescaler desactivado.
Establecer un valor para el Prescaler.
T0PS2:T0PS1
000=1:2
001=1:4
010=1:8
011=1:16
100=1:32
101=1:64
110=1:128
111=1:256
La siguiente función configura el módulo timer0 de la siguiente manera:
TMR0=0 Deshabilitado.
T08BIT=1 8 Bits.
T0CS=0 Fuente de Reloj Interna.
PSA=0 prescaler activo.
T0PS2:T0PS1
111 1:256.
Cuando invocamos la función, le cargamos un argumento, este argumento es el valor para cumplir el retardo deseado.
void TIMER0 (unsigned int a){
T0CON=0B01000111;
TMR0L=a;
}
Diapositivas
* Para configurar el TIMER0 como contador, la entrada de reloj externa es la linea 4 del puerto "A" "RA4".
Comentarios
Publicar un comentario