#include "LiquidCrystal_I2C.h"
LiquidCrystal_I2C lcd(0x27, 20, 4);
const int buttonOk = 2;
const int buttonUp = 3;
const int buttonDown = 4;
const int buttonExit = 5;
int buzzer = 13 ;
int buttonStateOk = 0;
int buttonStateUp = 0;
int buttonStateDown = 0;
int buttonStateExit = 0;
int currentScreen = 0;
int currentMenu = 0;
void setup() {
Serial.begin(9600);
lcd.init(); // initializing the LCD
lcd.backlight(); // Enable or Turn On the backlight
pinMode(buttonOk, INPUT_PULLUP);
pinMode(buttonUp, INPUT_PULLUP);
pinMode(buttonDown, INPUT_PULLUP);
pinMode(buttonExit, INPUT_PULLUP);
pinMode(buzzer , OUTPUT);
lcd.clear();
lcd.setCursor(6,1);
lcd.print("LOADING....");
digitalWrite(buzzer, HIGH);
delay(2500);
lcd.clear();
}
void loop() {
buttonStateOk = digitalRead(buttonOk);
buttonStateUp = digitalRead(buttonUp);
buttonStateDown = digitalRead(buttonDown);
buttonStateExit = digitalRead(buttonExit);
if(buttonStateDown == LOW){
currentScreen = currentScreen+1;
// Serial.println(currentScreen);
if(currentScreen == 7){
currentScreen = 0;
}
}
if(buttonStateUp == LOW){
currentScreen = currentScreen-1;
// Serial.println(currentScreen);
if(currentScreen < 0){
currentScreen = 6;
}
}
printScreen();
delay(200);
}
void printScreen() {
if (currentScreen == 0) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print("->Setting");
lcd.setCursor(0,1);
lcd.print(" Configuration");
lcd.setCursor(0,2);
lcd.print(" Display");
lcd.setCursor(0,3);
lcd.print(" Temperature");
}
if (currentScreen == 1) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" Setting");
lcd.setCursor(0,1);
lcd.print("->Configuration");
lcd.setCursor(0,2);
lcd.print(" Display");
lcd.setCursor(0,3);
lcd.print(" Temperature");
}
if (currentScreen == 2) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" Setting");
lcd.setCursor(0,1);
lcd.print(" Configuration");
lcd.setCursor(0,2);
lcd.print("->Display");
lcd.setCursor(0,3);
lcd.print(" Temperature");
}
if (currentScreen == 3) {
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" Setting");
lcd.setCursor(0,1);
lcd.print(" Configuration");
lcd.setCursor(0,2);
lcd.print(" Display");
lcd.setCursor(0,3);
lcd.print("->Temperature");
}
if (currentScreen == 4)
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print("->Network");
lcd.setCursor(0,1);
lcd.print(" Brightness");
lcd.setCursor(0,2);
lcd.print(" ABC");
}
if (currentScreen == 5)
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" Network");
lcd.setCursor(0,1);
lcd.print("->Brightness");
lcd.setCursor(0,2);
lcd.print(" ABC");
}
if (currentScreen == 6)
{
lcd.clear();
lcd.setCursor(0,0);
lcd.print(" Network");
lcd.setCursor(0,1);
lcd.print(" Brightness");
lcd.setCursor(0,2);
lcd.print("->ABC");
}
}