Оглавление:
- Шаг 1. Получите все детали
- Шаг 2: сделайте основную плату
- Шаг 3: сделайте шляпу с пуговицами
- Шаг 4. Сделайте кабель USBasp
- Шаг 5: Настройте Arduino IDE
- Шаг 6: запишите загрузчик
- Шаг 7. Соблюдайте и загружайте одиночные игры
- Шаг 8. Загрузите файлы в формате Single Hex для игр
- Шаг 9. Запишите игры на последовательную флэш-память
- Шаг 10. Играйте в игры с последовательной вспышки
Видео: ArduBaby - половинный Arduboy с 500 играми на последовательной вспышке: 10 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Вы можете просмотреть это видео на YouTube, чтобы увидеть, как я создал этот крошечный самодельный Arduboy с последовательной флеш-памятью, который может хранить до 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. Я обошелся менее 12 долларов США (без учета доставки), чтобы купить все это на taobao.com и отправить их в Гонконг.
Arduino Pro Micro
OLED 64x128 SSD1306 SPI 0,96 дюйма
W25Q128 16-мегабайтная микросхема памяти
3,7 В 280 мАч Lipo аккумулятор
Модуль зарядного устройства USB LiPO (4,2 В)
Разъем для наушников 3,5 мм
10K mini VR (B103) для регулировки громкости
10K mini VR (B103) для потенциометра или поворотного регулятора (опция)
мини-пьезо-динамик
3к сопротивляющийся
Три резистора 1K
Светодиод RGB 3 в 1
Семь бесшумных кнопок 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 В).
б. Припаяйте 4 ножки платы зарядного устройства к основной плате рядом с разъемом для наушников 3,5 мм. Чтобы уменьшить пространство, плата зарядного устройства должна быть прижата к основной плате.
7. Установите микроплату Pro в нижней части основной платы и припаяйте все контакты из последних 4 рядов и первого ряда Pro Micro к основной плате. Остальные контакты паять не нужно, позже они будут подключены многослойными проводами. Это сделано для упрощения модификации и, при необходимости, замены Pro Micro, если он сгорел.
8. Сделайте остальную пайку.
Подключите контакты платы Pro Micro к различным компонентам и разъемам. Все паяльные соединения будут производиться на нижней стороне двухсторонней перфорированной платы. После завершения пайки проверьте соединение.
9. Закройте нижнюю часть основной платы акриловой доской того же размера.
Шаг 3: сделайте шляпу с пуговицами
а. Возьмите перфорированные доски размером 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. Сделайте кабель 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, чтобы избежать повреждений.
Однако вы никогда не знаете, что могут произойти другие вещи, которые могут повредить ваш комплект, если вы подключитесь в неправильном направлении.
Я прожигу крошечное отверстие, чтобы отметить это на головке, используя кончик паяльника.
Шаг 5: Настройте Arduino IDE
Если вы новичок в Arduino, перейдите на
чтобы загрузить Arduino IDE для используемой вами операционной системы, например Windows 10, Mac OSX или Linux.
Затем следуйте инструкциям по установке.
Шаг 6: запишите загрузчик
MR. Blinky создал самодельный Arduboy-пакет для самодельного Arduboy.
В его пакет входят драйверы платы и библиотека Arduboy, которая работает как с разными версиями оригинального Arduboy, так и с самодельными.
1. Найдите самодельный Arduboy в папке MR. Blinky на GitHub.
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 для игр:
Поиск на GitHub по теме "Игры для Arduboy"
github.com/topics/arduboy-game или просто выполните поиск в Google "GitHub arduboy games".
Коллекции игр, которыми поделились другие. например Коллекции Эрвина Arduboy
arduboy.ried.cl/
Вы можете загрузить исходный код игры, которую вы загрузили в Arduino, и загрузить в Arduboy. Посмотрите видео, как это делается.
или просто шестнадцатеричный файл (скомпилированный двоичный файл, но представленный в шестнадцатеричном формате, распечатывается в текстовый файл вместо двоичного файла).
Вы можете выполнить шаги в утилитах python uploader.py MR. Blink, чтобы загрузить шестнадцатеричный файл на ваш Arduboy.
Команда: python uploader.py yourgame.hex
Шаг 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. У вас должно быть это уже установлено, если вы выполните предыдущий шаг.
В противном случае перейдите к
github.com/MrBlinky/Arduboy-Python-Utiliti…
и следуйте инструкциям по установке утилит 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
felipemanga.github.io/ProjectABE/
и сделайте снимок экрана. Или просто введите название игры на кружке и сделайте снимок экрана. Затем захваченная / созданная графика размером до 128x64 пикселей с помощью кисти в Windows или предварительного просмотра в Mac OSX.
Видео на 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 игр. Я еще не видел никого, кто бы это делал, чтобы заполнить серийную вспышку. Если вы можете это сделать, поделитесь с нами этим объединенным файлом игры.
Рекомендуемые:
Raspberry PI 3 - включение последовательной связи с TtyAMA0 в BCM GPIO 14 и GPIO 15: 9 шагов
Raspberry PI 3 - включение последовательной связи с TtyAMA0 в BCM GPIO 14 и GPIO 15: недавно у меня был интерес к включению UART0 на моем Raspberry Pi (3b), чтобы я мог подключить его напрямую к устройству уровня сигнала RS-232, используя стандарт 9 -контактный разъем d-sub без необходимости переходить через переходник с USB на RS-232. Часть моего интереса
Управление Dynamixel 12A путем последовательной отправки пакетов: 5 шагов
Управление Dynamixel 12A путем последовательной отправки пакетов: DYNAMIXEL 12A
Мини-игровая консоль Ardubaby на 500 игр: 10 шагов
Мини-игровая консоль Ardubaby С 500 играми: кредиты создателю (Кевину Бейтсу) делают Arduboy очень успешной 8-битной игровой консолью. Были тысячи игр, написанных любителем, который свободно поделился ими на форуме сообщества Arduboy, так что больше людей могут научиться программировать. Hardw
Консоль Arduino VGA с пятью играми: 4 шага
Консоль Arduino VGA с пятью играми: в моих предыдущих инструкциях я воспроизвел упрощенные версии некоторых из самых популярных классических аркадных игр с помощью простой Arduino и нескольких других компонентов. Позже я соединил пять из них в один эскиз. Здесь я покажу
Web-приложение SmartMirror с использованием последовательной связи: 6 шагов
Web-ориентированное зеркало SmartMirror с использованием последовательной связи: эта инструкция поставляется со всем готовым к использованию кодом. Разработка была очень сложной, но после настройки ее действительно легко настроить. Взгляните и наслаждайтесь;)