Оглавление:

Мини-игровая консоль Ardubaby на 500 игр: 10 шагов
Мини-игровая консоль Ardubaby на 500 игр: 10 шагов

Видео: Мини-игровая консоль Ardubaby на 500 игр: 10 шагов

Видео: Мини-игровая консоль Ardubaby на 500 игр: 10 шагов
Видео: Ретро консоль на 500 игр почти задаром!🤷‍♂️ 2024, Июль
Anonim
Мини-игровая консоль Ardubaby на 500 игр
Мини-игровая консоль Ardubaby на 500 игр
Мини-игровая консоль Ardubaby на 500 игр
Мини-игровая консоль Ardubaby на 500 игр

Благодарим создателя (Кевина Бейтса), что Arduboy - очень успешная 8-битная игровая консоль. Были тысячи игр, написанных любителем, который свободно поделился ими на форуме сообщества Arduboy, чтобы больше людей могло научиться программировать.

Дизайн оборудования также является открытым исходным кодом и позволяет таким производителям, как я, разрабатывать свои собственные версии оборудования и разрабатывать программные утилиты для улучшения его функций. Благодарность MR. Blinky, который разработал схему Flash-Cart, самодельный пакет для Arduino IDE и утилиты python для управления Flash-тележкой, которая способна хранить 500 игр на 16-мегабайтной последовательной флэш-памяти для игры в дороге без компьютера.

Изучая темы обсуждений на форуме сообщества Arduboy, я узнал, что мне нужно для создания нескольких самодельных Arduboys. Для новичков это может быть непросто. Поэтому я хочу поделиться тем, что я узнал, в одном сквозном видео и этой письменной инструкции. Надеюсь, это поможет тем, кто ищет ответы, создать свой собственный комплект, но не знает, как задавать вопросы, или не имеет нужного канала, чтобы задать эти вопросы.

Моя версия Arduboy крошечная, всего 1/4 размера кредитной карты (3,5 см x 5,0 см), но немного толстая (2 см, включая нижнюю крышку), но имеет все необходимые навороты: 0,9-дюймовый OLED-экран, разъем для наушников, регулятор громкости, RGB светодиод.

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

Затем вы можете использовать бесшумные кнопки, кнопки, такие как джойстик, или даже аналоговые контроллеры, такие как потенциометр.

Вы также можете добавить датчик влажности и температуры, чтобы построить крошечную метеостанцию, или добавить сверхзвуковые датчики, чтобы построить измеритель расстояния.

Он также имеет дополнительные 16 МБ последовательной флэш-памяти для хранения до 500 игр или служебных программ Arduboy. Используя загрузчик (Cathy3K), разработанный MR. Blinky, вы можете вызвать любую из 500 игр в дороге и самостоятельно прошить ее на чип ATmega32U4 (микроконтроллер Arduboy) за секунды, чтобы начать играть, без подключение к компьютеру или телефону.

Шаг 1. Получите все детали

Получить все детали
Получить все детали

Большинство запчастей можно приобрести в Интернете на amazon.com, aliexpress.com или taobao.com. Некоторые из них могут быть получены с неиспользуемых плат Arduino.

Купить все это на taobao.com и отправить в Гонконг мне обошлось менее чем в 12 долларов США (без учета доставки).

Arduino Pro Micro

OLED 64x128 SSD1306 SPI 0,96 дюйма

Чип памяти Winbond W25Q128 16 Мбайт

3,7 В 280 мАч Lipo аккумулятор USB LiPO модуль зарядного устройства (4,2 В)

Разъем для наушников 3,5 мм 10K mini VR (B103) для регулировки громкости

10K mini VR (B103) для потенциометра или поворотного регулятора (опция)

мини-пьезо-динамик

Резистор 3 кОм, 3 кОм

3-в-1 RGB LED Seven

Бесшумная кнопка 5x5 мм

Ползунковый переключатель 9x4 мм для выключателя питания

две двухсторонние перфорированные платы 5x8 см

одна односторонняя перфокарта 5x8 см

1x13-контактный гнездовой разъем

1x13-контактный штекер

1x7-контактный гнездовой разъем

1x7-контактный штекер 3,5x5 см Акриловая доска для задней крышки

стоимость доставки будет включена в ваш бюджет

Шаг 2: сделайте основную плату

Сделайте главную плату
Сделайте главную плату
Сделайте главную плату
Сделайте главную плату
Сделайте главную плату
Сделайте главную плату

