Você está na página 1de 3

#include <LiquidCrystal.

h>
int contador = 0;
const int up = 8;
const int down = 9;
const int on = 10;
const int off = 11;
boolean troca = false ;
boolean troca1 = false ;
boolean troca2 = false ;
boolean troca3 = false;
//inicia o display e seleciona as entradas e saidas
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
void setup() {
lcd.begin(16, 2);
pinMode(up, INPUT_PULLUP);
pinMode(down, INPUT_PULLUP);
pinMode(on, INPUT_PULLUP);
pinMode(off, INPUT_PULLUP);
pinMode(A5, OUTPUT);
pinMode(A4, OUTPUT);
pinMode(A3, OUTPUT);
pinMode(A2, OUTPUT);
}
void loop() {
int estado = 0;
int estado2 = 0;
int estado3 = 0;
int estado4 = 0;
//faz a leitura do estado dos botoes
estado = digitalRead(up);
estado2 = digitalRead(down);
estado3 = digitalRead(on);
estado4 = digitalRead(off);
//controle da sequencia do menu
if (estado == LOW) {
delay(250);
contador = contador + 1;
}
if (estado2 == LOW) {
delay(250);
contador = contador - 1;
}
if (contador < 0) {
contador = 3;
}
//menu
switch (contador) {
case 0:

if (estado3 == LOW & troca == false ) {


troca = true;
}
if (troca == true & estado4 == LOW) {
troca = false;
}
lcd.setCursor(0, 0);
lcd.print("LED-1
");
lcd.setCursor(0, 1);
if (troca == 1) {
lcd.print("ON
");
digitalWrite(A3, HIGH);
} else {
lcd.print("OFF
");
digitalWrite(A3, LOW);
}
break;
case 1:
if (estado3 == LOW & troca1 == false ) {
troca1 = true;
}
if (troca1 == true & estado4 == LOW) {
troca1 = false;
}
lcd.setCursor(0, 0);
lcd.print("LED-2
");
lcd.setCursor(0, 1);
if (troca1 == 1) {
lcd.print("ON
");
digitalWrite(A4, HIGH);
} else {
lcd.print("OFF
");
digitalWrite(A4, LOW);
}
break;
case 2:
if (estado3 == LOW & troca2 == false ) {
troca2 = true;
}
if (troca2 == true & estado4 == LOW) {
troca2 = false;
}
lcd.setCursor(0, 0);
lcd.print("LED-3
");
lcd.setCursor(0, 1);
if (troca2 == 1) {
lcd.print("ON
");
digitalWrite(A5, HIGH);
} else {
lcd.print("OFF
");
digitalWrite(A5, LOW);
}
break;

case 3:
lcd.setCursor(0, 0);
lcd.print("NOME:Andre/Fernando");
lcd.setCursor(0, 1);
lcd.print("RM :24359/24796");
break;
default:
contador = 0;
}
}

Você também pode gostar