#include <SevSeg.h>
SevSeg sevseg;
const int buttonPin = 10; // il pin a cui è collegato il pulsante
int buttonState = 0; // stato corrente del pulsante
int lastButtonState = LOW; // stato precedente del pulsante
long dado1 = 0;
long dado2 = 0;
void setup() {
byte numDigits = 1;
byte digitPins[] = {};
byte segmentPins[] = {6, 5, 2, 3, 4, 7, 8, 9};
bool resistorsOnSegments = true;
byte hardwareConfig = COMMON_CATHODE;
sevseg.begin(hardwareConfig, numDigits, digitPins, segmentPins, resistorsOnSegments);
sevseg.setBrightness(70);
pinMode(buttonPin, INPUT_PULLUP);
lastButtonState = digitalRead(buttonPin); // Inizializza lastButtonState al valore iniziale del pulsante
}
void loop() {
// Leggi lo stato attuale del pulsante
buttonState = digitalRead(buttonPin);
// Controlla se il pulsante è stato premuto (da HIGH a LOW)
if (buttonState == LOW && lastButtonState == HIGH) {
dado1 = random(1, 7);
dado2 = random(1, 7);
// Imposta il numero sui display a 7 segmenti
sevseg.setNumber(dado1);
sevseg.refreshDisplay();
}
// Aggiorna lastButtonState al valore attuale del pulsante
lastButtonState = buttonState;
}