1. Создайте каркас для материнской платы.

а. Возьмите перфорированные доски размером 8 x 5 см. Вырежьте его ножницами (или пилой), чтобы сделать перфорированную доску размером 3,5 x 5 см меньше. У вас должно остаться 18 рядов и 13 столбцов отверстий для штифтов. Вырежьте из акриловой доски кусок размером 3,5 x 5 см, который будет использоваться в качестве задней обложки.

б. Припаяйте 13-контактный гнездовой разъем к последнему ряду внизу для шляпки кнопки и расширения. c. Припаяйте 7-контактный гнездовой разъем к первому ряду вверху для 7-контактного OLED.

d. Припаиваем бесшумную кнопку к кнопке сброса. е. Припаиваем ползунковый переключатель к выключателю питания. f. Припаяйте 3,5-мм стереоразъем для наушников. грамм. Вставьте 3-контактный мини-переменный резистор 10 кОм.

2. Сделайте зарядное устройство 4,2 В LIPO и схему регулятора 3,3 В.

а. Отпаяйте 5-контактный регулятор 5V на плате Pro-Micro, чтобы мы могли подавать питание от внешнего регулятора 3.3V.

б. Обрежьте модуль зарядного устройства LIPO так, чтобы он мог поместиться на основной плате рядом с гнездом для батареи 3,4 мм. Вам нужно будет сделать разрез в месте соединения USB-разъема с остальной частью схемы. Если он все еще слишком велик, возможно, вам придется подрезать еще немного. В моем случае мне нужно переместить и повторно припаять один из резисторов, чтобы можно было подрезать дальше.

c. Обрежьте выступ в верхней части регулятора 3,3 В (AMS1117-3.3), чтобы уменьшить пространство, а также избежать короткого замыкания. Затем припаяйте контакт 1 к отрицательному выводу, а вывод 3 к положительному выводу модуля зарядного устройства LIPO. Припаяйте конденсатор 0,1 мкФ между контактом 1 и контактом 2, чтобы развязать и уменьшить шум. По возможности используйте небольшой конденсатор типа SMD, чтобы уменьшить пространство.

d. Подключите ламинированный (изолированный) провод 0,3 мм от вывода RAW на микроплате Pro к положительному входу 5 В модуля зарядного устройства. Подключите провод от контакта GND микроплаты Pro к отрицательному входу модуля зарядного устройства. Подключите провод от среднего пина (пин 2) регулятора 3,3 В. Подключите отрицательную и положительную клеммы аккумулятора LIPO к отрицательному и положительному выходу зарядного устройства соответственно.

d. Подключите USB-кабель от вашего компьютера к Pro-Micro Board. Контакт RAW должен подавать 5 В от USB-кабеля к модулю зарядного устройства LIPO, который будет регулироваться для зарядки аккумулятора LIPO. Светодиод зарядки должен загореться. Регулятор 3,3 В должен преобразовать выход 4,2 В в 3,3 В для питания платы Pro-Micro. Светодиод на плате Pro-Micro должен загореться.

е. Запустите Arduino IDE и нажмите Инструменты -> Порты, чтобы проверить имя порта, чтобы проверить, распознается ли порт USB Pro Micro вашим компьютером. На моем MAC OSX отображается «/dev/cu.usbmodem14201 (Arduino Leonardo)». Щелкните Tools-Boards и выберите «Arduino Leonardo». Затем загрузите пример скетча «Blink». Затем протестируйте загрузку, чтобы проверить, можете ли вы загрузить в Pro Micro. Если есть какие-то проблемы, перепроверьте проводку и пайку.

3. Сделайте дочернюю плату последовательной вспышки. а. Вырежьте меньшую одностороннюю перфорированную плату с 7 отверстиями для контактов x 4 отверстиями для контактов, чтобы использовать ее в качестве дочерней платы для размещения микросхемы флэш-памяти и дополнительных контактов D11, D12, D14. б. Разделите контактные площадки второго последнего ряда платы на две половины. Он будет использоваться для установки модуля последовательной флэш-памяти, который представляет собой устройство для поверхностного монтажа с узким расстоянием между контактами, так что два средних контакта будут стоять на двух половинах паяльной площадки и не будут замыкать накоротко. c. Припаяйте микросхему памяти Winbond W25Q128 к монтажной плате. Убедитесь, что два контакта не соприкасаются.

