Sie sind auf Seite 1von 4

Computadoras Digitales Juan Navarro 20-70-1999

Cdigo 6314 Giacomo Echevers 8-878-1829


Laboratorio N6
El Timer Input Capture

Pre-Lab
Como primer paso en la realizacin de este laboratorio nos enfocamos en realizar las partes de las guas
que nos ayudaran a resolver los ejercicios propuestos en laboratorio. Para ello se incluye la siguiente
figura que se usar de referencia para diferentes puntos de este experimento.

Explorar 1

1. Cmo los bits en TIOS deben inicializarse para el canal a utilizar como captura de entrada?
Los bits en el registro TIOS deben resetearse, es decir, colocarse a cero para que el canal a
utilizar se tome como canal de captura de entrada. En la siguiente figura se muestra las
caractersticas del registro TIOS.

2. Cules son los estados de los bits en TIOS cuando el microcontrolador es re-inicializado?
Cuando el microcontrolador es re-inicializado, los bits en el registro TIOS se restean todos, es
decir, se colocan en cero, como vemos en la figura de arriba.
Computadoras Digitales Juan Navarro 20-70-1999
Cdigo 6314 Giacomo Echevers 8-878-1829
3. Cmo se escoge el flanco de la seal de disparo del input capture?
El flanco de la seal de disparo del input capture se escoge colocando unos o ceros en los
registros TCTL3 y TCTL4. Dependiendo de la combinacin entre de ceros y unos en ambos
registros se decide si escoger flanco de subida, bajada, ninguna o ambos.

4. Complete la tabla de verdad mostrando el flanco seleccionado para la seal de disparo del input
capture.

Deshabilita la captura de entrada


Captura en flancos de subida solamente
Captura en flancos de bajada solamente
Captura en ambos flancos (subida y bajada)

Explorar 2

1. Qu bits deben inicializarse para usar las interrupciones de input capture?


Para usar las interrupciones de Input Capture debemos habilitar la interrupcin en el registro
TIE, colocando CnI = 1, para que el microcontrolador sepa que se trabajar con una interrupcin
con el input capture. Tambin debemos, colocar I = 0 para permitir interrupciones en el
microcontrolador, y por otra parte debemos inicializar la bandera de interrupcin a 1, colocando
CnF = 1 (para ambos casos n representa el bit utilizando como canal de captura de entrada).

2. Qu direccin de vector de interrupcin usara para captura de entrada por el canal 1?


El vector de direccin de interrupcin que se usara para captura de entrada por el canal 1 sera
el mismo vector de direccin que el canal 1 del output compare. La direccin sera:
$FFEC : $FFED.
Computadoras Digitales Juan Navarro 20-70-1999
Cdigo 6314 Giacomo Echevers 8-878-1829
Informe

Metas del Experimento

Las metas de este experimento son aprender a utilizar el temporizador del microcontrolador por
medio de la investigacin de las caractersticas de la Captura de Entrada (Input Capture). Por
otro lado, se ver el hardware implicado y se buscar entender qu se tiene que inicializar para
utilizar ste dispositivo. Tambin aprenderemos acerca de sus habilidades de interrupcin.

Procedimiento y Resultados

Se procedi a desarrollar las partes indicadas en la gua del laboratorio.

Estimular 1

1. Escribe una pequea seccin de cdigo que seleccionar un flanco positivo para captura de
entrada sobre el canal 2.
En lenguaje C sera:
TIOS = TIOS & ~0x04 /* Habilita el canal 2 como input capture */
TCTL4 = 0x10 | /* Captura en flanco ascendente */

2. Disee un segmento de programa utilizando pseudo-cdigo para medir el perodo en ciclos de


reloj de una forma de onda digital.

Para medir el periodo de una seal desconocida, debemos configurar la opcin de input capture
para medir el intervalo de tiempo entre dos flancos de subida o bajada de la seal desconocida,
como se ve ilustra en la figura.

El pseudo-cdigo sera:

Habilitar la captura de flanco de subida.


Habilitar el contador
Resetear la bandera CnF
Guardar la captura (TCn)
Resetear la bandera CnF
Esperar a que la bandera CnF sea 1.
Tomar la diferencia entre el segundo valor capturad (TCn) y el primer valor guardado.

3. Asumiendo un reloj de 8 MHz de TCNT y que el desbordamiento del temporizador es ignorado,


Cul es el mximo perodo (frecuencia mnima) que su segmento de programa puede medir?
Sabemos que la el mayor periodo que puede medir el microcontrolador con dicha frecuencia de
reloj es:
216 65536
Periodo mximo = = = 8.192 mseg
8 MHz 8 MHz

La frecuencia mnima correspondiente sera:


1
Frecuencia mnima = = 122.1 Hz
8.192 mseg
Computadoras Digitales Juan Navarro 20-70-1999
Cdigo 6314 Giacomo Echevers 8-878-1829

Ejercicio de Habilidad 1

1. Utilizando los recursos de su kit de laboratorio y un generador de seal, demuestre al asistente


de laboratorio que usted puede utilizar la captura de entrada para medir el perodo de una forma
de onda.
Primero debemos tomar en cuenta que nuestro microcontrolador tiene una frecuencia de bus de
2 MHz sin preescalar, por lo tanto el mayor periodo que podemos medir est dado por
216 65536
Periodo mximo = = = 32.768 mseg
2 MHz 2 MHz
Ahora como no conocemos la onda que vamos a medir, utilizaremos el pre-escalar de 64, para
poder medir ondas con periodos de tiempo ms largos.
216
Periodo mximo = = 2.097 seg
(2 MHz)/64

El programa para medir el periodo de una onda sera:

Conclusiones
En conclusin pudimos observar que el temporizador de la HCS12 tambin se puede usar para contar,
detectar, y medir el tiempo de eventos que suceden fuera de la HCS12. El circuito del temporizador
(timer) incluye un Sistema de Captura de Entrada que permite a nuestro programa el hacer sto.

Tambin vimos que debido a que las funciones de output compare e input capture usan mucho de los
mismos registros para hacer su trabajo, debemos utilizar el registro TIOS para seleccionar la funcin.
Por otro lado, la deteccin de flancos por algn canal de entrada, se determina con los dos registros
importantes dedicados a la funcin input capture y estos son: TCTL3 y TCTL4.

Informe Realizado por: Juan Navarro Giacomo Echevers

Das könnte Ihnen auch gefallen