Microcontrolador M16C
Diseño con Microcontroladores
Universidad de Málaga
Grado en Ingeniería De Computadores
TEMPORIZADORES E INTERRUPCIONES
Páginas
1.
2.
3.
4.
5.
6.
Introducción …......................................................................................................pág. 2 - 4
Control del parpadeo de undiodo..........................................................................pág. 5 - 14
Música....................................................................................................................pág. 15 - 18
Generador de ondas PWM (Pulse Width Modulation)..........................................pág. 19 - 25
Polarización de un motor paso a paso (stepper motor)..........................................pág. 26 - 30Bibliografía............................................................................................................pág. 31
Objetivos:
•
•
•
•
Trabajar con los puertos E/S y el temporizador A0.
Controlar las interrupciones del temporizador y conocer las limitaciones del
sistema de desarrollo.
Trabajar con distintos puertos y temporizadores en modo PWM.
Estudiar la funcionalidad y elcomportamiento de los motores paso a paso.
Curso 2013/2014
Miron, Vadim
Kastit, Abdelmounaim
1
Departamento De Electrónica
Diseño con Microcontroladores
Universidad de Málaga
Grado en Ingeniería De Computadores
Introducción
En el M16C/62A se dispone de 11 temporizadores de 16-bits cada uno, etiquetados
como temporizadores A (5 de ellos) y temporizadores B (6). Todos lostemporizadores trabajan de
forma independiente.
Temporizadores tipo A y B
Los temporizadores A tienen 4 modos de funcionamiento:
•
Modo temporizador: se realiza la cuenta desde una fuente interna, el reloj.
•
Modo contador de eventos: se realiza la cuenta desde una fuente externa o por
desbordamiento de otro temporizador.
•
Modo un-disparo (one-shot): la cuenta se para al llegar acero.
•
Modo PWM, modulador de la anchura de pulso (Pulse Width Modulation): se puede
modificar la anchura de pulso.
Los temporizadores tipo B tienen tres modos de funcionamiento:
•
•
•
Modo temporizador: Realiza una cuenta desde una fuenta interna, el reloj.
Modo contador de eventos: Realiza la cuenta desde una fuente externa o por
desbordamiento de otro temporizador.
Modo medidade ancho de pulso: El temporizador mide el período del pulso de una señal
externa o la anchura del pulso.
Watchdog
El temporizador watchdog (perro guardián) tiene la función de detectar si el
programa está fuera de control. El temporizador watchdog es un contador de 15 bits con cuenta
descendente de los ciclos de reloj derivados usando una preescalado. La interrupción del
temporizadorWatchDog ocurre cuando se produce un desbordamiento en la cuenta del
temporizador WatchDog.
2
Departamento De Electrónica
Diseño con Microcontroladores
Universidad de Málaga
Grado en Ingeniería De Computadores
El período del temporizador WatchDog se calcula como:
Interrupciones
Las interrupciones son necesarias para trabajar en tiempo real y se utilizan para la
conexión delmicrocontrolador con los periféricos, con el objetivo de sincronizar la ejecución del
programa con las entradas y salidas de datos.
Es una clase de subrutina especial, diferenciándose en la forma de activación. La interrupción se
puede producir en cualquier momento durante la ejecución del programa principal, pues no tiene
una dirección específica de llamada.
- Tratamiento de la rutina deinterrupciones:
1. Recibe solicitud de interrupción (esto es, un impulso de la señal de
2.
3.
4.
5.
activación de
interrupción).
Se guarda en la pila de memoria la dirección de retorno al programa principal y los valores
de las banderas del registro flag (registro FLG).
Se carga en el contador de programa (PC) la dirección de la rutina de atención a la
interrupción.
Se ejecuta la...
Regístrate para leer el documento completo.