4. Припаиваем дополнительные отводы микросхемы ATMega32U4 к контактам D11, D12, D13. а. Используя тонкий припой и увеличительное стекло, припаяйте три ламинированных (изолированных) провода 0,5 мм к контактам микросхемы ATMega32U4, чтобы вывести контакты D11, D12, D13. См. Схему контактов ATMega32U4. Это самая сложная часть проекта. Я тратил полчаса каждый раз, когда мне нужно было паять это. Вы должны быть очень осторожны, чтобы случайно не замкнуть другие контакты микроконтроллера, оставив при этом прочное соединение, которое прослужит долго. Посмотрите видеоролики на YouTube, чтобы узнать, как выполнять такие крошечные работы по пайке и как избежать случайного разлива припоя с помощью резьбы для удаления припоя. Я бы не рекомендовал термофен / воздуходувку, если вы не достаточно умелы. Если расстояние и мощность не контролируются должным образом, это может легко испортить припои микросхемы ATMega32U4 или расплавить другие компоненты и повредить всю плату до невозможности восстановления.

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

5. Установите дочернюю плату последовательной флэш-памяти на микросхему Pro Micro. а. Припаяйте провода 0,5 мм к первому ряду контактов в верхней части платы Pro Micro, то есть TX и RAW.

б. Припаяйте провода 0,5 мм (например, от ножек транзисторов) к последним четырем рядам контактов на задней стороне микросхемы Pro Micro. то есть D6, D7, D8, D9 и SCLK, MISO, MOSI и A10. Провод должен выступать сверху и снизу, чтобы мы могли использовать его для пайки на дочерней плате и подключения ее к основной плате внизу. c. Припаяйте дочернюю плату последовательной флэш-памяти к Pro Micro, соединив последние ряды контактов Pro Micro с таковыми на дочерней плате.

6. Установите плату зарядного устройства LIPO Battery на главную плату. а. Припаяйте провода 0,5 мм (например, от ножек транзисторов) к 4 углам платы зарядного устройства LIPO Battery (для входа -ve, входа + ve, выхода -ve, выхода + ve). Просверлите отверстие в месте, где находится средний штифт регулятора 3 В. Припаяйте многослойный провод 0,3 мм к среднему контакту (выход 3,3 В). B. Припаяйте 4 ножки платы зарядного устройства к основной плате рядом с разъемом для наушников 3,5 мм. Чтобы уменьшить пространство, плата зарядного устройства должна быть прижата к основной плате.

7. Установите микроплату Pro в нижней части основной платы и припаяйте все контакты из последних 4 рядов и первого ряда Pro Micro к основной плате. Остальные контакты паять не нужно, позже они будут подключены многослойными проводами. Это сделано для упрощения модификации и, при необходимости, замены Pro Micro, если он сгорел.

8. Сделайте остальную пайку.

Подключите контакты платы Pro Micro к различным компонентам и разъемам. Все паяльные соединения будут производиться на нижней стороне двухсторонней перфорированной платы. После завершения пайки проверьте соединение.

9. Закройте нижнюю часть основной платы акриловой доской того же размера.

Шаг 3: сделайте шляпу с пуговицами

1. Создайте рамку для шляпы-пуговицы.

а. Возьмите перфорированные доски размером 8 x 5 см. Вырежьте его ножницами (или пилой), чтобы сделать перфорированную доску размером 3,5 x 5 см меньше. У вас должно остаться 18 рядов и 13 столбцов отверстий для штифтов. Вырежьте окно размером 2,8 x 2,2 см, достаточно большое, чтобы стекло OLED-дисплея выступало сзади. Для этого я использовал алмазный отрезной круг. Инструмент настолько острый и сильный, что вы можете потерять пальцы, если не будете осторожны. Вы можете поместить черенок во второй ряд отверстий для булавок сверху и на 9 ряды отверстий для булавок снизу. и во 2-м столбце отверстий для штифтов с каждой стороны.

б. Припаяйте 13-контактный штыревой разъем к последнему ряду монтажной платы.

c. Кнопки макета на рабочей плате для D-PAD (кнопки направления, вверх, вниз, влево, вправо), а также кнопки A и B. Затем припаяйте их к лицевой стороне монтажной платы.

d. В нижней части монтажной платы подключите одну сторону всех кнопок к контакту заземления (контакт 2) штыревого разъема.

