#include <LiquidCrystal_I2C.h>
#include <Wire.h>
LiquidCrystal_I2C lcd(0x27, 16, 2); // Adresa displeja 16 stlpcov, 2 riadky
const int buttonPin = 4; // pint na ktorom je zapojenny blue button
int ButtonPosition = 0;
int lastButtonPosition = 0;
const int buttonPinYellow = 5; // pint na ktorom je zapojenny yellow button
int ButtonPositionYellow = 0;
int lastButtonPositionYellow = 0;
int from = 0;
int to = 100;
int help = 1;
void setup() {
lcd.init(); //inicializacia LCD
lcd.backlight(); // zapnutie podsvitenia LCD
pinMode(buttonPin, INPUT); // modre tlacidlo nastavene ako input
pinMode(buttonPinYellow, INPUT); // zlte tlacidlo nastavene ako input
lcd.print("Pouzi tlacidla");
}
void loop() {
ButtonPosition = digitalRead(buttonPin); // stav tlacidla
ButtonPositionYellow = digitalRead(buttonPinYellow); // stav zlteho tlacidla
if (ButtonPosition != lastButtonPosition) {
if (ButtonPosition == HIGH) {
int randomNumber = random(from, to); // generacia nahodneho cisla
lcd.clear(); // Vycistenie LCD obrazovky
lcd.setCursor(0,0);
lcd.print("Nahodne cislo: ");
lcd.setCursor(0, 1); //
lcd.print(randomNumber); // vypisanie nahodneho cisla
delay(1000); // pockaj 2 sec
lcd.clear();
lcd.print("Pouzi tlacidlo");
}
lastButtonPosition = ButtonPosition; // posledny stav modreho tlacidla
}
//ButtonPositionYellow = digitalRead(buttonPinYellow); // stav zlteho tlacidla
if (ButtonPositionYellow != lastButtonPositionYellow) {
if (ButtonPositionYellow == HIGH) {
switch (help) {
case 1:
to = 100;
break;
case 2:
to = 1000;
break;
case 3:
to = 10000;
break;
case 4:
to = 100;
help = 1;
break;
}
lcd.clear(); // Vycistenie LCD obrazovky
lcd.setCursor(0,0);
lcd.print("Cisla budu ");
lcd.setCursor(0,1);
lcd.print("od:");
lcd.print(from);
lcd.setCursor(7,1);
lcd.print("do:");
lcd.print(to);
delay(1000); // pockaj 2 sec
help++;
}
lastButtonPositionYellow = ButtonPositionYellow; // posledny stav zlteho tlacidla
}
}