#include <16f876.h>
#fuses XT,NOWDT
#use delay(clock=4000000)
#use standard_io(b)
int cont=0;
#INT_TIMER1 //Interrupción Timer1
void interrupcion()
{
cont++;
if (cont==8) //Cada 8 interrupciones de 4 segundos
{
cont=0;
output_low (PIN_B1);
}
set_timer1(3036) ;
}
void main ()
{
output_high (PIN_B1);
setup_timer_1 (T1_INTERNAL | T1_DIV_BY_8);
set_timer1 (3036); //recarga del TMR1 16 bit (256*256)= 65535 microsegundos
//4mhz * preescaler 8 * (65535-3036)=500000 microsegundos, 0,5 segundos
enable_interrupts(INT_TIMER1); //habilita interrupcion timer1
enable_interrupts(global); //habilita interrupción general
while(1)
{
}
}