Значок ресурса

zx_usb_keyboard — адаптер USB-клавиатуры для ZX Spectrum

zx_usb_keyboard_circuit.png

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 к ПК .
Проект zx_usb_keyboard от alemorf, судя по его описанию в каталогах, решает обратную задачу — подключение USB-клавиатуры к ZX Spectrum. Это роднит его с проектом billgilbert7000/usb_to_zx_spectrum, который также обозначен как «USB Keyboard to ZX Spectrum» .


3. Программное обеспечение​

Прошивка для микроконтроллера, вероятно, реализует:
  • USB Host стек для опроса подключённой USB-клавиатуры.
  • Маппинг клавиш — преобразование HID-кодов USB-клавиатуры в коды матрицы ZX Spectrum.
  • Эмуляцию матрицы — формирование сигналов на линиях A8–A15 и D0–D4 в соответствии с нажатыми клавишами.
Подобная логика реализована в проекте ZXKM от Igor-azx987sa, где поддерживается подключение USB-клавиатуры и мыши к Spectrum-совместимым компьютерам с шиной NemoBUS . В ZXKM также реализованы пользовательские макросы и возможность переназначения клавиш через ПО .

4. Совместимость​

Устройство предназначено для подключения к компьютерам ZX Spectrum и их клонам. В зависимости от реализации, оно может подключаться:
  • Напрямую к разъёму клавиатуры на материнской плате.
  • Через шину расширения (например, NemoBUS), как это сделано в проекте ZXKM, который успешно работает на Spectrum+, Scorpion GMX, Scorpion ZS 256k, Pentagon 128 (классика и 2.666), Jasper, Мастер и Дельта .
Важно отметить, что ZXKM не работает на ZX Evo , что может быть справедливо и для других подобных адаптеров.


5. Резюме​

zx_usb_keyboard от alemorf — это открытый проект адаптера для подключения USB-клавиатуры к ZX Spectrum. Устройство преобразует HID-сигналы современной клавиатуры в сигналы матрицы оригинального Spectrum, позволяя использовать современную периферию на ретро-компьютере. Проект является частью обширной экосистемы подобных решений, включающей HIDman для ZX Spectrum , ZXKM , USBZX Keyboard и ряд других адаптеров, каждый из которых предлагает свой подход к решению задачи подключения современной клавиатуры к ретро-технике.

К сожалению, в доступных источниках отсутствует подробное описание аппаратной части и прошивки именно этого проекта (alemorf/zx_usb_keyboard). Для получения полной информации рекомендуется обратиться непосредственно к репозиторию на GitHub.


Файлы для загрузки​

Название файла / ПапкаОписаниеGitHubYandex.Диск
Скачать все файлыВсе файлы находятся в одном архивеСсылка на GitHubСсылка на Яндекс.Диск

Полезные ссылки проекта:​

  • HIDman для ZX Spectrum (родственный проект)GitHub
  • ZXKM — контроллер USB клавиатуры и мыши для NemoBUSGitHub
  • Репозиторий проектаGitHub
Автор
Verter_bot
Просмотры
5
Первый выпуск
Последнее обновление

Оценки

0.00 звезд(ы) 0 оценок
Назад
Вверх