![Бей-а-мОЛД !!: 7 шагов Бей-а-мОЛД !!: 7 шагов](https://i.howwhatproduce.com/images/001/image-1300-22-j.webp)
Оглавление:
- Запасы
- Шаг 1: Подключите схему
- Шаг 2: Код для настройки контактов
- Шаг 3: Код для распознавания джойстика
- Шаг 4.Программный код основного цикла
- Шаг 5: Готовы попробовать
- Шаг 6: Реализация Arduino Nano для прототипа
- Шаг 7: Окончательный упакованный прототип Whack-a-MoLED, чтобы представить своего любимого
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04
![Бейся! Бейся!](https://i.howwhatproduce.com/images/001/image-1300-23-j.webp)
![Бейся! Бейся!](https://i.howwhatproduce.com/images/001/image-1300-24-j.webp)
Проекты Tinkercad »
Это светодиодная версия классической игры «Ударь крота».
В основном случайный светодиод из 4-х светодиодов загорается вместо родинки, выглядывающей из ямы, и игрок выключает светодиод с помощью джойстика вместо того, чтобы бить крота!
Запасы
Arduino Uno / Nano или любой вариант платы
4 светодиода и соответствующие токоограничивающие резисторы.
Модуль джойстика с выходами X, Y
Активный зуммер (опционально)
Перемычки.. хватит для отладки!
Шаг 1: Подключите схему
![Подключите цепь Подключите цепь](https://i.howwhatproduce.com/images/001/image-1300-25-j.webp)
Подключите плату Arduino Uno к модулю джойстика, подключив 2 аналоговых входа к выходам X Y джойстика.
4 светодиода должны быть подключены с помощью резисторов к 4 контактам цифрового или аналогового выхода.
Активный зуммер для подключения к контакту цифрового выхода
Шаг 2: Код для настройки контактов
int xVal = 0, yVal = 0, butVal = 0, xPin = A0, yPin = A1, joyPin = 13, butPin = 7, динамикPin = 9;
int leftLED = A2, rightLED = A3, topLED = A4, bottomLED = A5;
int selectedLED = 0; // Может быть одним из A2, A3, A4 или A5
void setup () {
pinMode (xPin, ВХОД);
pinMode (yPin, ВХОД);
pinMode (leftLED, ВЫХОД);
pinMode (rightLED, ВЫХОД);
pinMode (topLED, ВЫХОД); pinMode (bottomLED, ВЫХОД);
pinMode (joyPin, ВЫХОД);
pinMode (buzzerPin, ВЫХОД);
}
Шаг 3: Код для распознавания джойстика
void joystickSenseRoutine ()
{
xVal = analogRead (xPin); yVal = analogRead (yPin); butVal = digitalRead (butPin);
joyPin = mapXYtoPin (xVal, yVal, butVal);
analogWrite (selectedLED, 1024);
если (selectedLED! = leftLED) {analogWrite (leftLED, 0); } если (selectedLED! = rightLED) {analogWrite (rightLED, 0); }
если (selectedLED! = topLED) {analogWrite (topLED, 0); }
если (selectedLED! = bottomLED) {analogWrite (bottomLED, 0); }
if (joyPin == selectedLED) // Крот ударил
{
analogWrite (selectedLED, 0);
//
// Добавляем код для воспроизведения музыки / тона для взбивания moLED !!
//
}
}
int mapXYtoPin (int xVal, int yVal, int butVal) {если ((xVal <100) и (yVal 400)) {return bottomLED; }
иначе, если ((xVal> 900) и (yVal 400)) {return topLED; }
иначе, если ((xVal 400) и (yVal <100)) {return leftLED; }
иначе, если ((xVal 400) и (yVal> 900)) {return rightLED; }
иначе {возврат -1; }
}
Шаг 4. Программный код основного цикла
void loop () {
для (int i = 0; i <length; i ++)
{
if (random (0, 100)> 90) {selectedLED = anaPinMap (random (2, 6));}
// Добавьте сюда код для игровой музыки
// *** *** ***
//
}
int anaPinMap (int randNum) {
если (randNum == 2) {вернуть A2; }
иначе, если (randNum == 3) {возврат A3; }
иначе, если (randNum == 4) {возврат A4; }
иначе, если (randNum == 5) {вернуть A5; }
}
Шаг 5: Готовы попробовать
![](https://i.ytimg.com/vi/8Y5S7QEdE30/hqdefault.jpg)
Шаг 6: Реализация Arduino Nano для прототипа
![Image Image](https://i.howwhatproduce.com/images/001/image-1300-28-j.webp)
Такая же реализация сделана с Arduino nano в макетной плате, изготовленной на заказ плате со светодиодами, резисторами и зуммером, а также переключателем X-Y джойстика.
Шаг 7: Окончательный упакованный прототип Whack-a-MoLED, чтобы представить своего любимого
![Финальный упакованный прототип Whack-a-MoLED для представления вашего любимого! Финальный упакованный прототип Whack-a-MoLED для представления вашего любимого!](https://i.howwhatproduce.com/images/001/image-1300-29-j.webp)
![Финальный упакованный прототип Whack-a-MoLED для представления вашего любимого! Финальный упакованный прототип Whack-a-MoLED для представления вашего любимого!](https://i.howwhatproduce.com/images/001/image-1300-30-j.webp)
Принадлежности для прототипа:
Простая картонная коробка (минимум 4 см X 6 см X 3 см), дополнительные картонные детали для поддержки.
Декоративная бумага для покрытия шасси (по желанию)
Универсальный клей / клей
Мини-макет (опция)
Ардуино нано
Малая универсальная печатная плата
Аккумулятор 9 В для питания Arduino nano (подключается к контакту Vin).
Переключатель SPDT
Остальные источники питания (светодиоды, резисторы, джойстик, зуммер, провода), как описано в шаге 1 выше.
Рекомендуемые:
Дизайн игры в Flick за 5 шагов: 5 шагов
![Дизайн игры в Flick за 5 шагов: 5 шагов Дизайн игры в Flick за 5 шагов: 5 шагов](https://i.howwhatproduce.com/images/001/image-2360-j.webp)
Дизайн игры в Flick за 5 шагов: Flick - это действительно простой способ создания игры, особенно чего-то вроде головоломки, визуального романа или приключенческой игры
Счетчик шагов - Micro: Bit: 12 шагов (с изображениями)
![Счетчик шагов - Micro: Bit: 12 шагов (с изображениями) Счетчик шагов - Micro: Bit: 12 шагов (с изображениями)](https://i.howwhatproduce.com/images/003/image-6043-j.webp)
Счетчик шагов - Микро: Бит: Этот проект будет счетчиком шагов. Мы будем использовать датчик акселерометра, встроенный в Micro: Bit, для измерения наших шагов. Каждый раз, когда Micro: Bit трясется, мы добавляем 2 к счетчику и отображаем его на экране
Играйте в Doom на своем IPod за 5 простых шагов !: 5 шагов
![Играйте в Doom на своем IPod за 5 простых шагов !: 5 шагов Играйте в Doom на своем IPod за 5 простых шагов !: 5 шагов](https://i.howwhatproduce.com/images/003/image-6381-j.webp)
Играйте в Doom на своем IPod за 5 простых шагов!: Пошаговое руководство по двойной загрузке Rockbox на iPod, чтобы играть в Doom и десятки других игр. Это действительно легко сделать, но многие люди до сих пор удивляются, когда видят, как я играю дум на своем iPod, и путаются с инструкциями
Кормушка для рыбы Arduino Uno за 6 простых и простых шагов !: 6 шагов
![Кормушка для рыбы Arduino Uno за 6 простых и простых шагов !: 6 шагов Кормушка для рыбы Arduino Uno за 6 простых и простых шагов !: 6 шагов](https://i.howwhatproduce.com/images/007/image-18383-j.webp)
Arduino Uno Fish Feeder за 6 простых и дешевых шагов !: Итак, для этого проекта может потребоваться немного предыстории. Людям с домашними рыбками, вероятно, приходилось сталкиваться с той же проблемой, что и мне: отпуск и забывчивость. Я постоянно забывала покормить рыбу и всегда старалась это сделать, пока она не упала
Акустическая левитация с Arduino Uno, шаг за шагом (8 шагов): 8 шагов
![Акустическая левитация с Arduino Uno, шаг за шагом (8 шагов): 8 шагов Акустическая левитация с Arduino Uno, шаг за шагом (8 шагов): 8 шагов](https://i.howwhatproduce.com/images/007/image-19534-j.webp)
Акустическая левитация с Arduino Uno Пошаговая инструкция (8 шагов): ультразвуковые преобразователи звука L298N Женский адаптер питания постоянного тока с штыревым контактом постоянного тока Arduino UNOBreadboard Как это работает: сначала вы загружаете код в Arduino Uno (это микроконтроллер, оснащенный цифровым и аналоговые порты для преобразования кода (C ++)