Pull to refresh

Разработка и создание с нуля аркадного автомата на четверых игроков

Reading time19 min
Views6.4K
image

В ноябре 2019 года я уволился с работы и решил посвятить несколько месяцев изучению нового навыка, которому я уже давно хотел научиться. В то время я работал веб-разработчиком. До этого я изучал разработку ПО. А ещё раньше, детстве, я постоянно экспериментировал с электроникой и программами. Поэтому я достаточно уверенно ощущал себя в создании ПО.

Однако всегда существовала эта волшебная штука под названием «железо», которую я использую ежедневно, но понятия не имею, как она на самом деле работает. Разработчику ПО (и в особенности веб-разработчику) нет необходимости разбираться в оборудовании. Так как весь код веб-разработки очень высокоуровневый, редко оказывается, что проблема нашего ПО связана с аппаратной частью.

Поэтому я никогда не занимался «железом» и не имел никаких общих знаний об электротехнике, кроме тех, которые нам давали в старшей школе. И я хотел изменить эту ситуацию. Я поставил перед собой нелепую цель, которая в то время казалась очень далёкой от моего набора знаний. А потом… я просто начал экспериментировать. Я планировал проверить, как далеко смогу зайти, прежде чем у меня иссякнет запас мотивации. Не ожидал, что достигну своей цели, но каким-то образом мне это удалось.

Вот мой результат:


Моя невероятная цель заключалась в создании с нуля аркадной игровой консоли на четырёх игроков. В качестве мозгов в ней используется микроконтроллер, в качестве дисплея — светодиодные ленты. При помощи одного джойстика и четырёх кнопок на каждого игрока, расположенных по краям стола, игроки управляют игрой, которая динамически загружается в систему с чипа памяти. Благодаря этому игровой процесс на устройстве напоминает старые добрые консоли. Только теперь нам не нужно дуть на картридж, чтобы избавиться от багов.
Total votes 24: ↑24 and ↓0+24
Comments4

Простая игровая тв-приставка на Arduino

Reading time11 min
Views60K

Вступление


При свете дня, а затем и во сне, возникла у меня идея создания собственной регламентированной тв-приставки. Собственно, тут-то открылся передо мной богатый и насыщенный мир радиотехники. Так как ранее я не имел дела с серьезной разработкой электроники, мой выбор пал на более простой вариант — Arduino и ее самая распространенная модель — Uno.




План работы

1. Разобраться с библиотекой
2. Спаять плату видео вывода
3. Написать код
4. Вырезать корпус


Финальная внешняя составляющая не особо важна в случае с подобными проектами.

Шаг 1. Разбираемся, что к чему


После нескольких десятков минут отчаянного гугления пришел к выводу, что создать приставку даже типа Денди у меня не получится. Ну, что тут делать, раз взялся, буду доводить дело до конца.
Читать дальше →
Total votes 27: ↑26 and ↓1+25
Comments30

Создаём портативную платформенную игру на микроконтроллере Cortex M0+

Reading time21 min
Views12K

Введение


(Ссылки на исходный код и проект KiCAD приведены в конце статьи.)

Хотя мы родились в 8-битную эпоху, нашим первым компьютером был Amiga 500. Это великолепная 16-битная машина, обладавшая потрясающими графикой и звуком, благодаря чему она отлично подходила для игр. Очень популярным игровым жанром на этом компьютере стали платформеры. Многие из них были очень цветастыми и обладали очень плавным параллаксным скроллингом. Это стало возможно благодаря талантливым программистам, гениально использовавшим сопроцессоры Amiga для увеличения количества экранных цветов. Взгляните, например на LionHeart!


Lionheart на Amiga. Это статичное изображение не передаёт всю красоту графики.

С 90-х электроника сильно поменялась, и теперь есть множество маленьких микроконтроллеров, позволяющих создавать удивительные вещи.

Мы всегда любили платформенные игры, а сегодня всего за несколько долларов можно купить Raspberry Zero, установить Linux и «довольно легко» написать красочный платформер.

Но это задача не по нам — мы не хотим палить из пушки по воробьям!

Мы хотим использовать микроконтроллеры с ограниченной памятью, а не мощную систему на чипе со встроенным GPU! Другими словами, мы хотим трудностей!
Total votes 41: ↑41 and ↓0+41
Comments18