Устройство в форм-факторе ноутбука, которое проигрывает звук и видео, по Alt+Tab переключается на игру или заметки, а затем возвращается к ролику, не вызывает удивления — именно это ноутбуки и делают. Но стоит узнать, что сердцем машины служит Arduino-совместимый 8-битный микроконтроллер AVR, и реакция меняется. Именно таков проект AVR Laptop, автор которого известен как Владимир.

Самодельный ноутбук на 8-битном микроконтроллере ATmega2560 с монохромным дисплеем

В основе устройства — ATmega2560, тот самый чип, что стоит в платах Arduino Mega. По меркам 8-битных микроконтроллеров он довольно мощный, но остаётся именно 8-битным, с тактовой частотой порядка 16 МГц и считанными килобайтами оперативной памяти. Уместить на нём полноценную систему со всеми задуманными функциями без аккуратной оптимизации было невозможно.

реклама кормит Уточку 🦆

Многозадачность обеспечивает операционная система реального времени FreeRTOS. Монохромный дисплей ST7920 с разрешением 128×64 точки автор принципиально не стал подключать через стандартную библиотеку — вместо этого он написал собственный драйвер, делающий ровно то, что нужно, и ничего лишнего.

Самым трудным оказалось видео. Даже в однобитном цвете добиться воспроизведения с частотой 24 кадра в секунду, да ещё со звуком, на такой платформе — серьёзный вызов; в сопроводительном описании автор подробно разбирает, как этого удалось достичь.

реклама кормит Уточку 🦆

Подобные эксперименты, когда 8-битную машину заставляют делать то, что в восемь бит, казалось бы, не помещается, невольно напоминают о проектах вроде операционной системы SymbOS для процессоров Z80. А для системных администраторов найдётся и совсем экзотический пример — веб-сервер, работающий на AVR.

реклама кормит Уточку 🦆

Код проекта пока проходит ревизию перед публикацией, так что подробности реализации ещё впереди. А пока оценить возможности необычного «ноутбука» можно по демонстрационному ролику ниже.