Когда 40 лет назад состоялся первый дебют легендарного «Боинг Болла», это было настоящее чудо. На тот момент в мире домашней компьютерной техники не было ничего подобного, и это показало, что новая «Amiga» от Commodore была мощной разработкой, которая, несомненно, выдержит испытание временем. Сорок лет спустя Amiga, какой мы ее знали тогда, возможно, уже не будет с нами, но [Марк Уилсон] воссоздает ее культовую демонстрацию на микроконтроллере — но не просто на любом микроконтроллере. “AMeagerBall ” является эксклюзивом Arduino Uno, и в нем даже рассказывается самое время. Как и в оригинальном “Boing Ball”, демонстрационная версия работает на 320 ×240 оборотах, хотя и на сенсорном ЖК-дисплее, а не на электронно-лучевой трубке. В отличие от некоторых микроконтроллеров, Uno не обладает достаточной мощностью, чтобы просто имитировать домашний компьютер 1980-х годов, поэтому [Марку] пришлось воссоздавать boing ball с нуля. Он также не использует никаких графических библиотек. В Uno это было бы слишком медленно, поэтому [Марк] подключает ЖК-дисплей непосредственно к соответствующим регистрам, чтобы он оставался достаточно близко к металлу, чтобы заставить его работать. Это означает, что если вы собираетесь опробовать код в его репозитории на GitHub, вам нужно будет убедиться, что вы используете соответствующее оборудование или быть готовым к его переносу.
Одна из особенностей демоверсии Amiga заключается в том, что он был настолько впечатляющим, что практически не использовал центральный процессор, позволяя поднимать верстак, пока мяч отскакивал. В данном случае это не так, поскольку в UNO нет никаких дополнительных графических чипов. Тем не менее, [Марку] удалось выжать достаточно энергии из всеми любимой ATmega, чтобы представить нам часы в стиле Amiga — аналоговые, цифровые или в виде панели управления workbench в культовом сине-белом цвете. Чтобы часы были точными, он также встроил модуль RTC. Замечательно! Доступ к различным часам можно получить с помощью сенсорного экрана.
О, мы забыли упомянуть, что реализован сенсорный экран? Это, безусловно, расширяет возможности аппаратного обеспечения настолько, что его можно считать демонстрационным. Если просто прыгающий мяч недостаточно эффективно работает с UNO, попробуйте загрузить Linux.
Это не первая демонстрация прыгающего мяча, которую мы видели на микроконтроллере: вот четыре из них, которые прыгают в атрибут85.