#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Stepper.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
//buttons and rgb
const int redd = 3;
const int greenn = 2;
const int bluee = 1;
const int trueB = A2;
const int falseB = A3;
// stepper
const int steps = 200;
Stepper myStepper(steps, 4, 5, 6, 7);
int ques = 0;
void setup() {
lcd.begin(16, 2);
lcd.backlight();
pinMode(redd, OUTPUT);
pinMode(greenn, OUTPUT);
pinMode(bluee, OUTPUT);
pinMode(trueB, INPUT_PULLUP);
pinMode(falseB, INPUT_PULLUP);
lcd.clear();
displayQuestion();
setRGB(0, 0, 255);
myStepper.setSpeed(60);
}
void loop() {
if (digitalRead(trueB) == LOW) {
setRGB(0, 255, 0);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("True");
delay(3000);
resetState();
}
if (digitalRead(falseB) == LOW) {
setRGB(255, 0, 0);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("False");
myStepper.step(steps);
delay(3000);
resetState();
}
}
void displayQuestion() {
lcd.clear();
lcd.setCursor(0, 0);
if (ques == 0) {
lcd.print("Pogi si butlig?");
} else if (ques == 1) {
lcd.print("Mabait si butlig?");
}
if (ques == 0) {
ques = 1;
} else {
ques = 0;
}
setRGB(0, 0, 255);
}
void resetState() {
displayQuestion();
}
void setRGB(int red, int green, int blue) {
analogWrite(redd, red);
analogWrite(greenn, green);
analogWrite(bluee, blue);
}