Введение
Привет, это карманный брелок-приставка с игрой Doom на Arduino nano!
Данный проект был разработан на базе другого проекта и был усовершенствован.
Описание:
Данная приставка выполнена очень компактно в ней используется дисплей SSD1306 он основан на технологии светоизлучающих диодов (LED), в которой излучающим электролюминесцентным слоем является пленка из органического соединения, излучающая свет под воздействием электрического тока. Этот слой органического полупроводника расположен между двумя электродами, причем как минимум один из них обычно прозрачный. На выбор есть вариант из нескольких цветов (желтый, белый, голубой).
Так же корпус для этой приставки вы можете напечатать на 3D-принтере со всеми настройками, которые идут в инструкции.
Данный брелок сделан на аккумуляторе, которого может хватить на долгое время игры. Его можно заряжать от Type-C, и у него показывается заряд светодиодом.
Также эту приставку можно перепрошить через второй порт Type-C на другие игры или анимации.
Круто, не правда ли? Тогда приступим к ее созданию!
Необходимые компоненты
Для сборки брелка нам понадобится:
-
Arduino nano (без ножек, с Type-C разъемом);
-
OLED дисплей на базе SSD1306 (128×64 пикселей);
-
тактовые кнопки (6x6x5 MM);
-
микропереключатель с фиксацией (5.8×5.8 ММ);
-
зарядка 4056 (с Type-C разъемом);
-
литевая батарея 850mah 3.7v (подойдут и другие батареи размером 59x19x8.5 ММ и меньше);
-
вплавляемая втулка М2.5 (М2.5x3x4 ММ);
-
винты М2.5 (М2.5×5 ММ).
Сборка
Этап 1 «Сборка на маетной плате»

Получив все необходимые компоненты, давайте приступим к сборке на макетной плате, чтобы проверить их работоспособность.
В сборке используйте макетную плату, соединительный провода, и компоненты с ножками (Arduino nano, OLED дисплей).
Также можете проверить аккумулятор с зарядной платой, спаяв + на аккумуляторе к B+ на зарядной плате, а — к B-. Далее припаяйте к OUT+ и OUT- контактные провода и подключите к макетной плате OUT+ к VCC а OUT- к GND.
Подключение дисплея:
-
GND к GND на плате
-
VCC (VDD) к 3.3V на плате
-
SDA к A4 на плате
-
SCL (SCK) к A5 на плате
Подключение кнопок:
-
Ко всем кнопкам подключите GND с платы
-
Кнопка «Вверх» к порту D8 на плате
-
Кнопка «Вниз» к порту D3 на плате
-
Кнопка «Левая» к порту D6 на плате
-
Кнопка «Правая» к порту D7 на плате
-
Кнопка «Выстрел» к порту D10 на плате
ПРЕДУПРЕЖДЕНИЕ: при подключении платы arduino к компьютеру отключайте аккумулятор от макетной платы!
Этап 1.2 «Загрузка кода на макетную плату»
В нашем коде убраны звуки, так как решили уменьшить вес кода и убрать зуммер, который занимает много места и неприятно звучит.
Скачайте ZIP файл и распакуйте его.
Далее откройте файл Doom_no_sound.ino в Arduino IDE:

ПРЕДУПРЕЖДЕНИЕ: при подключении платы arduino к компьютеру отключайте аккумулятор от макетной платы!
Затем подключите плату Arduino, выберите порт, к которому подключили ее, загрузите код на свою плату.
На экране должен отобразится логотип DOOM с текстом «please fire«.
Как это работает
Если у вас всё заработало, поздравляю! Можем переходить к следующему этапу.
Этап 2 «Компактная сборка и пайка оборудования»
-
Разместите зарядную плату с краю аккумулятора и закрепите двухсторонним скотчем.

-
Спаяйте кнопки и припаяйте провода, как показано на схеме. (К GND можно припаять провод в одну из точек, указанной на схеме).