е. Подключите второй контакт каждой кнопки к соответствующему контакту на вилке для этой кнопки.

f. Если вы создаете шляпу с кнопками для поворотного или дискового регулятора потенциометра, вы установите 3-контактный переменный резистор 10 кОм вместо кнопок направления D-PAD. Убедитесь, что номер детали переменного резистора начинается с «B» (например, «B103» означает макс. 10 кОм), а не с «A». «A» означает, что угол поворота пропорционален LOG сопротивления. B означает, что угол поворота пропорционален сопротивлению. нам нужны VR типа B для поворотного игрового контроллера. Подключите одну сторону потенциометра (контакт GND) к GND (контакт 2 заголовка кнопки). Подключите другую сторону потенциометра к VCC (контакт 3 заголовка кнопки). Подключите средний вывод потенциометра к выбранному аналоговому к цифровому выводу платы Pro Micro (один из A0, A1, A2, A3) в зависимости от того, каким выводом закодирована игра. Если управление не плавное (скачет), вы можете подключить конденсатор 100 пФ между контактом GND и средним контактом потенциометра, чтобы изолировать от шума в цепи.

Шаг 4. Настройте IDE Arduino

Если вы новичок в Arduino, перейдите по адресу https://www.arduino.cc, чтобы загрузить Arduino IDE для операционной системы, которую вы используете, например Windows 10, Mac OSX или Linux.

Затем установите его.

Шаг 5: сделайте кабель USBasp

Сделайте кабель USBasp
Сделайте кабель USBasp

В отличие от загрузки двоичных кодов / игр на любую плату Arduino, программирование загрузчика не может быть выполнено через порт USB.

Чтобы записать пользовательский загрузчик (Cathy3K) на чип Atmega32U4, вам понадобится программатор USBasp. Однако наше творение работает при напряжении 3,3 В, нам необходимо дополнительно модифицировать программатор USBasp для работы при напряжении 3,3 В.

Обратитесь к следующему проекту с инструкциями по изменению вашего программатора USBasp для работы как при 3,3 В, так и при 5 В с помощью перемычек.

www.instructables.com/id/Modify-a-5V-USBasp-Arduino-Bootloader-Programmer-t/

Затем следуйте схеме контактов и видео, чтобы сделать программный кабель USBasp для ArduBaby. оригинальный кабель USBasp, поставляемый с USBasp, имеет два разъема, каждый по 10 контактов. Мы разрежем этот кабель пополам и подключим 6-контактный штекер к одному концу, оставив другой конец, который соединяется с платой USBasp, на 10-контактном.

Этот другой конец будет подключать контакты GND, VCC, MOSI, MISO, SCK, Reset от USBasp к соответствующим контактам ATmega32U4 через штекерный разъем, который подключается к первым шести контактам женского разъема на Ardubaby.

Чтобы запустить программу или записать загрузчик на ATmega32U4, снимите шляпку кнопки и подключите этот 6-контактный кабель USBasp.

Убедитесь, что вы четко отметили, какой из контактов является первым, на разъеме кабеля, чтобы не было неправильного подключения. При разработке схемы расположения выводов для заголовков кнопок Ardubaby я попытался расположить выводы так, чтобы даже если вы поменяли местами вывод 1 и вывод 13, источник питания -ve случайно не встретится с источником питания + ve, чтобы избежать повреждений. Однако вы никогда не знаете, что могут произойти другие вещи, которые могут повредить ваш комплект, если вы подключитесь в неправильном направлении.

Я прожигу крошечное отверстие, чтобы отметить это на головке, используя кончик паяльника.

Шаг 6: запишите загрузчик

MR. Blinky создал самодельный Arduboy-пакет для самодельного Arduboy.

В его пакет входят драйверы платы и библиотека Arduboy, которая работает как с разными версиями оригинального Arduboy, так и с самодельными.

1. Найдите самодельный Arduboy в папке MR. Blinky на GitHub. https://github.com/MrBlinky/Arduboy-homemade-package 2. Следуйте инструкциям на GitHub, чтобы настроить IDE Arduino с помощью самодельного пакета. 3. Сначала скопируйте URL-адрес «Дополнительного менеджера платы» для самодельного пакета Arduboy.

