Вход

Просмотр полной версии : USB клавиатура для эмуляторов



black27512
05.12.2025, 23:25
Доброго времени суток, господа!

Хочу представить небольшую разработочку, а именно USB адаптер для подключения реальной клавиатуры от ZX к PC, то есть проще говоря, для использования клавиатуры от Спектрума на PC/Android в эмуляторах. Проверил в нескольких эмулях – работает, правда в UnrealSpeccy на Android ощущается приличный инпутлаг, но это похоже проблема самого эмулятора. В общем если что – будем дорабатывать по ходу.
Построено всё на основе “народного” МК STM32F103C8T6, а именно на основе платы BluePill.
На схеме показано полное устройство, но при использовании платы BluePill достаточно припаять 5 резисторов, стабилитроны (необязательно, но желательно, спасают наш МК от статики и прочих неприятностей) и собственно клавиатуру.

Подключить можно как оригинальную клавиатуру (от той же Дельты-С), так и самодельный набор из современных свитчей для механической клавиатуры. Верхние 40 клавиш – это стандартная матрица спека (линии B0-B7), дополнительные (B8-B11) – это клавиши расширенной клавиатуры, которые можно использовать в случае самодельной механической клавиатуры, они выполняют равносильные действия, что и комбинации CS+1, CS+2 и т.д. Так сделано для простоты исполнения, что бы не пришлось городить огород с одновременным нажатием двух клавиш одной. Если у Вас расширенная клавиатура (как например от Дельты-С), то все расширенные клавиши будут работать штатно. Собственно всё ради них и затевалось…

Прошивается МК как обычно при помощи ST-Link, ну или же при помощи USB-UART адаптера и соответствующих манипуляций (программа Demonstrator и пакета от ST). После прошивки устройство должно определиться на USB как клавиатура, индикатор на ноге PC13 показывает нажатие любой клавиши.

В адаптере имеется 5 режимов раскладки (проще переключить раскладку, чем настраивать каждый эмулятор), режимы переключаются удержанием клавиш 1-5 при подключении к USB, последний выбранный режим запоминается и сохраняется.

Схема
83283
83289

Прошивка
83284
Исходник (проект для STM32CubeIDE) здесь https://disk.yandex.ru/d/Wkm6GiLBLbiZ3Q

Несколько фоток
83285832868328783288

SYR-ALEX
15.12.2025, 12:02
Шикарно . Вот ещё бы что то подобное под PC/2 .

max232cpe
17.12.2025, 23:08
Шикарно . Вот ещё бы что то подобное под PC/2 .

Любую матрицу до 128 кнопок, на выходе хоть XT хоть PS\2, размер 4х4см

https://sun9-57.vkuserphoto.ru/s/v1/ig2/R2aS8zZ2ctIiZreXQYmnFl85PYO_3pZi75VG-HeN0I5wc1k6oe2DS3VTNMtlXc9ZkkttlXMMj39OWxFe2aXJnHO x.jpg?quality=95&as=32x43,48x64,72x96,108x144,160x213,240x320,360x4 80,480x640,540x720,640x853,720x960,1080x1440,1280x 1707,1440x1920,1920x2560&from=bu&cs=1920x0