INTERRPCIONES ARDUINO
SML-400-A
INTERRUPCIONES (IRQ)
Cat. Ing. L. Cazorla CH.
Las interrupciones son utilizadas para aprovechar de mejor manera la potencialidad de unmicroprocesador o microcontrolador, ya que solo responde a un suceso si es necesario, y no consultar a cada momento el estado de un suceso (spooling), que en ese caso solo está dedicado a realizar esetrabajo, en cambio las interrupciones permite realizar otros trabajos, mientras no sucede la petición de atención de un suceso.
GESTION DE UNA INTERRUPCION.
Arduino UNO tiene dos interrupcionesexternas (existen interrupciones internas), y el MEGA tiene 6 interrupciones externas.
ARDUINO UNO
PIN DIGITAL 2 PD2 INTERRUPCION 0 INT0
PIN DIGITAL 3 PD3 INTERRUPCION 1 INT1
ARDUINO MEGA tiene 4mas, en total son 6 interrupciones.
PD0 INT0
PD1 INT1
PD2 INT2
PD3 INT3
attachInterrpt(nint, nfuncion, modo)
Para trabajar con una de las interrupciones en ARDUINO, se utiliza este comando, que va enel SETUP.
nint=numero de interrupción (INT0, INT1…).
nfuncion=nombre de la función que debe trabajar (subrutina) cuando ocurre la interrupción.
modo= Aquí se tiene varios enfoques, esto esconfigurar la parte del hardware para activar la interrupción:
1.- Por flanco de subida o bajada.
2.- Por nivel, en ARDUINO se trata como:
3.- LOW, dispara la interrupción cuando el pin pasa a valorbajo(nivel Bajo).
4.- HIGH, dispara la interrupción cuando el pin pasa a valor alto(nivel Alto).
5.- CHANGE, dispara la interrupción cuando el pin cambia de valor(flanco de subida o bajada).
6.- RISING,dispara la interrupción cuando el pin pase de LOW a HIGH (flanco subida).
7.- FALLING, dispara la interrupción cuando el pin pasa de HIGH a LOW(flanco de bajada).
Las interrupciones son posibles deser habilitadas o inhabilitadas, con las siguientes instrucciones:
noInterrupts(), desactiva la ejecución de interrupciones hasta nueva orden.
interrupts(), reinicia las interrupciones definidas con...
Regístrate para leer el documento completo.