Hola de nuevo, continuo con mi aventura
, he ampliado el programa para que al pulsar dos botones (pin_C0 y pin_C2), me desplace por un menu en el que me aparecen las diferentes unidades de medida de presion que posteriormente seleccionare. El problema es que no me detecta los pulsadores, es decir.. siempre me muestra el valor que le indico en "default". ¿alguien me puede ayudar?
#include <16F876.h>
#use delay(clock=20000000)
#define use_portb_lcd TRUE
#include <lcd.c>
#fuses HS, NOWDT, NOPROTECT, NOPUT, NOBROWNOUT, NOLVP
#use rs232(baud=9600, xmit=PIN_C6, rcv=PIN_C7)
char cad1[7]="BARES";
char cad2[12]="ATMOSFERAS";
char cad3[5]="PSI";
char cad4[14]="KILOPASCALES";
float medida=0;
int num=0;
void main()
{
lcd_init();
do
{
if (!input(PIN_C0)) num+=1;
else if (!input(PIN_C2)) num-=1;
else num=num;
Switch(num)
{
case '1':
lcd_putc("\f");
lcd_gotoxy(1,1);
lcd_putc("UNIDADES MEDIDA");
lcd_putc("\n");
printf(lcd_putc,"%s",cad1);
delay_ms(1000);
case '2':
lcd_putc("\f");
lcd_gotoxy(1,1);
lcd_putc("UNIDADES MEDIDA");
lcd_putc("\n");
printf(lcd_putc,"%s",cad2);
delay_ms(1000);
case '3':
lcd_putc("\f");
lcd_gotoxy(1,1);
lcd_putc("UNIDADES MEDIDA");
lcd_putc("\n");
printf(lcd_putc,"%s",cad3);
delay_ms(1000);
case '4':
lcd_putc("\f");
lcd_gotoxy(1,1);
lcd_putc("UNIDADES MEDIDA");
lcd_putc("\n");
printf(lcd_putc,"%s",cad4);
delay_ms(1000);
default:
lcd_putc("\f");
lcd_gotoxy(1,1);
lcd_putc("MEDIDOR PRESION");
lcd_putc("\n");
lcd_putc("Elegir unidades");
delay_ms(1000);
}
}while (true);
}