Hola a todos, estoy iniciandome en la programacion en CCS, y estaba tratando de hacer un programa que mediante un pulsador, controle un contador, y muestre el valor en el LCD.
el contador va desde 1 a 3, es decir, cuando llega a 3 reinicia la variable a 1 y empieza de nuevo. este es mi codigo:
#include <LCD.C>
int8 i=0;
void main()
{
lcd_init();
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
setup_psp(PSP_DISABLED);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
set_tris_a(0b11111111);
lcd_putc(" Bienvenido ");
disable_interrupts(global);
output_high(PIN_C0);
output_high(PIN_D0);
loop:
if(input(PIN_A0)){
delay_ms(1000);
i = i + 1;
delay_ms(2500);
switch (i) {
case '1' : lcd_putc("\f1"); break;
case '2' : lcd_putc("\f2"); break;
case '3' : lcd_putc("\f3"); break;
case '4' : i = 1; lcd_putc("\f1"); break;
default : lcd_putc("\fMayor a 3"); break;
};
};
goto loop;
}
El programa, cuando se ejecuta (en proteus), al presionar el boton, muestra en la pantalla "Mayor a 3", es decir, no lee correctamente la variable, o el valor en la variable no es el que yo busco.
Desde ya gracias, y espero que me pueda ayudar.