Отечественная промышленность освоила выпуск конструктора для сборки игровой приставки на ардуино нано. А выпуск ПО для игровой приставки почему-то не освоила (в комплекте 8 игр). В рекламе обещаны 500 игр, но, чтобы их получить (скомпилировать из исходников), пришлось приложить некоторые усилия.
Консоль в отличии от дизайна Arduboy сделана на Arduino Nano/Atmega 328p. Оригинальная разработка выполнена на Atmega32u4, из-за чего двоичные файлы оригинального проекта не подходят. А от проекта SLIMBOY (тоже на Arduino Nano) отличается привязкой клавиш к пинам.
В процессе доработки было выполнено:
I2C экран SSD1306 0,96" заменен на I2C экран SSD1306 2,4" (программно решена проблема с шумом дросселя на плате экрана; дополнительно проверена работа с экраном I2C SH1106 1,3")
доработка библиотеки Arduboy2 для сборки игр под аппаратную платформу (библиотека из проектов harbaum/SLIMBOY и MLXXXp не подошли для экрана 2,4 - работал не стабильно; кроме того старые библиотеки не поддерживали работу с экраном 1,3” на SH1106)
разработан корпус под экран 2,4”
Результат: сын, которому был подарен конструктор, играет в Dark&Under и доволен.
Есть еще одна особенность дорабатываемого варианта Arduboy: пьезоизлучатель подключен между пином и землей, тогда как во всех остальных вариантах (оригинальный ардубой, slimboy) и в самих библиотеках вывода звука подключение выполняется между двумя пинами (пока не менял). Пока не совсем понятно, как сильно это влияет на работу в играх.
Спасибо!
Очень хотел применить экран 2,42", благодаря вашим библиотекам всё получилось!!!
Зуммер включил через резистор 220 Ом на землю, чтоб не так громко пищало!
В новой версии добавил поддержку аналогового джойстика на Joystick Shield (в этом случае приходится пожертвовать экономией энергии за счет включения АЦП, и немного памятью - добавляется 3 глобальные переменные)
На фото - экран 1.3" SH1106. Плата UNO. Если кто-то захочет повторить, имейте в виду, что из-за длинных проводов и плохого контакта на интерфейсе I2c экран может не запуститься (я припаял интерфейс к интерфейсу I2c Joystick Shield-а с обратной стороны). Кроме того для игры неплохо всё это установить на диэлектрическое основание (если коснуться интерфейса экрана, изображение сбивается)
Да. С 2,4" прямо человеком себя чувствуешь
У меня такая (STL на корпус тоже выложен, правда там версия без отверстия под дополнительный порт экрана, сделал этот вырез для тестирования разных OLED - дисплеев)