Está en la página 1de 7

15/10/2019 Interrupciones externas atmega8 Hetpro-Store

Aviso de Privacidad Arduino E. Analógica FPGA Microcos Otros PCB Programación T. de desarrollo Mbed QT Creator Raspberry-PI

TIENDA FABRICACIÓN DE PCB

BUSCADOR
 Home  Microcontroladores  AVR  Interrupciones externas
Busca tutoriales

Interrupciones externas
Buscar
 Administrador  abril 15, 2014  AVR  8 comentarios

DESCRIPCIÓN DE LAS INTERRUPCIONES


EXTERNAS
El push button estará conectado al microcontrolador el cual se encuentra configurado para las
interrupciones externas, esto es, que el programa deja de hacer lo que está haciendo para atender
las interrupciones externas y ejecutar las instrucciones dentro esta función, que para este caso es
prender el LED que se encuentra conectado al microcontrolador. para mayor informacion visita
http://es.wikipedia.org/wiki/Interrupci%C3%B3n

DIAGRAMA ESQUEMÁTICO

Diagrama Interrupcion externa


https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 1/7
15/10/2019 Interrupciones externas atmega8 Hetpro-Store

MATERIALES

1 Push Button
1 Resistencia de 220 Ohms
1 Resistencia de 1 kOhms
1 LED
1 Microcontrolador ATmega8
Programador USBasp V3.0

INTRODUCCIÓN
INTERRUPCIÓNES EXTERNAS
Las interrupciones externas en el ATmega8 son activadas con los pines INT0 y INT1, en caso de
que se habiliten las interrupciones externas los pines INT siempre activaran alguna interrupción
sin importar como se haya configurado el puerto en el que estos pines se encuentren. Las
interrupciones externan se habilitan cuando la entrada del pin, cambia de estado, se puede
configurar si se requiere que se active cuando cambia de un estado bajo a uno alto o viceversa.

RESISTENCIA DE PULL DOWN


Cuando se conecta un pin del microcontrolador a un switch este al presionarlo nos presenta un
nivel alto en el pin, pero cuando este está abierto con la resistencia de pull down aseguramos un
cero o nivel bajo en el microcontrolador.

CATEGORÍAS

Elegir categoría

HETPRO TUTORIALES
En esta pagina encontraras tutoriales en
Diagrama de resistencia de pull down programación y electrónica.

Tratamos temas de tecnología básica,


media y avanzada. Este blog es creado y
mantenido por HETPRO.

Aquí encontraras los tutoriales de temas


Resistencia de pull-down: como Arduino, Raspberry Pi, ARM,
Beaglebone, PCBs, C/C++, entre otros. Si
quieres un tutorial en especial déjanos un
comentario, quizás nos pongamos a
realizarlo.

Somos personas interesadas en la


tecnología con experiencia en la docencia.
Nos gusta la filosofía del Software y
Hardware libre. Nuestra misión es
compartir nuestra experiencia con la
mayoría de las personas posibles.

Si te gustan nuestros tutoriales, puedes


dejarnos un like y/o compartirlo en tus
redes sociales. 
https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 2/7
15/10/2019 Interrupciones externas atmega8 Hetpro-Store
Esquematico del push-botton

ETIQUETAS
PROGRAMA EN C
ADC Amplificador
 Amplificador operacional Arduino
#include <avr/io.h>
#include <avr/interrupt.h> //Libreria necesaria para manejar las inte Arduino UNO Audio AVR
#include <util/delay.h> C# Circuito integrado Contador

int main (void) { convertidor corriente Cuantex


DDRB=0xFF; Diodo Divisor de voltaje

cli(); //Desactiva las interrupciones globales Electronica ESP8266 I2C


IDE Interruptor Iot labView
MCUCR=0x03;
GIFR =0x40; LCD LED ley de ohm
GICR=0x40;
MOSFET Op-Amp OpAmp
sei(); //Activar las interrupciones globales PCB Potenciometro RC522

while(1){ Resistencia Sensor


} sensor de temperatura Serial
}
Servidor Web SPI Temperatura
ISR(INT0_vect) //Vector de interrupción externa del INT0 Transistor Transistor MOSFET
{
PORTB=0x01; UART Visual Basic
_delay_ms(2000);
Visual Studio voltaje Web
PORTB=0x00;
}