-
Отпаяйте от платы Arduino Nano кнопку Reset и припаяйте кнопки движения как показано на схеме и кнопку выстрела (кнопку выстрела прикрепите менее сантиметра от Type-C разъема над процессором двухсторонним скотчем. Важно! чтобы контакты кнопки и оголенного провода не касались процессора или платы).

-
Припаяйте провода от SDA к A4 на плате и от SCL (SCK) к A5 на плате. Провод GND припаяйте к кнопке выстрела и к плате. Контакт VCC (VDD) на экране припаяйте к 3V3 на плату.
-
Наклейте двухсторонний скотч на плату Arduino между процессором и левым краем, а на него тонкий (1-2 мм) не проводящий электричество материал (пластик, дерево, картон), который будет служить платформой для экрана. После чего наклейте на плату дисплея двухсторонний скотч и приклейте к платформе.

Этап 3 «3D печать и сборка деталей»
Данная модель состоит из нескольких частей, которые вы, может, можете распечатать разным пластиком (я использовал белый и черный PETG пластик и печатал на принтере Elegoo Neptune 4 Pro), Перед печатью убедитесь, что у вас правильно настроены настройки поддержек и разглаживания в вашем слайсере и откалиброван 3D-принтер.
Ссылка на скачивание файлов для печати корпуса брелка.
Печать:
-
body — 1 штука (заполнение 20%; поддержки включены)
-
back cover — 1 штука (заполнение 20%; поддержки выключены; разглаживание по желанию)
-
front cover — 1 штука (заполнение 20%; поддержки выключены; разглаживание по желанию)
-
button 1 — 1 штука (заполнение 80%; поддержки выключены)
-
button 2 — 1 штука (заполнение 80%; поддержки выключены)
-
button 3 — 4 штуки (заполнение 80%; поддержки выключены)
-
button 4 (запасная) — в случае если button 3 не влезает(заполнение 80%; поддержки выключены)
Сборка:
После печати body и снятия поддержек у вас могут возникнуть проблемы с качеством поверхности для аккумулятора и отверстием для проводов, вы ее можете выровнять наждачной бумагой и доделать отверстие сверлом.
Далее вставьте вплавляемую втулку М2.5 разогретым паяльником в заготовленные в корпусе отверстия.
Вставьте в боковое отверстие кольцо для брелка и просуньте в него цепочку.
Этап 4 «Встраивание оборудования в корпус»

Припаяйте провода к GND и VCC на плате Arduino и просуньте через отверстие в корпусе под платой.
Поместите основное оборудование в верхнюю часть корпуса (порт COM) и закрепите двух сторонним скотчем или термоклеем (будьте осторожны при нанесении горячего клея на оборудование, чтобы не повредить радиоэлементы и разъем).

Припаяйте к центральному контакту кнопки с зарядной платы OUT+ и в правый контакт кнопки припаяйте Vin с платы Arduino. Приклейте кнопку термоклеем и закрепите аккумулятор с зарядной платой к корпусу двухсторонним скотчем. Спаяйте провода GND и OUT- между собой и наденьте термоусадку.
Приклейте button 1 к кнопке выключения. Прикрутите заднюю крышку на винты М2.5 (М2.5×5 ММ). Поставьте кнопки button 2 и button 3 на свои места (Если у вас не вмешается одна из кнопок попробуйте сделать button 4) и прикрутите переднюю крышку.
Если вы сделали все правильно у вас получится примерно вот такой результат:


Итог
Если у вас всё получилось, поздравляю! Если же нет, то вы можете оставить свои вопросы в комментариях к статье или задать их в личном сообщении автору. Так же вы можете поделиться своими результатами, нам будет интересно почитать.
В этом посте скоро появятся коды для перепрошивки на новые игры и анимации для этого брелка.
Над проектом работали:
Dimon406
Инженер, программист.
Romka-Krutoy
Программист, фотограф.
ссылка на оригинал статьи https://habr.com/ru/articles/1037230/