4. Запустите Arduino IDE. Нажмите «Настройки» в верхнем меню Arduino. Вставьте этот текст в «URL-адреса Additional Boards Manager». Примечание. Если у вас уже есть другой текст в этом поле, вставьте этот дополнительный текст в начало, затем добавьте «» и оставьте другой текст без изменений. 5. Закройте Arduino IDE и снова запустите IDE, чтобы изменения вступили в силу. 6. Щелкните Инструменты -> Доска: -> Менеджер доски. Введите самодельный для поиска. Выберите, чтобы установить самодельный пакет Arduboy от Mr. Blinky. Затем нажмите «Обновить», чтобы получить последнюю версию. Пакет будет добавлен в Arduino. 7. Теперь выберите Инструменты-> Доска: «Самодельный Arduboy. и выберите следующие параметры для самодельного Arduboy »на основе:« SparkFun Pro Micro 5V - стандартная проводка »Ядро:« Оптимизированное ядро Arduboy »Загрузчик:« Cathy3K »Программатор: USBasp 8. Выключите Ardubaby и снимите шляпку кнопки. 9. Установите перемычку на USBasp на 3,3 В. Убедитесь, что вы используете модифицированный USBasp, который полностью работает при напряжении 3,3 В. 10. Подключите USBasp к USB-порту вашего компьютера. Подключите специальный кабель USBasp к ArduBaby к USBasp, а другой конец - к заголовку кнопки Ardubaby, выровняйте контакт 1 с контактом 1. Только первые 6 контактов Ardubaby используются для записи загрузчика.

11. Теперь ваш Ardubaby должен быть включен от источника питания 3,3 В через USBasp. 12. Один раз нажмите кнопку сброса ArduBaby. 13. Щелкните по кнопке Tools-> Boards-> Burn Bootloader в среде Arduino IDE. 14. Проверьте сообщение, чтобы убедиться, что запись загрузчика прошла успешно. 15. Если нет, проверьте кабель и убедитесь, что вы подключили контакты в правильном направлении и выровняли контакт 1 с контактом 1. Иногда Ardubaby начинает играть в предыдущую игру, если меню загрузки выходит из строя. Итак, вам нужно быстро нажать кнопку «Записать загрузчик» сразу после того, как вы нажали кнопку сброса, чтобы перевести Ardubaby в режим ожидания прошивки. 16. Если все в порядке, ArduBaby перезагрузится, и вы увидите либо меню загрузки, либо предыдущую игру, которую вы загрузили в ArduBaby.

Шаг 7. Скомпилируйте и загрузите одиночные игры в Arduboy

Игры для Arduboy можно скачать из следующих источников:

Форум сообщества Arduboy для игр:

Выполните поиск на GitHub по запросу «Arduboy games» https://github.com/topics/arduboy-game или просто выполните поиск по «GitHub arduboy games» в Google.

Коллекции игр, которыми поделились другие. например Коллекции Эрвина Arduboy

arduboy.ried.cl/

Вы можете загрузить исходный код игры, которую вы загрузили в Arduino, и загрузить в Arduboy. Посмотрите видео, как это делается.

или просто шестнадцатеричный файл (скомпилированный двоичный файл, но представленный в шестнадцатеричном формате, распечатывается в текстовый файл вместо двоичного файла).

Для исходного кода просто откройте исходный код в среде Arduino IDE.

Исходный код, например picovaders.ino необходимо хранить в одноименной папке, например. пиковадеры

Необходимые библиотеки Arduboy2 должны быть уже установлены на предыдущем шаге, где мы загружаем менеджер плат для самодельного пакета Arduboy.

Просто подключите Arduboy к USB-порту вашего компьютера.

Включите его, затем нажмите кнопку «Загрузить» в среде Arduino IDE, чтобы скомпилировать и загрузить код в Arduboy, чтобы начать игру.

Шаг 8. Загрузите файлы в формате Single Hex

Hex-файл - это текстовый файл, содержащий двоичные коды, полученные в результате компиляции вашей программы Arduino (эскиз), но представленный в формате текстового файла с использованием двухзначных шестнадцатеричных чисел 0-9, A-F.

Получить этот шестнадцатеричный файл можно разными способами.

1. Мы можем загружать шестнадцатеричные файлы из различных источников, которые мы объяснили выше:

community.arduboy.com/c/games Коллекции игр Arduboy от Эрвина

Найдите "игры для Arduboy" на GitHub.com или google.com.

Сохраните эти шестнадцатеричные файлы в файлы с расширением.hex.

