zx_usb_keyboard — это проект, позволяющий подключить современную USB-клавиатуру к компьютерам ZX Spectrum. Устройство выступает в роли преобразователя интерфейсов: оно принимает сигналы от USB-клавиатуры и эмулирует матрицу оригинальной клавиатуры Spectrum, что позволяет использовать современную периферию на ретро-компьютере .
Проект создан автором alemorf и распространяется как открытое аппаратное и программное решение. Согласно информации из каталогов альтернативных репозиториев, проект был обновлён около двух лет назад и насчитывает порядка 13 звёзд на GitHub . Автор также известен рядом других проектов для ретро-компьютеров, включая информацию, документацию, схемы и ПЗУ советских домашних компьютеров .
1. Назначение и принцип работы
Основная задача устройства — обеспечить возможность использования USB-клавиатуры с ZX Spectrum и его клонами. Это особенно актуально для энтузиастов, которые используют оригинальные корпуса Spectrum с мембранными клавиатурами, пришедшими в негодность, или для тех, кто хочет подключить к ретро-компьютеру более удобную современную клавиатуру.Принцип работы аналогичен другим подобным адаптерам: микроконтроллер считывает HID-отчёты от USB-клавиатуры и преобразует их в сигналы, соответствующие матрице оригинальной клавиатуры ZX Spectrum (8 адресных линий A8–A15 и 5 линий данных D0–D4) . Эти сигналы подаются непосредственно на разъём клавиатуры или на шину компьютера.
2. Аппаратная реализация
Проект, как и другие аналогичные решения, вероятно, построен на базе микроконтроллера с поддержкой USB Host. В подобных проектах часто используются:- CH559L — 8-битный USB-микроконтроллер от Nanjing Qinheng Microelectronics с двумя аппаратными USB Host, применяемый в адаптере HIDman для ZX Spectrum .
- ATmega32U4 (Pro Micro) — микроконтроллер с встроенной поддержкой USB, используемый в проектах USBZX Keyboard и ZXUSBKB для превращения корпуса Spectrum в USB-клавиатуру .
- STM32F103C8T6 — «народный» микроконтроллер, применяемый в адаптерах для подключения оригинальной клавиатуры Spectrum к ПК .
3. Программное обеспечение
Прошивка для микроконтроллера, вероятно, реализует:- USB Host стек для опроса подключённой USB-клавиатуры.
- Маппинг клавиш — преобразование HID-кодов USB-клавиатуры в коды матрицы ZX Spectrum.
- Эмуляцию матрицы — формирование сигналов на линиях A8–A15 и D0–D4 в соответствии с нажатыми клавишами.
4. Совместимость
Устройство предназначено для подключения к компьютерам ZX Spectrum и их клонам. В зависимости от реализации, оно может подключаться:- Напрямую к разъёму клавиатуры на материнской плате.
- Через шину расширения (например, NemoBUS), как это сделано в проекте ZXKM, который успешно работает на Spectrum+, Scorpion GMX, Scorpion ZS 256k, Pentagon 128 (классика и 2.666), Jasper, Мастер и Дельта .
5. Резюме
zx_usb_keyboard от alemorf — это открытый проект адаптера для подключения USB-клавиатуры к ZX Spectrum. Устройство преобразует HID-сигналы современной клавиатуры в сигналы матрицы оригинального Spectrum, позволяя использовать современную периферию на ретро-компьютере. Проект является частью обширной экосистемы подобных решений, включающей HIDman для ZX Spectrum , ZXKM , USBZX Keyboard и ряд других адаптеров, каждый из которых предлагает свой подход к решению задачи подключения современной клавиатуры к ретро-технике.К сожалению, в доступных источниках отсутствует подробное описание аппаратной части и прошивки именно этого проекта (alemorf/zx_usb_keyboard). Для получения полной информации рекомендуется обратиться непосредственно к репозиторию на GitHub.
Файлы для загрузки
| Название файла / Папка | Описание | GitHub | Yandex.Диск |
|---|---|---|---|
| Скачать все файлы | Все файлы находятся в одном архиве | Ссылка на GitHub | Ссылка на Яндекс.Диск |