Hola a todos, estoy tratando de hacer funcionar el timer0 del pic16f873a, en ccs. Simplemente quiero que me muestre en un display la variación del tiempo, utilizando interrupción del timer0, he leído bastante, pero no logro visualizar los cambios en el display, y creo que es porque nunca entra a la función de interrupción.
Les muestro el codigo
#include <16F873a.h>
#fuses XT, NOWDT, NOPROTECT, NOPUT
#fuses NOLVP
#use delay(clock = 4000000)
#int_RTCC
#include <LCD420.c>
unsigned int seg=0,mi=0;
void RTCC_isr(void)
{
//lcd_init();
++seg;
if(seg==60)
{
seg=0;
mi++;
}
if(mi==60)
{mi=0;seg=0;}
lcd_gotoxy(1,4);
printf(lcd_putc, "T=%02u:%02u ", mi, seg);
set_timer0(0x83); //131
}
void main()
{
lcd_init();
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256); //65.5 ms overflow
enable_interrupts(INT_RTCC);
enable_interrupts(GLOBAL);
set_TIMER0(0x83);
while(true)
{
lcd_gotoxy(1,4);
printf(lcd_putc, "T=%02u:%02u ", mi, seg);
}
}
Gracias a todos!!!!