2. Как вариант, вы можете создать свой собственный шестнадцатеричный файл.

В среде Arduino IDE выберите «Скетч»> «Экспорт скомпилированного двоичного файла». Ваш скетч будет скомпилирован, а затем копия скомпилированного файла.hex будет выведена в каталог вашего скетча. Перейдите к папке эскиза или в среде IDE выберите «Скетч»> «Показать папку эскиза», чтобы увидеть шестнадцатеричный файл. Если вы установили самодельный пакет MR. Blinky, будут созданы две версии файла.hex. Например, если вы скомпилируете sketh picovaders.ino, будут созданы следующие два файла.hex.

picovaders.ino-arduboy-promicro-ssd1306.hex picovaders.ino with_bootloader-arduboy-promicro-ssd1306.hex

Мы будем использовать первый файл: picovaders.ino-arduboy-promicro-ssd1306.hex

3. Чтобы загрузить шестнадцатеричный файл в Arduboy, вам необходимо использовать загрузчик. Их много в Интернете. Мне нравится использовать загрузчик MR. Blinky, поскольку он прост в использовании.

Перейдите по адресу https://github.com/MrBlinky/Arduboy-Python-Utilities и следуйте инструкциям по установке утилит Arduboy Python от MR. Blinky. Если у вас не установлен python, вам необходимо сначала выполнить инструкции по установке python и необходимых модулей python.

4. Подключите Arduboy к USB-порту вашего компьютера. Включите Arduboy.

5. Запустите программу оболочки в вашей операционной системе, например приложение терминала в Mac OSX или командную строку в Windows, чтобы ввести следующие команды для загрузки шестнадцатеричного файла в Arduboy. В качестве примера возьмем наш предыдущий скетч на picovaders.ino.

python uploader.py picovaders.ino-arduboy-promicro-ssd1306.hex

6. После загрузки игры Arduboy сбросит настройки и запустит игру.

Шаг 9. Запишите игры на последовательную флэш-память

1. Чтобы записать объединенный файл игры на последовательную флеш-память, вам нужно снова использовать Arduboy Python Utilities от MR. Blinky. У вас должно быть это уже установлено, если вы выполните предыдущий шаг.

В противном случае перейдите по адресу https://github.com/MrBlinky/Arduboy-Python-Utilities и следуйте инструкциям по установке утилит MR. Blinky Arduboy Python. Если у вас не установлен python, вам необходимо сначала выполнить инструкции по установке python и необходимых модулей python.

2. Создайте индексный файл для консолидированного файла образа игры, который будет содержать до 500 игр.

Мы будем использовать сценарий Use the flashcart-builder.py для создания консолидированных файлов образа игры для всех игр, которые вы хотите сохранить в последовательной флэш-памяти Arduboy. Последовательная флэш-память объемом 16 МБ может вместить до 500 игр. Этот сценарий создает двоичное флэш-изображение из индексного файла (.csv) и следующих 2 файлов для каждой игры: a..hex файлы, которые представляют собой текстовый файл, содержащий шестнадцатеричные коды двоичных изображений скомпилированных игр Arduboy. См. Пример синтаксиса в файле example-flashcart / flashcart-index.csv. Этот файл включается в пакет, если вы нажмете «Клонировать» или «Загрузить». б.-p.webp

Видео на YouTube также объясняет, как разместить вещи в этом индексном CSV-файле в нужном месте. Следует отметить, что файл примеров.csv с GitHub MR. Blinky используется на ПК с Windows, в именах путей используется обратная косая черта "\". Если вы используете систему liunx или MAC OSX, вам необходимо изменить его на «/».

Для быстрого старта вы можете загрузить мой пакет из 63 игр с https://github.com/cheungbx/ArduBaby 63games.zip

Этот пакет содержит шестнадцатеричные и png-файлы 63 выбранных мной игр, а также индексный файл games.csv и файл games-image.bin, созданный с помощью сценария flashcard-builder.py.

Вы можете добавить больше игр в games.csv и создать собственный консолидированный файл двоичного образа игры, который будет записан на последовательную флэш-память. Вы можете поместить не более 500 игр на 16-мегабайтную последовательную флеш-память.

Я объясню, как создать файл.csv с помощью games.csv, который вы можете загрузить с моего GitHub.

