• No se han encontrado resultados

5.7. El Temporizador 1

5.7.1. Configuraci´ on y Control del Temporizador 1

166 5.7. EL TEMPORIZADOR 1 Tabla 5.8: Registros del temporizador 1

Registro Direcci´on Operaci´on

TCNT1L (0x84) Registro del temporizador 1 (parte baja) TCNT1H (0x85) Registro del temporizador 1 (parte alta) ICR1L (0x86) Registro de captura de entrada (parte baja) ICR1H (0x87) Registro de captura de entrada (parte alta) OCR1AL (0x88) Comparador A del temporizador 1 (parte baja) OCR1AH (0x89) Comparador A del temporizador 1 (parte alta) OCR1BL (0x8A) Comparador B del temporizador 1 (parte baja) OCR1BH (0x8B) Comparador B del temporizador 1 (parte alta) TCCR1A (0x80) Registro A para la configuraci´on y control TCCR1B (0x81) Registro B para la configuraci´on y control TCCR1C (0x82) Registro C para la configuraci´on y control

TIFR1 0x16 (0x36) Registro de banderas

TIMSK1 (0x6F) M´ascara para activar las interrupciones

Figura 5.17: Organizaci´on del temporizador 1

168 5.7. EL TEMPORIZADOR 1 Bits FOC1x:Forzan u obligan un evento de comparaci´on, si se configur´o una respuesta autom´atica, esta tambi´en va a realizarse. La x puede ser A o B por los dos comparadores.

Bits CS1[2:0]: Bits de selecci´on de la fuente de reloj (Clock Select).

Bits ICNC1 e ICES1: A trav´es de estos bits se configura el recurso de captura de entrada.

Modos de Operaci´on

En los bits WGM1[3:0] se configura el modo de operaci´on del temporizador 1, en la Tabla 5.9 se muestran los diferentes modos, los cuales son:

Modo 0: El temporizador 0 solo genera eventos de desbordamiento.

Modos 1, 2, 3, 10 y 11:Modos de PWM con fase correcta, el temporizador autom´aticamente se incrementa de cero a su valor m´aximo y decrementa del valor m´aximo a cero, al coincidir con los registros de comparaci´on conmutar´a una salida seg´un la configuraci´on de los bits COM1x[1:0].

Modos 4 y 12: Son modos CTC (clear timer on compare match), en donde el temporizador 1 se limpia autom´aticamente despu´es de una coincidencia con el registro OCR1A o ICR1, seg´un el modo.

Modos 5, 6, 7, 14 y 15:Modos de PWM r´apido, el temporizador autom´ati- camente se incrementa de cero a su valor m´aximo, al coincidir con los regis- tros de comparaci´on conmutar´a una salida seg´un la configuraci´on de los bits COM1x[1:0].

Modos 8 y 9:Modos de PWM con fase y frecuencia correcta, son similares a los modos de PWM con fase correcta, cambia el momento en que se actualiza el registro de comparaci´on, el modo de fase correcta actualiza al registroOCR1x cuandoTCNT1llega a su valor m´aximo, y el modo de fase y frecuencia correcta lo hace cuando el registro TCNT1 llega a cero.

En el registro ICR1 se realiza la captura del temporizador 1, sin embargo, este registro es empleado en los modos 8, 10, 12 y 14 para establecer el valor m´aximo del temporizador. Al asignarle una funci´on alterna a este registro, la terminal ICP1 ser´a una entrada o salida general y no se podr´an realizar tareas de captura.

En los modos PWM donde MAXVAL es constante o se establece en el registroICR1, se pueden generar dos se˜nales en las salidas OC1A y OC1B, pero cuando el valor m´aximo se toma del registro OCR1A solo se puede generar una se˜nal en la terminal OC1B.

Tabla 5.9: Modos de operaci´on del temporizador 1

Modo WGM13 WGM12 WGM11 WGM10 Descripci´on MAXVAL

0 0 0 0 0 Normal 0xFFFF

