Abaixo consta o codigo que programei para rolar os textos sem a inclusão do B5 para fazer os incrementos em cada contador. Muito obrigado pela ajuda.
cpp code
#include <button.c>
#include <LCD.C>
#define LCD_ENABLE_PIN PIN_D0
#define LCD_RS_PIN PIN_D1
#define LCD_RW_PIN PIN_D2
#define LCD_DATA4 PIN_D4
#define LCD_DATA5 PIN_D5
#define LCD_DATA6 PIN_D6
#define LCD_DATA7 PIN_D7
#include <lcd.c>
#int_rb
int Cont;
INT1 SW1;
BOOLEAN ISPRESSED=FALSE; // Boolean logic=0;
// Declare variable
void main()
{
port_B_pullups(0xFF);
setup_adc_ports(AN0);
lcd_init();
lcd_init();
int8 cont;
cont = 0;
WHILE(true)
{
SW1=INPUT(PIN_B4); // Positive input
SET_ADC_CHANNEL(0); // INPUT AN0
DELAY_US(50);
IF (SW1 && !ISPRESSED)
{
DELAY_MS(10);
SW1=INPUT(PIN_B4);
{
ISPRESSED=TRUE;
{
{
switch(cont)
{
case 1:
lcd_putc("\f TEXTO1");
lcd_gotoxy(7,2);
lcd_putc("1000");
if (SW2)
break;
case 2:
lcd_putc("\f TEXTO2");
lcd_gotoxy(7,2);
lcd_putc("2500");
break;
case 3:
printf(lcd_putc,"\f");
lcd_gotoxy(2,1);
lcd_putc("TEXTO3");
lcd_gotoxy(7,2);
lcd_putc("15000");//mensagem e posicionamento no LCD
break;
}
cont++;
if(cont >= 4)
cont = 1;
}
delay_ms(50); // Required for button() function
}
}
}
}
IF(!SW1) // This line must be here
{
ISPRESSED=FALSE; // This line must be here
}
}
}
}
}