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

Карманная игровая консоль Arduino + A-Maze - игра в лабиринт

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

SSD1306 OLED
× 1
SparkFun Arduino Pro Mini 328 - 5 В / 16 МГц
× 1
Кнопочный переключатель SparkFun, 12 мм
× 7
Держатель батареи для монетоприемников
× 2
Ползунковый переключатель
× 1
прототип печатной платы 4x6 мм
× 1

Об этом проекте

Добро пожаловать в мое первое руководство!

Проект, которым я хочу поделиться с вами сегодня, - это игра-лабиринт Arduino, которая стала такой же карманной консолью, как Arduboy и аналогичные консоли на базе Arduino. Его можно прошить в моих (или ваших) будущих играх благодаря открытому заголовку ICSP.

Несколько месяцев назад у меня возникла идея создать игру-лабиринт на Arduino, но без жестко запрограммированного набора лабиринтов. Он должен иметь возможность создавать новый лабиринт для каждого уровня, на котором вы играете, чтобы вы больше никогда не видели тот же лабиринт :)

Кодировать это было непросто, поскольку объем оперативной памяти Arduino ограничен, а затем я нашел несколько примеров того, как это можно сделать с помощью простого алгоритма Бо-Таоши.

Код, который я использовал в качестве отправной точки, я использовал Сануки Удон и его проект КАК СДЕЛАТЬ ГЕНЕРАТОР ЛАБИРИНТА, ИСПОЛЬЗУЯ ATTINY13A

Шаг 1. Создание прототипа макета

Моей отправной точкой была небольшая макетная плата с подключенными всего 4 кнопками для перемещения по лабиринту, но позже, когда я решил, что это должна быть игровая консоль, я добавил еще несколько кнопок. На макете большего размера вы можете увидеть еще 2 кнопки, а позже я добавил третью, которая будет использоваться как кнопка запуска / паузы / меню

Шаг 2. Необходимые детали

  • Микросхема Arduino pro mini / Arduino Uno / Atmega328P
  • 28-контактное DIP-гнездо (опционально)
  • Дисплей SSD1306 OLED
  • Пьезо-динамик
  • Кнопки - 7 шт.
  • Держатели для плоских батарей
  • Тумблер
  • Провода
  • Прототип печатной платы (60x40 мм)

Шаг 3. Подключение / схема макета

Соедините компоненты, как показано на схеме выше.

Кнопки:

  • Кнопка ВВЕРХ:вывод 7 Arduino
  • Кнопка ВНИЗ:вывод 6 Arduino
  • Левая кнопка:вывод 9 Arduino
  • Кнопка ВПРАВО:вывод 8 Arduino
  • Кнопка A:вывод 5 Arduino
  • Кнопка B:вывод 4 Arduino
  • Кнопка START:вывод 2 Arduino

Экран SSD1306 OLED:

  • SCL:вывод Arduino A5
  • SDA:вывод Arduino A4
  • VCC:Arduino VCC
  • GND:Arduino GND

Зуммер:

  • Зуммер положительный:вывод 3 Arduino
  • Заземление зуммера:заземление Arduino

Шаг 4. Исходный код

Исходный код игры A-Maze можно найти здесь:https://github.com/alojzjakob/A-Maze

Откройте в Arduino IDE и загрузите на свою плату или используйте программатор ISP, чтобы запрограммировать свой чип.

Я рекомендую использовать USBTIny ISP, никогда не было проблем с ним :) но вы также можете использовать обычный Arduino для программирования своего чипа.

В моем случае я не использовал внешний кристалл, поэтому мой чип Atmega328p работает от внутреннего генератора с частотой 8 МГц.

Для получения дополнительной информации перейдите по этой ссылке:https://www.arduino.cc/en/Tutorial/ArduinoToBreadboard.

Шаг 5. Посмотрите на это в действии

Шаг 6:корпус и миниатюризация

Если вы хотите сделать этот проект постоянным, с красивым футляром, вот простой футляр для 3D-печати, который я разработал:https://www.thingiverse.com/thing:2851100

На изображениях выше вы можете увидеть, как все компоненты размещены на прототипе печатной платы 4x6.

Большая часть проводов кнопок проходит под держателями батарей, постарайтесь сделать их как можно более простыми, чтобы держатели батарей могли относительно гладко прилегать к плате с проводами между ними.

Я также рекомендую сделать другую проводку под экраном, так как ножки микросхемы Atmega припаяны и выставлены под экраном. Когда вы закончите пайку, подложите под экран изоляционную ленту, чтобы предотвратить короткое замыкание и т. Д.

Заголовок ICSP является необязательным, и если вы решите не раскрывать его, он значительно упростит вашу сборку, потребуется меньше 6 подключений, но сначала запрограммируйте микросхему, прежде чем паять ее, или используйте 28-контактное DIP-гнездо, чтобы вы могли легко снимаем микросхему для программирования.

Код

Github
https://github.com/alojzjakob/A-Mazehttps://github.com/alojzjakob/A-Maze

Изготовленные на заказ детали и корпуса

Thingiverse
https://www.thingiverse.com/thing:2851100CAD-файл на сайте thingiverse.com

Схема


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

  1. Консоль редактирования DIY Photoshop с использованием Arduino Nano RP 2040
  2. Игра с гироскопом Arduino с MPU-6050
  3. Портативная игровая консоль TeleBall Retro
  4. Портативная игровая консоль | Клон Arduboy
  5. Игра Arduino Pong - OLED-дисплей
  6. Игровой контроллер Arduino
  7. Игра Arduino Pong на матрице 24x16 с MAX7219
  8. Игра Arduino Touch Breakout
  9. Игра Giant Animatronics Lego Minfig Operation Game
  10. Игра Pixel Chaser