#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
int x, y = 0;
int riadok = 0, stlpec = 0;
byte customChar[] = {
B00000,
B01010,
B00000,
B00100,
B01010,
B00000,
B10001,
B01110
};
bool pravo, lavo, hore, dole = true;
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.createChar(0, customChar);
lcd.home();
lcd.write(0);
}
void loop() {
x = analogRead(A1);
y = analogRead(A0);
if (dole == true && y >= 600) { // Dolne
dole = false;
lcd.setCursor(stlpec, riadok);
lcd.print(" ");
riadok++;
if (riadok > 1) {
riadok = 0;
}
lcd.setCursor(stlpec, riadok);
lcd.write(0);
}
if (hore == true && y <= 400) { // Hore
hore = false;
lcd.setCursor(stlpec, riadok);
lcd.print(" ");
riadok--;
if (riadok < 0) {
riadok = 1;
}
lcd.setCursor(stlpec, riadok);
lcd.write(0);
}
if (pravo == true && x >= 600) { // Pravo
pravo = false;
lcd.setCursor(stlpec, riadok);
lcd.print(" ");
stlpec--;
if (stlpec > 15) {
stlpec = 0;
}
lcd.setCursor(stlpec, riadok);
lcd.write(0);
}
if (lavo == true && x <= 400) { // Lavo
lavo = false;
lcd.setCursor(stlpec, riadok);
lcd.print(" ");
stlpec++;
if (stlpec < 0) {
stlpec = 15;
}
lcd.setCursor(stlpec, riadok);
lcd.write(0);
}
if (dole != true && y <= 600) { // Dolne
dole = true;
}
if (hore != true && y >= 400) { // Hore
hore = true;
}
if (pravo != true && x <= 600) { // Pravo
pravo = true;
}
if (lavo != true && x >= 400) { // Lavo
lavo = true;
}
}