1 0 0 0 1 PWM con fase correcta (8 bits) 0x00FF

2 0 0 1 0 PWM con fase correcta (9 bits) 0x01FF

3 0 0 1 1 PWM con fase correcta (10

bits)

0x03FF

4 0 1 0 0 CTC, el temporizador se lim-

pia ante una coincidencia

OCR1A

5 0 1 0 1 PWM r´apido (8 bits) 0x00FF

6 0 1 1 0 PWM r´apido (9 bits) 0x01FF

7 0 1 1 1 PWM r´apido (10 bits) 0x03FF

8 1 0 0 0 PWM con fase y frecuencia co-

rrecta

ICR1

9 1 0 0 1 PWM con fase y frecuencia co-

rrecta

OCR1A

10 1 0 1 0 PWM con fase correcta ICR1

11 1 0 1 1 PWM con fase correcta OCR1A

12 1 1 0 0 CTC, el temporizador se lim-

pia ante una coincidencia

ICR1

13 1 1 0 1 Reservado -

14 1 1 1 0 PWM r´apido ICR1

15 1 1 1 1 PWM r´apido OCR1A

Tabla 5.10: Configuraci´on de la respuesta autom´atica (x puede ser A o B) COM1x1 COM1x0 Descripci´on

Modos Normal y CTC

0 0 OC1x desconectado

0 1 Conmuta OC1x

1 0 OC1x es puesto en bajo 1 1 OC1x es puesto en alto

Modos PWM

0 0 OC1x desconectado

0 1 Reservado (sin uso)

1 0 Modo no invertido

1 1 Modo invertido

Respuesta autom´atica

En los bitsCOM1x[1:0] se configura la respuesta autom´atica para las salidas OC1x ante coincidencias por comparaci´on, la x puede ser A o B porque el recurso tiene dos comparadores. La configuraci´on de estos bits es diferente para los modos normal y CTC, con respecto a los modos PWM, como se muestra en la Tabla 5.10.

Selecci´on de Reloj

La selecci´on de la se˜nal de reloj est´a determinada por los bits CS1[2:0], los cuales son descritos en la Tabla 5.11. Estos bits se conectan directamente a los bits de selecci´on del multiplexor del preescalador (Secci´on 5.3). Despu´es de un reinicio, el temporizador 1 est´a detenido porque no tiene una se˜nal de reloj que lo active.

170 5.7. EL TEMPORIZADOR 1 Tabla 5.11: Bits para la selecci´on del reloj en el temporizador 1

CS12 CS11 CS10 Descripci´on

0 0 0 Sin fuente de reloj, temporizador 1 detenido

0 0 1 CLKI/O (sin divisi´on)

0 1 0 CLKI/O/8

0 1 1 CLKI/O/64

1 0 0 CLKI/O/256

1 0 1 CLKI/O/1024

1 1 0 Fuente externa en T1, por flanco de bajada 1 1 1 Fuente externa en T1, por flanco de subida

Captura de Entrada

Un cambio en la terminal ICP1 hace que el valor de TCNT1 se copie en el registro ICR1. El registro TCCR1B incluye a los bits ICNC1 e ICES1 para el manejo de este recurso.

El bitICNC1(Input Capture Noise Canceler) activa un eliminador de ruido, haciendo que la se˜nal de entrada se filtre por cuatro muestras sucesivas, de manera que una captura se realiza solo si el cambio en ICP1 es estable.

Con el bit ICES1 (Input Capture Edge Select) se selecciona el flanco de activaci´on de la captura, un 0 en ICES1hace que la captura se realice con un flanco de bajada en ICP1 y con un 1 el flanco de activaci´on es de subida.

Debe notarse que el recurso de captura generalmente est´a activo, sin embargo, mien- tras la banderaICF1no se eval´ue o no se habilite su interrupci´on, el valor del registro ICR1 ser´a ignorado. Las capturas se omiten en los modos 8, 10, 12 y 14, en donde el registro ICR1 es usado para establecer el valor m´aximo del temporizador 1.