Хотя файл.csv можно открыть с помощью Excel. НЕ используйте excel для открытия файла. Это повредит файл. Пожалуйста, используйте только текстовый редактор. Вы можете использовать блокнот в Windows. Я использовал textEdit в MAC и щелкнул «Форматировать» -> «Сделать обычный текст».

Первая строка файла.csv - это заголовок, который можно игнорировать. Список; Описание; Титульный экран; Шестнадцатеричный файл

Вторая строка указывает на файл графического изображения (должен быть 128x64 пикселя в формате файла png) для экрана меню загрузчика. 0; Загрузчик; arduboy_loader.png;;;

Настраиваются игры, начиная с третьей строчки. Игры организованы в группы в меню загрузчика, называемые категориями. Эта строка является заголовком группы списка игр для этой группы, например. Экшн-игра. Он также указывает на файл с графическим изображением для группы игр. Цифра 1 в начале обозначает группу номер 1. Все игры, следующие за этой группой, будут начинаться с этого номера. 1; Экшены; экраны категорий / Action.png;;;

Затем вы добавляете по одной строке для каждой игры в этой группе. Начиная с номера группы 1, названия игры и пути к графическому файлу для снимка экрана, а также пути к шестнадцатеричному файлу. Все разделены знаком «;». Добавьте еще один ";" чтобы пропустить параметр для файла сохранения. 1; 1943; Arcade / Nineteen43.png; Arcade / Nineteen43.hex;; 1; 2048; Аркада / 2048.png; Аркада / 2048.hex;;

После того, как вы закончите первую группу игр, вы можете добавить вторую группу игр и так далее. например

9; Демо и тест; demos / demotest.png;;; 9; Горячее масло; демо / HotButter_AB.png; демо / HotButter_AB.hex;; 9; Flashcart test; demos / flashcart-test / flashcart-test-title.png; demos / flashcart-test / flashcart-test.hex; demos / flashcart-test / badapple-frames.bin;

В последней строке есть файл сохранения в параметре, который является мультипликационным фильмом.

3. Чтобы создать консолидированный файл образа игры, введите команду, где games.csv - это индексный файл вашей игры.

python flashcart-builder.py games.csv

Это создаст файл с именем games-image.bin.

4. Запишите объединенный файл образа игры в Arduboy.

Мы используем сценарий flashcart-writer.py MR. Blinky для записи файла консолидированного образа игры в последовательную флэш-память Arduboy.

Если вы используете мой образец файла games-image.bin, вы можете ввести эту команду.

python flashcart-writer.py games-image.bin

Если вы используете OLED-экран SSD1309 вместо SSD1306 OLED в стандартной сборке, вы можете исправить драйвер экрана на лету. Чтобы автоматически применить исправление SSD1309 к загруженному образу, сделайте копию flashcart-writer.py и переименуйте ее в flashcart-writer-1309.py. Затем введите

python flashcart-writer-1309.py games-image.bin

Шаг 10. Играйте в игры с последовательной вспышки

Чтобы играть в игры с последовательной вспышки, включите Arduboy.

Если у вас уже есть загруженная игра, она запустится автоматически. Нажмите кнопку сброса в верхней части Ardubaby один раз, чтобы перейти в меню загрузчика.

Отобразится меню загрузчика. Светодиод RGB загорится последовательно.

Если вместо этого вы видите значок, похожий на порт USB, это означает, что микросхема последовательной флэш-памяти не работает. Пожалуйста, проверьте проводку.

Если вы не нажмете никаких клавиш в течение 12 секунд, будет запущена игра, уже сохраненная во внутренней флэш-памяти ATMega32U4.

Чтобы вернуться из игры в меню загрузчика, просто нажмите кнопку «Сброс» один раз.

Вы можете нажимать левую или правую кнопку для прокрутки различных категорий (групп) игр. Нажимайте кнопку «вниз» или «вверх» для прокрутки игр в категории (группе). Нажмите кнопку «B», чтобы скопировать игру из последовательной флэш-памяти во внутреннюю флэш-память ATMega32U4. Игра начнется через секунду.

Теперь у вас есть крошечная игровая консоль, в которую можно играть в дороге.

Я призываю вас собрать и загрузить на вашу 16-мегабайтную последовательную флеш-память 500 игр. Я еще не видел никого, кто бы это делал, чтобы заполнить серийную вспышку. Если вы можете это сделать, поделитесь с нами этим объединенным файлом игры.

Рекомендуемые: