
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04

В 2019 году Game Boy исполнилось 30 лет, и это побудило меня реализовать проект, о котором я уже думал. Основная идея заключалась в том, чтобы использовать корпус, напечатанный на 3D-принтере, который выглядит как Game Boy Classic, и поместить внутрь Pi Zero под управлением Retropie.
Шаг 1: Детали:

- Пи Ноль W
- 3,5-дюймовый дисплей
- Booster MT3608 для обеспечения 5V
- TP4056 для подзарядки аккумулятора
- Два или три литиевых элемента по 1000 мА
- Карта Micro SD на 4 ГБ
- Резисторы и конденсатор для аудио
- Печатная плата Универсальная
- Динамик диаметром 2,8 мм
- Усилитель PAM8403
Шаг 2: часто задаваемые вопросы

Я сделал для себя FAQ по некоторым вопросам проекта:
Я сомневался между знаменитым PiGRRL от Adafruit и другим, очень близким к оригиналу. Я выбрал оригинал, потому что ABXY больше и на большем расстоянии. Adafruit: https://www.thingiverse.com/thing:1277483 Оригинал:
Какой дисплей использовать? У меня уже было два, один на 2,8 дюйма, которые используют контроллер ILI9341, а другой - с композитным видео размером 3,5 дюйма. Я выбрал 3.5”, потому что его проще подключить и он идеально подходит для любого случая.
Есть ли у Pi Zero композитный видеовыход? Да, но нет контактов.
Есть ли у Pi Zero аналоговый аудиовыход? Необходимо построить вывод, как показано Adafruit:
Какой контроллер использовать? Я использовал тактический переключатель, подключенный к GPIO, где он имитирует клавиатуру. Я снова использовал решение Adafruit, но доска была создана для меня:
Какой размер карты micro SD использовать? Я использовал 4 ГБ, которых мне достаточно. Я не хочу, чтобы у меня было 5000 игр, чтобы сыграть только дюжину. Помните, что Pi Zero может хорошо запускать только 8- или 16-битные игры, и эти ромы имеют небольшой размер. Retropie использует около 2,2 ГБ дискового пространства.
Как включить дисплей 12 В, если Raspberry Pi работает с 5 В. Я обнаружил точку 5 В на плате дисплея. У дисплея есть один регулятор 5V и другой 3,3V, подключенные друг к другу. Я подключил 5В ко входу регулятора 3,3В.
Какую батарею использовать? Я использовал две литиевые батареи по 1000 мА. С этими ячейками устройство проработало около 1:40 часа. Я считаю, что лучшим решением будет использование трех ячеек по 1000 мА.
Как подзарядить аккумулятор? Я использовал плату зарядки TP4056
Шаг 3: Коробка для печати



Как я уже сказал в FAQ, я выбрал распечатать этот кейс: https://www.thingiverse.com/thing: 2676949
Дисплей 3.5 идеально вписывается в корпус, я также распечатал опору дисплея (оранжевая деталь), куда помещается плата дисплея контроллера, а задняя крышка прикручивается сверху.
Шаг 4: Установка Retropie

Retropie - это программа, которая будет работать, в ней уже установлено множество эмуляторов, и она очень проста в использовании, в Интернете вы можете найти множество инструкций по ее установке. Единственная деталь: после установки в первый раз вам будет предложено настроить контроллер, настроить клавиатуру как контроллер и отметить клавиши на бумаге или что-то еще. Эта информация необходима для настройки контроллера GPIO, который вскоре будет объяснен.
Чтобы загрузить Retropie, перейдите по адресу:
Шаг 5: Контроллер GPIO




Для контроллера, который я выбрал, используйте решение Adafruit:
Я сделал плату с универсальным паяным тактильным переключателем на печатной плате и подключил их к GPIO.
Для установки драйвера Adafruit используйте команды:
CD
завиток https://raw.githubusercontent.com/adafruit/Raspbe…>> retrogame.sh
sudo chmod + x retrogame.sh
sudo bash retrogame.sh Первая команда загружает скрипт, вторая дает разрешение на выполнение, а третья запускает скрипт. После запуска выберите «1. PiGRRL 2 controls» и перезагрузитесь. Будет создан файл "/boot/retrogame.cfg", отредактируйте этот файл в соответствии с конфигурацией вашей клавиатуры. Вы помните примечание «Установка Retropie»?
Шаблон файла:
LEFT 4 # Joypad left
ВПРАВО 19 # Джойстик вправо
ВВЕРХ 16 # Джойстик вверх
ВНИЗ 26 # Джойстик вниз
LEFTCTRL 14 # кнопка 'A'
LEFTALT 15 # кнопка 'B'
Z 20 # кнопка 'X'
X 18 # кнопка 'Y'
ПРОБЕЛ 5 # Кнопка «Выбрать»
ENTER 6 # Кнопка «Пуск»
Кнопка на левом плече 12 #
S 13 # Кнопка на правом плече
Где первый столбец - это клавиши клавиатуры, второй - контакты GPIO, а третий - комментарий. Например, в файле выше GPIO 20 запускает клавишу Z на клавиатуре и кнопку X на основе шаблона контроллера SNES.
Шаг 6: аудиовыход GPIO



Pi Zero не имеет аудиовыхода, но Adafruit смог вывести звук с помощью некоторых резисторов и емкостей, подключенных к двум контактам GPIO, и поместить строку кода в файл /boot/config.cfg. Для платы я использовал универсальную печатную плату и только резисторы и конденсаторы, диоды предназначены для защиты GPIO от некоторого высокого напряжения и я не использовал.
Используемые выводы GPIO: GPIO # 13 (вывод # 33) como PWM1GPIO # 18 (вывод # 12) como PWM0 Эти выводы нельзя использовать для контроллера клавиатуры.
Добавьте строку ниже в /boot/config.cfg и подключите схему, у которой уже есть звук.
dtoverlay = pwm-2chan, pin = 18, func = 2, pin2 = 13, func2 = 4 Аудиовыход не усиливается, и для этого можно использовать усилитель PAM8403.
Шаг 7: Завершите сборку и тестирование




Завершить сборку было непросто, потому что множество деталей и проводов было сложно разместить внутри корпуса. При терпении и внимании все работает хорошо. Следите за фотографиями и видео с финальным результатом.
Рекомендуемые:
Gameboy Advance как Bluetooth-геймпад: 7 шагов

Gameboy Advance как Bluetooth-геймпад: устройство представляет собой ESP32, подключенный к GBA через порт связи. С подключенным устройством и без картриджа, вставленного в GBA, как только GBA включается, ESP32 отправляет небольшой ROM для загрузки в GBA. Этот ром представляет собой программу ма
Back Light Gameboy: 10 шагов

Back Light Gameboy: просто краткое руководство о том, как я сделал этого gameboy с подсветкой. ЧАСТИ использованные - зеленый экран с подсветкой, полупрозрачный GID, зеленый корпус gameboy, полупрозрачный фиолетовый кнопки DMG, кнопки запуска / выбора GID, замена стекла, крышка экрана (будет добавлена позже) не
Сенсорный экран Gameboy Buttons !: 10 шагов

Кнопки Gameboy с сенсорным экраном! С тех пор, как я был маленьким мальчиком, я хотел геймбоя. Перенесемся на несколько лет вперед, у меня все еще нет gameboy, я решил скачать эмулятор. Но … виртуальные кнопки не ощущаются! Поэтому я решил сделать кнопки, которые можно разместить на экране, накладывающимися друг на друга
Мод LiPo Battery для Gameboy DMG: 6 шагов (с изображениями)

Мод LiPo Battery для Gameboy DMG: Представьте, что на дворе 1990 год. Вы находитесь на шестом часе из восьмичасовой поездки на гору Рашмор. «Слезы страха» звучат по радио в вашем универсале Chevrolet Celebrity. Мама за рулем. У вас кончились Ecto-Cooler Hi-C и ваш дурацкий бр
Сделай сам дешевый Arduino Gameboy: 5 шагов (с изображениями)

Сделай сам дешевый Arduino Gameboy: всем становится скучно во время длительных путешествий и хочется чего-нибудь, чтобы подбодрить их !! Можно выбрать чтение романов: / Но они также наскучат через какое-то время !! Так что в этой инструкции я покажу вам, как сделать портативное игровое устройство, использующее Arduin