#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
#define a 6
#define b 2
#define c 3
#define d 4
#define e 5
#define g 7
#define led1 8
#define led2 9
#define led3 10
#define sw1 11
#define sw2 12
#define sw3 13
int state = 0;
int s1;
int s2;
int s3;
void setup() {
Serial.begin(9600);
for (int i = 1; i <= 10; i++) {
pinMode(i, OUTPUT);
}
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(sw1, INPUT_PULLUP);
pinMode(sw2, INPUT_PULLUP);
pinMode(sw3, INPUT_PULLUP);
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(g, OUTPUT);
lcd.begin(16, 2);
lcd.backlight();
}
void loop() {
if(digitalRead(sw1)==LOW){
lcd.clear();
state = 1;
}
if(digitalRead(sw2)==LOW){
lcd.clear();
state = 2;
}
if(digitalRead(sw3)==LOW){
lcd.clear();
state = 3;
}
if (state == 0) {
lcd.setCursor(5, 0);
lcd.print("Ready");
lcd.setCursor(4, 1);
lcd.print("Ponlakit");
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(g, HIGH);
}
else if (state == 1) {
lcd.setCursor(5, 0);
lcd.print("NAWAMIN");
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
digitalWrite(b, LOW);
digitalWrite(c, LOW);
digitalWrite(a, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(g, HIGH);
}
else if (state == 2) {
lcd.setCursor(3, 0);
lcd.print("ELECTRONIC");
lcd.setCursor(5, 1);
lcd.print("VC.2");
digitalWrite(a, LOW);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(g, LOW);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(2000);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(2000);
}
else if (state == 3) {
lcd.setCursor(3, 0);
lcd.print("END PROGRAM");
digitalWrite(b, LOW);
digitalWrite(c, LOW);
digitalWrite(a, LOW);
digitalWrite(d, LOW);
digitalWrite(e, HIGH);
digitalWrite(g, LOW);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, HIGH);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
delay(500);
state = 0;
lcd.clear();
}
Serial.println(sw1);
}