Цифровые игральные кости Arduino
Компоненты и расходные материалы
| | × | 1 | |
| | × | 1 | |
| Стандартный ЖК-экран Adafruit - 16x2, белый на синем | | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| Поворотный потенциометр (общий) | | × | 1 | |
| Кнопочный переключатель SparkFun, 12 мм | | × | 1 | |
Об этом проекте
Идея
Этот проект был основан на идее, что мне надоели мои обычные стандартные игровые кости. Итак, чтобы избавиться от скуки, я решил использовать свой ЖК-дисплей Arduino и стандартную кнопку (с коммутационной платой), и я заставил Arduino считывать состояние сигнального контакта на плате кнопки на высокое или низкое (высокое, если кнопка не нажата. ) (низкий, если нет). В зависимости от состояния он либо останется на главном экране, либо покажет, что игральные кости катятся, а затем распечатает два случайных числа от 1 до 6 (как игральные кости).
Код
Код Arduino
#include long randNumber; int Led =13; // определяем светодиодный порт int Shock =2; // определить шок portint val; // определить цифровую переменную val // инициализировать библиотеку номерами контактов интерфейса LiquidCrystal lcd (7, 8, 9, 10, 11, 12); byte customChar [] ={B00000, B00000, B11111, B11001, B10101, B10011, B11111, B00000}; установка void () {lcd.begin (16, 2); lcd.createChar (0, customChar); lcd.home (); pinMode (светодиод, ВЫХОД); // определяем светодиод как выходной порт randomSeed (analogRead (0)); pinMode (Шок, ВХОД); // определяем датчик удара как выходной порт lcd.write (byte (0)); lcd.print («Цифровые кости»); lcd.write (байт (0)); задержка (1000);} void loop () {val =digitalRead (Shock); // считываем значение цифрового интерфейса 3, присвоенное val if (val ==LOW) // когда датчик удара получил сигнал, выполните следующие действия {lcd.clear (); lcd.print («Катящиеся кости ...»); задержка (4000); lcd.clear (); lcd.setCursor (0, 0); randNumber =случайный (1,7); lcd.print ("Игра в кости 1 ="); lcd.print (randNumber); lcd.setCursor (0, 1); randNumber =случайный (1,7); lcd.print ("Dice 2 ="); lcd.print (randNumber); } delay (150);}
Схема