Que puedo estar haciendo mal. No me funciona el programita,
#include <16F877.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP
#use delay(clock=20000000)
#include <lcd.c>
long int pulsos=0;
void main(void)
{lcd_init();
set_tris_b(0xfe);//Pin RB0 del puerto B como salida, el resto como entrada
disable_interrupts(global);// Toda las interrupciones desactivadas
do{
if(input(Pin_b1==0)){ // si se presenta un cero en el pin B1 del puerto
pulsos++;}//incremento la variable
//delay_ms(50);//retardo de incremento
lcd_gotoxy(1,1);//Para escribir siempre en la misma posición
printf(lcd_putc,"pulsos= %lu",pulsos); //presento la variable por el lcd
}while(true); //ciclo infinito
}