#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Adresa I2C displeja
#define I2C_ADDRESS 0x27
// počiatok LCD displeja
LiquidCrystal_I2C lcd(I2C_ADDRESS, 16, 2); // LCD I2C 16x2 displej
const int tlacitkoPin = 6;
// Pin pre tlačidlo + ošetrenie
bool zobrazeneCislo = false;
bool lastButtonState = true; // tlačitko nieje z počiatku stlačene
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50; // Časové oneskorenie na ošetrenie bounce efektu
void setup() {
// počiatok pre tlačidlo
pinMode(tlacitkoPin, INPUT_PULLUP);
// začatie I2C komunikácie
Wire.begin();
// počiatok pre LCD displej #2
lcd.init();
lcd.backlight();
}
void loop() {
// Kontrola stlačenia tlačidla
if (digitalRead(tlacitkoPin) == LOW) {
if (!zobrazeneCislo) {
// Generovanie a výpis náhodného čísla iba ak nebolo ešte zobrazené
int randomNumber = random(1, 101);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Nahodne cislo:");
lcd.setCursor(0, 1);
lcd.print(randomNumber);
zobrazeneCislo = true;
}
} else {
zobrazeneCislo = false;
}
}