Estou montando um menu lcd. E por ser leigo em programação gostaria de alguma dica.
Fiz 2 case um como se fosse uma tela de apresentação escrito "Arduino", na outra tela que usei o nome"Numero de pulsos" quero poder alterar esse numero através dos botões, navego entre os menus pelos botões 1 e 2 e quando aperto o 3 nesse caso com o 1 e 2 conseguir alterar, diminuir e aumentar o numero de pulsos e clicando novamente no botão 3 sair. Minha maior divida está nessa parte do código que esta sublinhado, não to sabendo montar. Agradeço se alguém puder contribuir.

 

#include <LiquidCrystal.h>

int contador=0;

int pulsos=0;

const int botao = 5;

const int botao2 = 6;

const int botao3 = 7;

boolean troca = false ;

boolean troca1 = false ;

boolean troca2 = false ;

LiquidCrystal lcd(13, 12, 11, 10, 9, 8);

 

void setup() {

lcd.begin(16, 2);

pinMode(botao, INPUT);

pinMode(botao2, INPUT); 

pinMode(botao3, INPUT);

digitalWrite(botao, HIGH);

digitalWrite(botao2, HIGH);

digitalWrite(botao3, HIGH);

}

 

void loop() {

int estado =0;

int estado2 =0;

int estado3 =0;

//faz a leitura do estado dos botoes

estado = digitalRead(botao);

estado2 = digitalRead(botao2);

estado3 = digitalRead(botao3);

//controle da sequencia do menu

if (estado == HIGH) {    

delay(100); 

contador=contador+1;

}

if (estado2 == HIGH) {    

delay(100); 

contador=contador-1;

}

if (contador<0){

contador=3;

}

switch(contador){

case 0:

lcd.setCursor(0, 0);

lcd.print("Numero de pulsos:    ");

if (digitalRead(botao3)==HIGH)

if (estado == HIGH) {   

delay(100); 

pulsos=pulsos+1;

}

if (estado2 == HIGH) {    

delay(100); 

pulsos=pulsos-1;

lcd.setCursor(0, 1);

lcd.print(pulsos);

}

break;

case 1:

lcd.setCursor(0, 0);

lcd.print("Arduino         ");

break;

default:

contador=0;

pulsos=0;

}

}

Exibições: 204

Responder esta

Respostas a este tópico

Pessoal, preciso mesmo uma ajuda com essa dúvida, se alguém puder dar alguma dica.

Obrigado

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço