¡¡¡Ya está!!!
Codigo:
#include <16f873.h>
#fuses XT, NOPROTECT, NOWDT, NOPUT, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=4000000)
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
int16 pulsos;
int16 interrupcion;
int16 velocidad;
#int_RTCC
RTCC_isr()
{
interrupcion++;
if(interrupcion==100)
{
pulsos=get_timer1();
velocidad=pulsos*60;
printf("%lu ",pulsos);
printf("%lu ",velocidad);
delay_ms(2000);
interrupcion=0;
set_timer1(0);
set_rtcc(177);
}
}
main()
{
set_tris_c(0x01);
enable_interrupts(GLOBAL);
enable_interrupts(INT_RTCC);
setup_timer_0 ( RTCC_INTERNAL | RTCC_DIV_128);
set_rtcc(177); //10ms -> 10000us -> 10000/128=78 -> 255-78=177
setup_timer_1(T1_EXTERNAL | T1_DIV_BY_1);
set_timer1(0);
interrupcion=0;
while(true)
{
//el programa principal que estaria haciendo, esperando a la interrupcion
}
}