Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Создание классической аркадной игры на Arduino с LCD, зуммером и джойстиком

Компоненты и материалы

Необходимые инструменты

О проекте

Этот проект реализует классическую аркадную игру «Бегущий человек» на базе Arduino. Игрок управляет персонажем, который бежит по экрану и должен перепрыгивать препятствия, нажимая кнопку на джойстике. Зуммер издает звуки при столкновении и прыжке, добавляя игровую атмосферу. Цель — набрать максимум очков (по одному за каждую секунду выживания).

Схема подключения

Схема показана на изображении ниже. Все компоненты подключаются к Arduino согласно таблице пинов в коде.

Создание классической аркадной игры на Arduino с LCD, зуммером и джойстиком

Программный код

Код использует библиотеку LiquidCrystal для работы с дисплеем. Создаются пользовательские символы для героя, земли и препятствий. Игровая логика включает генерацию случайного ландшафта, обработку нажатий кнопки (прерывание), анимацию прыжка и бега, подсчет очков и звуковые сигналы.

#include <LiquidCrystal.h>
#define PIN_BUTTON 2
#define PIN_AUTOPLAY 1
#define PIN_BUZZER 8
#define PIN_READWRITE 10
#define PIN_CONTRAST 12
// ... определения спрайтов и состояний героя ...
LiquidCrystal lcd(11, 9, 6, 5, 4, 3);
// ... массивы ландшафта, флаги, функции инициализации графики ...
void initializeGraphics() { /* создание пользовательских символов */ }
void advanceTerrain(char* terrain, byte newTerrain) { /* сдвиг ландшафта */ }
bool drawHero(byte position, char* terrainUpper, char* terrainLower, unsigned int score) { /* отрисовка героя, проверка столкновений */ }
void buttonPush() { buttonPushed = true; } // прерывание
void setup() { /* настройка пинов, прерываний, LCD */ }
void loop() { /* основной игровой цикл */ }

Полный код доступен в разделе «Code» оригинального проекта.

Как запустить

  1. Соберите схему согласно рисунку.
  2. Установите Arduino IDE и загрузите скетч в плату.
  3. Отрегулируйте контрастность дисплея потенциометром.
  4. Нажмите кнопку на джойстике для старта игры.

Производственный процесс

  1. TinyML-детектор языка на Arduino Nano 33 BLE Sense с Edge Impulse
  2. Создание игры в реальном времени на Arduino Nano с гироскопом MPU-6050 и OLED-дисплеем
  3. Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
  4. Создание рулетки на 37 светодиодов с Arduino Nano
  5. DIY USB-геймпад на Arduino: собственный высокопроизводительный контроллер
  6. Интерактивная игра с джойстиком и LED-обратной связью на Arduino
  7. Find Me: Умный поисковик вещей на Arduino и Bluetooth
  8. Pixel Chaser: игра на один тап с NeoPixel Ring и Arduino Nano
  9. Самодельный осциллограф на Arduino Nano (10 Гц – 50 кГц) с ЖК-дисплеем 128×64
  10. Сборка аудиореактивной настольной лампы на Arduino Nano