Hetpro USBasp V3.0 Guía De Usuario página 46

Tabla de contenido
Guía de Usuario USBasp V3.0| HeTPro
ISR(INT0_vect){
PORTB++;
PORTC=0x01;
_delay_ms(100);
PORTC=0x00;
if(PORTB > 0xFF)
PORTB=0;
else;
}
El vector de interrupción para INT0 (Cada vector de interrupción tiene su nombre
distinto, revisar en la hoja de datos), El programa llega a esta función cuando un
cambio de 0 a 1 en el pin INT0 es detectado (en este caso generado por un
pulsador), al entrar a la función lo que hace es ejecutar el comando PORTB++ el
cual nos indica un incremento en uno, por lo tanto el valor de PORTB=PORTB+1.
Después se activa el bit0 del puerto C y se le da un retraso de 100 milisegundos
para después apagarlo, esto con la finalidad de mostrar en un LED un indicador de
que entro la interrupción. Casi al final se puede ver una condición if la cual se
puede entender como "Si el PORTB es mas grande que 255 entonces PORTB vale
cero, si no, no hagas nada".
//Incrementa el valor en el PORTB; ++ = incrementar en 1
//Se activa el bit0 del PORTC
//Esperar 100 ms
/Se desactiva el bit0 del PORTC
//Si el PORTB es mayor a 0xFF (255 ó 0b11111111)
//Si si - Port B vueve a ser 0
//Si no - no hace nada
45
Tabla de contenido
loading

Tabla de contenido