W tym projekcie zobaczymy, jak zrobić elektroniczną kostkę do gry na arduino, która daje liczbę od 1 do 6. Może to być bardzo przydatne, jeśli na przykład grasz w grę planszową. Projekt zawiera ekran LCD, który wyświetla liczbę i przycisk, aby uzyskać nową liczbę.
Przyjrzymy się teraz sprzętowi wymaganemu do realizacji projektu:
Podczas korzystania z przycisku występują napięcia od 0 V do 5 V, które mogą powodować błędy podczas odczytywania wartości przycisku.
Rezystor na przycisku usuwa nieznany stan napięcia na przycisku, przywracając napięcie do 0 V lub 5 V, gdy przycisk nie jest już używany. Jest to rezystor podciągający. Więcej szczegółów można znaleźć w naszym kursie na ten temat.
Potencjometr służy do regulacji jasności ekranu. Można się bez niego obejść, podłączając napięcie 5 V bezpośrednio do brązowego przewodu, a masę GND, która biegnie od potencjometru do ekranu, można podłączyć bezpośrednio do płytki 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);
}
}
Aby wgrać program na płytkę Arduino, potrzebne będzie oprogramowanie Arduino Ide. Po zainstalowaniu oprogramowania wystarczy wybrać odpowiedni port dla płytki Arduino i wgrać program na płytkę.
Funkcja random służy do generowania liczb losowych od 1 do 6. Jeśli jednak chcemy, aby liczba 6 została uwzględniona w generowaniu liczby, musimy przejść do 7, ponieważ ostatnia liczba nie jest uwzględniana ([1-7[)).
Oto projekt cyfrowej matrycy na tinkercad: