Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Существует 8-битная игровая платформа размером с кредитную карту под названием Arduboy, которая позволяет легко изучать игры с открытым исходным кодом, делиться ими и играть в них.
Вы можете наслаждаться 8-битными играми, созданными другими на этом устройстве, или создавать свои собственные игры. Поскольку это проект с открытым исходным кодом и использует Arduino, я решил сделать его собственную версию.
Моей целью было разработать печатную плату, которую можно было бы легко изготовить с использованием метода переноса тонера. Поэтому я сделал дорожки и пэды максимально большими. Если вы не хотите травить печатную плату, вы можете сделать ее на макете или перфорированной плате.
Шаг 1: Соберите компоненты
Тебе понадобится:
- Arduino Pro micro (НЕ Pro Mini. Pro micro с чипом ATmega32u4)
- 7-контактный SPI OLED-дисплей
- 4-контактная кнопка мгновенного действия (12x12x7,3 мм)
- Покрытие медью (если вы делаете печатную плату) или вы можете использовать макетную / сборную плату.
- Ползунковый переключатель
- Элемент питания 3v и держатель
- Штыри женского заголовка
- Пьезоэлектрическая пластина зуммера
ВНИМАНИЕ: Вы должны убедиться, что у вас есть профессиональный микроконтроллер на базе ATmega32u4 и старый 7-контактный дисплей, иначе проект не будет работать
После завершения этого проекта я понял, что кнопочная ячейка 3v может привести игру в действие только менее чем на минуту. Поскольку я использую USB-кабель для питания своего, я не потрудился воссоздать файлы печатной платы. Поэтому подумайте об использовании гораздо более мощной батареи, если вы хотите полную мобильность
Шаг 2: Изготовление печатной платы
Вы можете протравить специальную печатную плату, используя метод переноса тонера, или припаять компоненты к сборной плате, используя схемы.
Загрузите файлы печатной платы отсюда и протравите их.
Ссылка:
Я попытался сделать эту печатную плату максимально удобной для самостоятельного изготовления. Имеет большие следы и широкие подушечки. Это упростит процесс травления и пайки. Если у вас раньше не было опыта травления печатных плат, следуйте этим руководствам.
www.instructables.com/id/Making-A-Customiz…
Шаг 3: припаяйте компоненты
Припаяйте 6 кнопок, ползунковый переключатель и держатель батареи к печатной плате.
(Если вы собираетесь питать игру с помощью USB-кабеля, батарея вам не понадобится.)
Мы не припаиваем напрямую Arduino и OLED-дисплей к печатной плате, так как мы можем использовать их для других проектов в будущем. Сначала припаяйте штырьки гнездовых разъемов к печатной плате и прикрепите OLED-дисплей и Arduino к разъемам. Это увеличит толщину нашего ардубоя, но мы можем удалить эти части, если захотим.
К динамику идет перемычка. В файлах печатных плат он обозначается красным цветом. Используйте кусок провода, чтобы сделать это соединение.
Чтобы подключить пьезоэлектрический зуммер, припаяйте два провода к пластине зуммера и припаяйте этот провод к печатной плате. Прикрепите пластину зуммера к печатной плате с помощью двустороннего скотча.
Присоедините Arduino и OLED-дисплей к соответствующим контактам заголовка.
Если вы делаете этот проект на макете, то все, что вам нужно сделать, это просто подключить компоненты, как указано на схемах. Здесь я сделал отдельный джойстик с 6 кнопками и прикрепил их к макету.
Связи:
Подключите все кнопки к GND Arduino.
BUTTON_UP -> Контакт A0 Arduino
BUTTON_DOWN -> Контакт A3 Arduino
BUTTON_LEFT -> Контакт A2 Arduino
BUTTON_RIGHT -> Контакт A1 Arduino
BUTTON_A -> Контакт 7 Arduino
BUTTON_B -> Контакт 8 Arduino
Динамик -> контакт 5 Arduino
Вывод OLED GND и CS -> Вывод GND Arduino
Вывод OLED VCC -> VCC Arduino
Вывод OLED SCK -> Цифровой вывод 15 Arduino
Вывод OLED SDA -> Цифровой вывод 16 Arduino
Вывод OLED RES -> Цифровой вывод 6 Arduino
Вывод OLED DC -> Цифровой вывод 4 Arduino
Шаг 4: загрузка IDE Arduino
Вы должны загрузить и установить IDE arduino, чтобы загружать игры.
Вы можете скачать IDE arduino по ссылке ниже:
www.arduino.cc/en/main/software
Загрузите и установите Arduino IDE для своего компьютера по указанной выше ссылке.
Шаг 5: Установка библиотек
Чтобы скомпилировать и загрузить игру на ваш arduboy, вам необходимо установить несколько библиотек.
Я перечислю некоторые из важных ниже.
github.com/Arduboy/Arduboy
github.com/MLXXXp/Arduboy2
github.com/MLXXXp/ArduboyTones
github.com/TEAMarg/ATMlib
github.com/Arduboy/ArduboyPlaytune
github.com/igvina/ArdBitmap
Нажмите кнопку «Клонировать» или «Загрузить» и нажмите «Загрузить ZIP-архив».
Перейдите по этим ссылкам и нажмите клонировать или загрузить и загрузить zip-архив. Откройте Arduino IDE и нажмите
Sketch> Включить библиотеку> добавить библиотеку. ZIP
и выберите загруженный zip-файл. Повторите это для всех файлов.
Альтернативный метод
Вместо загрузки и установки файлов.zip вы также можете установить библиотеки с помощью диспетчера библиотек Arduino IDE:
Sketch> Включить библиотеку> Управление библиотеками
затем введите имя библиотеки в поле поиска.
Шаг 6. Загрузка игр
Чтобы проверить, правильно ли работает оборудование, перейдите по ссылке:
Файл -> Пример -> Arduboy -> ArduBreakout
и нажмите "Загрузить". Если все работает правильно, вы можете играть в игру «Breakout Game» на своем Arduboy.
Убедитесь, что вы выбрали плату как Arduino Leonardo или Arduino / Genuino Micro.
Вы можете найти другие игры для вашего arduboy на этих сайтах:
community.arduboy.com/c/games
www.team-arg.org/games.html
Иногда вы можете столкнуться с ошибкой, например:
фатальная ошибка: ArduboyPlaytune0.h: нет такого файла или каталога
#включают
^
компиляция прекращена
статус выхода 1 Ошибка компиляции для платы Arduino / Genuino Micro
при загрузке игр.
Чтобы исправить эту ошибку, найдите имя отсутствующей библиотеки на
Загрузите и установите библиотеку, как мы это делали раньше.
Вот видео:
Шаг 7: Наслаждайтесь
ЗАМЕТКА:
Я подключил второй вывод динамика к земле, а не вывод 13 Arduino, как это делает настоящий Arduboy. Поэтому звук для некоторых игр не будет работать должным образом. Я не включил светодиод RGB, который есть в настоящем Arduboy. Следовательно, в играх, в которых используется светодиод RGB, будут отсутствовать светодиодные эффекты, и в них будет сложнее играть.
Огромное спасибо MLXXXp от сообщества arduboy за указание на ошибки.
Это мой первый неразрушимый, так что он не идеален. Если вам нужна помощь в этом проекте, дайте мне знать в комментариях.