In questo progetto vedremo come realizzare un dado elettronico su arduino che fornisce un numero compreso tra 1 e 6. Questo può essere molto utile se si sta giocando a un gioco da tavolo, ad esempio. Il progetto contiene uno schermo LCD che visualizza il numero e un pulsante per ottenere un nuovo numero.
Elenchiamo ora l’attrezzatura necessaria per il progetto:
Quando si utilizza un pulsante, ci sono tensioni comprese tra 0V e 5V che possono causare errori nella lettura del valore del pulsante.
Il resistore sul pulsante elimina la condizione di tensione sconosciuta sul pulsante riportando la tensione a 0V o 5V quando il pulsante non viene più utilizzato. Si tratta di un resistore pull-down.
Il potenziometro serve a regolare la luminosità dello schermo. È possibile farne a meno collegando 5 V direttamente al filo marrone e il GND che va dal potenziometro allo schermo può essere collegato direttamente alla scheda Arduino.
/* Program for Electronic Dice on Arduino */
#include <LiquidCrystal.h> // LCD Screen Library
const int button_pin = 7; // The push button is on pin 7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // Initialize the pins used by the LCD screen
void setup() {
lcd.begin(16, 2); // Initialize the LCD screen
int random_number = random(1, 7); // Generate a random number between 1 and 6 for the dice
lcd.print("Dice Number: "); // Display the text
lcd.setCursor(13, 0); // Position the cursor for the dice number
lcd.print(random_number); // Display the random number
}
void loop() {
lcd.setCursor(0, 1); // Reset cursor to the beginning of the second line
int button_state = digitalRead(button_pin); // Read the push button value
if (button_state == 0) { // If the push button is pressed, change the number
lcd.clear(); // Clear the LCD screen
int random_number = random(1, 7); // Calculate the new random number
lcd.print("Dice Number: "); // Display the text
lcd.setCursor(13, 0);
lcd.print(random_number);
}
}
Per caricare il programma sulla scheda Arduino, è necessario il software Arduino Ide. Una volta installato il software, è sufficiente scegliere la porta giusta per la scheda Arduino e caricare il programma sulla scheda.
La funzione random viene utilizzata per generare un numero casuale da 1 a 6. Tuttavia, se vogliamo che il numero 6 sia incluso nella generazione del numero, dobbiamo andare fino a 7 perché l’ultimo numero non è incluso ([1-7[).