DETALLES DEL PROGRAMA



<pre>#include <avr/interrupt.h>

Cada que se use alguna interrupción externa es necesario llamar a la librería avr/interrupt.h que
es la que contiene todos los vectores de interrupción de los AVR’s.


cli();

Esta instrucción deshabilita las interrupciones.


<pre> sei();

Habilita las interrupciones.


https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 3/7
15/10/2019 Interrupciones externas atmega8 Hetpro-Store


MCUCR=0x03;

tabla de valores de bit

Al asignársele un 0x03 le estamos indicando que active los bits 0 y 1 los cuales para el registro
MCUCR nos indican de que manera se active la interrupción, como se puede ver en la tabla, hay
cuatro opciones que son: El nivel bajo de INT1, Cualquier cambio lógico, El flanco de bajada y
El flanco de subida. Con los bits 0 y 1 en unos, tenemos habilitada la opción del flanco de
subida.

interrupciones


GIFR =0x40;

Bits

0x40 = 0b01000000, esto es, que estamos seleccionando el bit 6 del registro GIFR el cual nos
indica que al activarlo limpiamos la bandera INTF0.


GICR=0x40;


https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 4/7
15/10/2019 Interrupciones externas atmega8 Hetpro-Store

Bits

Al igual que en el registro pasado se está activando el bit 6 del GICR el cual nos indica que se
usara el pin INT0 para la interrupción externa.

Share 13 Like 13

Related Posts
Matriz de LEDs 5×7

ADC del ATmega8


Programacion Bluetooth con
salida a relevador

Comunicación serial USART ADC AVR


AVR

Programador USBasp:
agregar dispositivos

8 Comments
Joseba Arguinzoniz Alcoba SEPTIEMBRE 25, 2014
Tengo una duda sobre las interrupciones: tengo un acelerometro el cual quiero que genere en mi
micro-controlador una interrupción, en caso de que sufra cualquier perturbación, ¿podría
conectar el pin INT del sensor directamente a una patilla i/o del micro para que genere una
interrupcion en el micro?
Responder

Administrador SEPTIEMBRE 25, 2014 


Hola que tal Joseba, si eso puedes hacer, saludos.
Responder

Joseba Arguinzoniz Alcoba SEPTIEMBRE 27, 2014


hola, gracias por tu rapida respuesta, pero ahora tengo otra duda,¿cómo sabe el acelerometro que
tiene que generar un interrupción? o ¿como detecta el micro esa interrupción?

Responder

https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 5/7
15/10/2019 Interrupciones externas atmega8 Hetpro-Store

Oscar Blaga OCTUBRE 27, 2015


donde descargo la librería
Responder

Hector Torres NOVIEMBRE 9, 2015


Las bibliotecas que salen ahi, son las de defecto de WinAVR por lo que no
requieres descargar más bibliotecas. Saludos
Responder

Balam JULIO 27, 2017


No me reconoce para el ATMEGA8 la librería , uso AtmelStudio7.0, no sabrás si se maneja de
manera diferente las interrupciones para este micro??
Responder

Dr Hector Torres JULIO 31, 2017


Hola que tal Balam, acá no tenemos ningún problema. Podrías verificar que si
tengas en las carpetas del WinAVR/AtmelStudio la biblioteca que te marca como
inexistente.
Responder

Balam AGOSTO 2, 2017


Perdón, era una tontería, no había escrito el avr/ al inicio, pero tengo
otra duda, espero me puedas ayudar.
Trate de estableces diferentes tiempos para un _delay_ms() utilizando
constantes declaradas con #define constante 100, por ejemplo. Esto
lo llegue a utilizar en un ATMEGA16 sin problemas, pero en el
ATMEGA8 no me lo permite, es que acaso no se pueden declarar
constantes en este micro??
Responder

Escríbenos tus dudas o comentarios

Texto del comentario*

Name*

Email*

Website

Al usar este formulario accedes al almacenamiento y gestión de tus datos por parte de esta
web. *

Enviar comentario 
https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 6/7
15/10/2019 Interrupciones externas atmega8 Hetpro-Store
Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus
comentarios.

HETPRO/TUTORIALES Copyright © 2019.


https://hetpro-store.com/TUTORIALES/interrupciones-externas/ 7/7