clase timer1

6
Temporizacione s Timer1. Profesor : Ing. Rubén Acosta Jacinto

Upload: luis-alberto-azabache-anhuaman

Post on 11-Apr-2015

13 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Clase Timer1

Temporizaciones Timer1.

Profesor : Ing. Rubén Acosta Jacinto

Page 2: Clase Timer1

El TMR1 es un contador/temporizador de 16 bits. Trabaja con dos registros de 8 bits,TMR1H y TMR1L. Los pulsos de reloj incrementan primero al TMR1L y cuando este se desborda incrementa al TMR1H, al desbordarse este último (quiere decir que la cuenta total pasa de 0xFFFF a 0x0000) el señalizador TMR1F=1 de manera automática. Para que el TMR1 cuente debe encontrarse habilitado, para esto el bit TMR1ON=1. Los pulsos de reloj pasan previamente por un circuito que puede dividir la señal de

reloj en un factor de x1, x2, x4, x8.

TIMER 1

Page 3: Clase Timer1

modo temporizador cuando TMR1CS=0.

Contador de eventos externos (si TMR1CS=1 y T1OSCEN=0)

Oscilador EXTERNO (si TMR1CS=1 y T1OSCEN=1) con un cristal diferente

al oscilador principal.

Page 4: Clase Timer1

T1CKPS1:T1CKPS0: bits que seleccionan el pre-divisor del TImer111=1:8 valor del prescaler10=1:4 valor del prescaler01=1:2 valor del prescaler00=1:1 valor del prescaler

T1OSCEN: Bit de control que habilita el oscilador1= Habilita el oscilador interno0= Inhabilita el oscilador interno

T1SYNC: bit de sincronización de entrada de reloj externo del Timer11= No sincroniza la entrada del reloj externo0= sincroniza la entrada del reloj externo

TMR1CS: bit que selecciona la fuente de reloj1= Reloj externo del pin RC0/T1SC0/T1CKI (en el flanco de subifa)0=Reloj interno de Fosc/4

TMR1ON: bit que habilita al Timer11=Habilita el Timer10=Detiene el Timer1.

Page 5: Clase Timer1

La generación de base de tiempo se basa en que el registro TMR1 debe de indicar al

CPU el instante en que ha transcurrido el tiempo utilizando el señalizador de

desbordamiento, en este caso es el bit TMR1IF.

Así tenemos la siguiente ecuación de retardo:

Donde el valor que se debe de cargar en el registro TMR1 es:

Es decir, el Timer1 inicia su cuenta desde (65536-cuenta) hasta 65535.

Retardos con el TIMER1

Page 6: Clase Timer1

Ejemplo:

¿Cómo generar una señal periódica de 60Hz utilizando el Timer1 del PIC16F877A

trabajando con un cristal de 20 MHz?

Solución:

El período 8333us (nivel alto) + 8333uS (nivel bajo)

= 0x5D3F.

Entonces TMR1H=0x5D y TMR1L=0x3F

El conteo se inicia en 23871 hasta 65535 hay (41665 ticks) x 1 x 0.2uS = 8333 uS