Не ps2 работает клавиатура: Не работает клавиатура PS/2 в Windows 8/8.1. Решение проблемы!

Содержание

ZX-Spectrum PS/2 Keyboard — AVR-AY

 Текущая версия 5.5

В процессе модернизации своего ZX-Spectrum каждый постепенно приходит к тому, что у него перестают работать некоторые кнопки на стандартной клавиатуре, это может быть вызвано различными факторами. Например, перетерлись дорожки пленочной клавиатуры в местах стыковки её с платой или появились микротрещины на пленке самой клавиатуры.

Да и сама по себе ZX клавиатура весьма неудобна, и лучше бы её заменить на более современную, благо теперь вы можете совершенно без труда это сделать.

В поисках по интернету я находил много вариантов данного решения, но везде была куча обвязки у микроконтроллеров, да и сами микроконтроллеры были такими, которые либо трудно достать, либо они достаточно дорогие.

Вы уже наверное заметили моё пристрастие к МК Atmega 8 ? 🙂 Собственно на нем бы и хотелось всё это реализовать с минимальной обвязкой, а еще лучше совсем без неё.

В интернете я наткнулся на очень интересную реализацию данного решения, собственно вот здесь

покопавшись в архивах с прошивками я нашел прошивку под Atmega8, но, она почему-то не заработала… 🙁

Долго, очень долго я пытался её запустить, но ничего не получалось, при этом под Atmega48 и 168 всё было хорошо (по словам тех кто их подключал).

В итоге, я решил дизассемблировать прошивку от Atmega8 и Atmega168, порывшись в даташитах, я обнаружил, что в Atmega8 перепутаны некоторые порты (видимо прошивка делалась до кучи и не проверялась), так же для регистра TIFR пришлось переписать часть кода, т.к. его номер 0x58 и он недоступен для команд sbis и cbis. Ковыряясь дальше, я обнаружил, что на одном из входов шины адреса не был включен PullUp из-за чего в приведенной схеме автору пришлось поставить подтягивающие резисторы на все адресные пины. Проанализировав схему, я убрал подтягивающие резисторы с CLK и DATA выходов, т.к. они есть в самой клавиатуре (по заверению производителей). Так же убрал светодиод, т.к. он всё-равно внутри и некому им любоваться 🙂 Подправил работу дополнительных кнопок.

В итоге, прошивка заработала с кварцем 24МГц, причем очень даже отлично! Лучше чем родная клавиатура!

PS: так же я удалил из прошивки работу с клавиатурными скриптами, они мне не нужны, да и вообще мало кому нужны, это позволило еще больше ускорить реакцию на нажатия клавиш. В версии 2.0 удалось избавиться от самопроизвольных нажатий на кнопки BTN1, BTN2 при инициализации контроллера.

Во общем, теперь собственно о реализации.

Скачать прошивку (версия 2) для Atmega8 и кварца 24МГц вы можете >>>тут<<<

Версия 3 (24.01.2016) >>>тут<<<

Новая улучшенная версия 4 (26.01.2016) >>>тут<<<

 

Новая улучшенная версия 5.5  с исходниками (03.02.2016)

kbd_firmware_v5_5_m8_with_src (для ATMega8) не нужны конденсаторы на кварц

kbd_firmware_v5_5_m48_with_src (для ATMega48)

kbd_firmware_v5_5_m168p_with_src (для ATMega168p)

kbd_firmware_v5_5_m328p_with_src (для ATMega328p)

 

С версии 5.3 отключение NumLock переводит курсорные клавиши и пробел в режим Sinclair джойстика, а так же автоматически включается режим E перед нажатием клавиш {}[]~

 

Загружается стандартно с помощью avrdude и USBASP

avrdude -p atmega8 -c USBasp -U flash:w:KBD13_M8_nw_MODIFIEDv4. hex -U lfuse:w:0xCF:m -U hfuse:w:0xC7:m

Я подключил все пины напрямую к ZX-Spectrum, вроде всё работает хорошо, но можно для большей стабильности повесить резистор 10 КОм на (RESET) подключив резистор к VCC.

Конденсаторы на кристалл можно не вешать, т.к. включен фьюз CKOPT.

Минус питания можно подключать как к 8 пину, так и к 22, т.к. они запараллелены в МК. Так же можно брать плюс питания с 20-ой ноги для подключения других микросхем, очень удобно 🙂

 Примерная схема подключения:

Распиновки клавиатурных разъемов

Если есть вопросы, пишите в комментариях.

PPS: выходы BTN1 и BTN2 можно подключать к любым кнопкам типа /RES (т.е. которые замыкаются на землю GND) в своем кворум-бк04 я подключил на них INV и кнопку которая делает тише звук.








Не работает клавиатура при загрузке компьютера

С тем, что USB клавиатура не работает при загрузке, вы можете столкнуться в разных ситуациях: часто это бывает при переустановке системы или во время появления меню с выбором безопасного режима и других вариантов загрузки Windows.

Я последний раз столкнулся с этим сразу после шифрования системного диска с помощью BitLocker — диск был зашифрован, а ввести пароль при загрузке не могу, так как не работает клавиатура. После этого и было решено написать подробную статью на тему, как, почему и когда могут возникать такие проблемы с клавиатурой (в том числе, беспроводной), подключенной по USB и как их решать. См. также: Не работает клавиатура в Windows 10, Что делать, если не работает клавиатура на ноутбуке.

Как правило, такая ситуация не происходит с клавиатурой, подключенной с помощью порта PS/2 (а если произошла, проблему стоит искать в самой клавиатуре, проводе или разъеме материнской платы), но вполне может встретиться на ноутбуке, так как встроенная клавиатура тоже может иметь USB интерфейс.

Прежде чем продолжать чтение, посмотрите, а все ли в порядке с подключением: на месте ли USB кабель или приемник для беспроводной клавиатуры, не задел ли его кто-то. Еще лучше, выньте его и подключите снова, при этом не в USB 3. 0 (синего цвета), а USB 2.0 (Лучше всего в один из портов сзади системного блока. Кстати, иногда там есть специальный USB порт со значком клавиатуры и мыши).

Чаще всего, чтобы решить возникшую проблему, достаточно зайти в БИОС компьютера и включить инициализацию USB клавиатуры (пункт USB Keyboard Support или Legacy USB Support установить в Enabled) при включении компьютера. Если эта опция у вас отключена, вы этого можете не замечать долгое время (потому как Windows при загрузке сама «подключает» клавиатуру и для вас все работает), до тех пор, пока не потребуется воспользоваться ею еще при загрузке операционной системы.

Возможен вариант, что и в БИОС вы зайти не можете, особенно если у вас новый компьютер с UEFI, Windows 8 или 8.1 и включенной быстрой загрузкой. В этом случае, вы можете попасть в настройки другим путем (Изменение параметров компьютера — Обновление и восстановление — Восстановление — Особые варианты загрузки, далее в дополнительных параметрах выбрать вход в настройки UEFI). И уже после этого посмотреть, что можно изменить, чтобы все работало.

На некоторых материнских платах настройка поддержки USB устройств ввода при загрузке немного более изощренная: например, у меня в настройках UEFI есть три варианта — отключенная инициализация при ультрабыстрой загрузке, частичная инициализация и полная (при этом быстрая загрузка должна быть отключена). И беспроводная клавиатура работает при загрузке только в последнем варианте.

Надеюсь, статья смогла вам помочь. А если нет, опишите подробно, как именно у вас возникла проблема и я постараюсь придумать что-нибудь еще и дать совет в комментариях.

remontka.pro в Телеграм | Способы подписки

[10 исправлений] Клавиатура не работает в Windows 11: как исправить

В этом руководстве мы покажем вам различные способы исправить неработающую клавиатуру в Windows 11. Что касается периферийных устройств, нельзя отрицать тот факт, что клавиатура пожалуй, последнее, что вы хотели бы видеть в списке неработающих устройств. Но нельзя пренебрегать тем, что шансы на это есть всегда. В связи с этим может быть довольно много вероятных причин, по которым ваша клавиатура может работать не так, как ожидалось.

От основных проблем, связанных с USB-портом или концентратором, до устаревших драйверов клавиатуры или даже значений реестра клавиатуры i8042prt и kbdhid, любой из них может оказаться виновником. К счастью, для каждой из этих проблем также есть связанное решение. И после их выполнения есть все шансы исправить неработающую клавиатуру на вашем ПК с Windows 11. Так что без лишних слов.

Содержание

Имейте в виду, что универсального решения как такового не существует. Вам нужно будет попробовать каждый из нижеперечисленных обходных путей, а затем посмотреть, какой из них принесет вам успех. Итак, имея это в виду, давайте начнем.

ИСПРАВЛЕНИЕ 1/Необходимое условие: Включить экранную клавиатуру в Windows 11

Перед тем, как попробовать какое-либо из исправлений, упомянутых в этом руководстве, первым предварительным условием является необходимость включения экранной клавиатуры. Хотя мы постараемся не включать какие-либо шаги, требующие использования клавиатуры, в редких случаях [например, при вводе значений в редакторе реестра] это может стать абсолютной необходимостью. Так что на тот момент экранная клавиатура будет нашим единственным запасным вариантом. Поэтому выполните следующие шаги, чтобы включить экранную клавиатуру на ПК с Windows 11:

  1. Для начала щелкните правой кнопкой мыши меню «Пуск» и выберите «Настройки».
  2. Затем выберите «Универсальный доступ» в левой строке меню и перейдите в раздел «Клавиатура».
  3. Теперь включите переключатель рядом с Экранной клавиатурой.
  4. Вот и все, давайте теперь начнем с методов устранения проблемы с неработающей клавиатурой в Windows 11.

ИСПРАВЛЕНИЕ 2: Устранение основных неполадок

Прежде чем перейти к любому из расширенных исправлений, вот несколько основных способов устранения неполадок. советы, которые вы должны попробовать.

  • Для начала перезагрузите компьютер один раз и проверьте, достаточно ли этого для устранения проблемы с клавиатурой.
  • Далее, если вы используете USB-клавиатуру, попробуйте отключить и снова подключить ее. Более того, мы рекомендуем вам подключать клавиатуру к порту USB 2.0, а не 3.0.
  • Кроме того, некоторые клавиатуры оснащены функцией блокировки клавиш. При его включении отключаются функции всех клавиш на клавиатуре. Обычно эта функция назначается одной из функциональных клавиш и имеет рядом с ней небольшой значок замка. Точно так же сочетание клавиш Ctrl+Alt+L также может заблокировать вашу клавиатуру. Поэтому убедитесь, что вы случайно не активировали эту функцию.

ИСПРАВЛЕНИЕ 3: Настройка свойств корневого концентратора USB

Чтобы продлить срок службы батареи, на вашем ПК могут быть введены некоторые ограничительные меры для портов корневого концентратора USB. В этом случае порт может быть не в состоянии идентифицировать подключенное устройство. Поэтому на данный момент мы советуем вам отключить эту функцию, что можно сделать следующим образом:

  1. Щелкните правой кнопкой мыши меню «Пуск» и выберите «Диспетчер устройств».
  2. Затем разверните раздел Контроллеры универсальной последовательной шины.
  3. Теперь щелкните правой кнопкой мыши USB-концентратор и выберите «Свойства».
  4. После этого перейдите на вкладку Управление питанием.
  5. Теперь снимите флажок «Разрешить компьютеру отключать это устройство для экономии энергии».
  6. Наконец, нажмите OK, чтобы сохранить изменения.

Теперь проверьте, может ли он решить проблему с неработающей клавиатурой в Windows 11. Если это не сработало для вас, не закрывайте диспетчер устройств, так как есть еще пара исправлений, которые нам нужно исправить. выполнять внутри этой среды.

ИСПРАВЛЕНИЕ 4: Обновление драйверов клавиатуры

Если вы используете старые или устаревшие драйверы клавиатуры, это может привести к ряду проблем с соответствующим устройством. Поэтому вам следует подумать об обновлении этих драйверов до последней сборки, что можно сделать следующим образом:

  1. Откройте диспетчер устройств и разверните раздел «Клавиатуры».
  2. Теперь щелкните правой кнопкой мыши на клавиатуре и выберите «Обновить драйверы».
  3. Затем выберите Автоматический поиск драйверов.
  4. Теперь Windows будет искать последние версии драйверов в Интернете, а затем также устанавливать их.
  5. После этого перезагрузите компьютер и проверьте, устранена ли проблема с неработающей клавиатурой в Windows 11.

ИСПРАВЛЕНИЕ 5: Используйте средство устранения неполадок оборудования и устройств

ОС Windows поставляется с несколькими приложениями для устранения неполадок, относящихся к разным доменам. И один из них ориентирован именно на аппаратные устройства. Однако вы не можете получить доступ к этому средству устранения неполадок из меню «Настройки», где присутствуют все остальные. Это связано с тем, что Windows по какой-то причине скрыла это средство устранения неполадок, и вам придется выполнить пару дополнительных шагов, чтобы снова включить его.

Поэтому, пожалуйста, обратитесь к нашему руководству по включению и использованию средства устранения неполадок оборудования и устройств в Windows 11. После его включения обязательно подключите USB-клавиатуру, прежде чем начинать сканирование. Затем примените рекомендованное исправление и проверьте, устраняет ли оно проблему с клавиатурой, не работающую в Windows 11.

ИСПРАВЛЕНИЕ 6: Используйте команды SFC и DISM

Средство проверки системных файлов и обслуживание образов развертывания и управление ими — это два служебных инструмента командной строки, которые сканируют поврежденные файлы Windows, а затем заменяют их рабочими аналогами. Основное различие между ними заключается в том, что SFC заменяет поврежденные файлы рабочими из кэшированного каталога на вашем ПК, а DISM делает это, загружая рабочие файлы с онлайн-серверов Microsoft. И на данный момент мы будем использовать оба этих инструмента для решения основной проблемы. Следуйте вместе.

  1. Для начала щелкните правой кнопкой мыши меню «Пуск» и выберите Терминал Windows (Администратор).
  2. Затем щелкните стрелку вниз рядом со значком новой вкладки и выберите «Командная строка» из списка.
  3. После открытия окна CMD скопируйте и вставьте приведенную ниже команду, чтобы открыть инструмент SFC:
     sfc /scannow 

  4. После завершения сканирования SFC пришло время использовать инструмент DISM. Поэтому скопируйте и вставьте следующую команду:
     DISM/Online/Cleanup-Image/RestoreHealth 

После завершения сканирования DISM рекомендуется перезагрузить компьютер. После загрузки проверьте, устранена ли проблема с неработающей клавиатурой в Windows 11.

ИСПРАВЛЕНИЕ 7: Отключить быстрый запуск в Windows 11

Windows поставляется с функцией быстрого запуска, основной целью которой является ускорение загрузки вашего ПК после завершения работы. Однако известно, что в некоторых случаях эта функция конфликтует с USB-устройствами и связанными с ними драйверами. Поэтому рекомендуется отключить эту функцию на данный момент, что можно сделать следующим образом:

  1. Для этого откройте Панель управления из меню «Пуск» и перейдите в раздел «Электропитание».
  2. Затем нажмите «Выберите действие кнопки питания в левой строке меню».
  3. После этого нажмите «Изменить настройки, которые в данный момент недоступны».
  4. Теперь снимите флажок «Включить быстрый запуск» и нажмите кнопку «Сохранить изменения».

Наконец, перезагрузите компьютер и проверьте, устраняет ли это проблему с неработающей клавиатурой на ПК с Windows 11. Если ваш ответ отрицательный, снова включите быстрый запуск, а затем приступайте к другим исправлениям, перечисленным ниже.

ИСПРАВЛЕНИЕ 8: Переустановите драйверы клавиатуры

Если драйверы клавиатуры или файлы ее конфигурации повреждены, простое их обновление не принесет пользы. В этом случае вам придется удалить текущую установленную, а затем позволить Windows установить новые. Вот как:

  1. Начните с щелчка правой кнопкой мыши в меню Windows и выбора диспетчера устройств.
  2. Затем разверните раздел «Клавиатура», щелкните правой кнопкой мыши на клавиатуре и выберите «Свойства».
  3. Теперь перейдите на вкладку «Драйверы» и запишите поставщика драйвера и версию драйвера. Мы делаем это просто для того, чтобы быть в безопасности. Если Windows не устанавливает эти драйверы автоматически, мы могли бы сделать это вручную, используя имеющиеся у нас данные.
  4. Скопировав значения, щелкните правой кнопкой мыши на клавиатуре и выберите «Удалить устройство».
  5. Затем нажмите «Удалить» в появившемся диалоговом окне подтверждения. После удаления драйверов перезагрузите компьютер.
  6. Как только ПК загрузится в ОС, он должен установить драйверы клавиатуры. Если этого не произошло, откройте Диспетчер устройств, щелкните правой кнопкой мыши имя вашего ПК, расположенное вверху, и выберите Сканировать на наличие изменений оборудования.
  7. Теперь Windows просканирует ваш компьютер на наличие всех отсутствующих драйверов (в данном случае это драйвер клавиатуры) и также установит их.
  8. Однако, если это также не сработает для вас, перейдите в Google, скопируйте и вставьте данные драйвера клавиатуры, которые вы ранее отметили, а затем загрузите и установите указанные драйверы.
  9. После этого перезагрузите компьютер, и это должно решить проблему с неработающей клавиатурой на ПК с Windows 11.

ИСПРАВЛЕНИЕ 9: изменение значений i8042prt и kbdhid с помощью редактора реестра

i8042prt — это функциональный драйвер для клавиатуры и мыши PS/2 для ОС Microsoft Windows. С другой стороны, HID — это класс устройств, который используется для замены разъемов в стиле PS/2 универсальным драйвером USB, чтобы он мог поддерживать различные устройства HID, а kbdhid ориентирован конкретно на клавиатуры.

По умолчанию для i8042prt и kbdhid установлено значение 3. Но на данный момент нам нужно изменить эти значения и присвоить значение 1 для i8042prt и 4 для HID. После этого ему удалось исправить большинство проблем, связанных с клавиатурой, и есть все шансы, что он также может решить основную проблему. Итак, без лишних слов, давайте попробуем.

  1. Для начала откройте Экранную клавиатуру (Настройки > Специальные возможности > Клавиатура > Экранная клавиатура).
  2. Затем нажмите клавишу Windows, а затем клавишу R. Это вызовет диалоговое окно «Выполнить».
  3. Теперь введите ключевое слово ниже в поле «Выполнить» и нажмите Enter. Откроется редактор реестра.
     regedit 

  4. Теперь скопируйте и вставьте приведенное ниже значение в адресную строку редактора реестра:
     Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt 
  5. выбранная папка, перейдите к правой стороне и дважды щелкните файл Start, чтобы открыть его.
  6. Теперь измените его Value Data с 3 на 1 и нажмите OK, чтобы сохранить изменения. Теперь перезагрузите компьютер и посмотрите, устранена ли проблема с клавиатурой.
  7. Если вы все еще сталкиваетесь с этим, то снова откройте редактор реестра с помощью экранной клавиатуры.
  8. На этот раз скопируйте и вставьте следующее расположение в адресную строку:
     HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\kbdhid 
  9. Выбрав папку kbdhid, перейдите в правую сторону и дважды щелкните файл Start. чтобы открыть его.
  10. Теперь измените его значение с 3 на 4 и нажмите OK, чтобы сохранить его. Когда это будет сделано, перезагрузите компьютер.

Проверьте, удается ли этой настройке реестра устранить проблему с неработающей клавиатурой на вашем ПК с Windows 11. Если это так, ну и хорошо, верните значения i8042prt и kbdhid на 3, прежде чем переходить к другим нашим исправлениям.

ИСПРАВЛЕНИЕ 10: переключение параметров клавиатуры из Windows 11 BIOS

Если ни один из вышеупомянутых методов не дал результатов, следует рассмотреть возможность отключения и повторного включения клавиатуры на экране BIOS. Вот как это можно сделать:

  1. Для начала откройте меню «Настройки» и выберите «Система» > «Восстановление».
  2. Затем нажмите кнопку «Перезагрузить сейчас» рядом с «Расширенный запуск».
  3. Теперь выберите «Устранение неполадок» на экране «Выберите вариант».
  4. После этого нажмите «Дополнительные параметры» в разделе «Устранение неполадок».
  5. Затем нажмите «Настройки прошивки UEFI» на экране «Дополнительные параметры».
  6. Затем нажмите кнопку «Перезагрузить» и нажмите клавишу F10, чтобы войти в BIOS.
  7. После того, как ваш компьютер загрузится в BIOS, проверьте параметр, связанный с клавиатурой. Это будет что-то вроде «Включить поддержку клавиатуры» или «Поддержка USB-клавиатуры».
  8. Указанная опция будет включена по умолчанию. Поэтому выключите его, а затем снова включите.
  9. После этого сохраните изменения и перезагрузите компьютер до ОС. После загрузки проблема с клавиатурой должна была быть решена.

Итак, на этом мы завершаем руководство о том, как исправить проблему с неработающей клавиатурой на ПК с Windows 11. Мы поделились десятью различными методами для одного и того же. Дайте нам знать в разделе комментариев, какой из них сработал в вашу пользу. Точно так же все ваши вопросы приветствуются в комментариях.


  • Как исправить неработающую камеру/веб-камеру в Windows 11
  • Как исправить проблему с неработающим Bluetooth в Windows 11
  • Исправить проблему с неработающим поиском в Windows 11 [5 методов]
  • Как исправить Windows 11 High CPU и Использование диска
  • Как исправить сбой проводника в Windows 11

О главном редакторе

Садик Хассан

администратор

Технический специалист по рождению, он всегда проявлял большой интерес к платформе Android с самого рождения HTC Dream. Среда с открытым исходным кодом, кажется, всегда заинтриговала его множеством вариантов, доступных на кончиках его пальцев. «MBA по профессии, блогер по выбору!»

См. сообщения автора

Сборка удаленной клавиатуры PS/2

На прошлой неделе я купил себе небольшой компьютер под названием neptUNO с FPGA (он же — для меня — копия аппаратного обеспечения в стиле ретро-вычислений — см. подробнее здесь) .

Порты на машине устарели и включают в себя: выход VGA, DB9 для джойстиков/джойстиков и два порта PS/2 для клавиатуры и мыши. У устройства действительно есть USB-порт, но пока я не могу найти ничего, что с ним работало. Поэтому я купил себе дешевую клавиатуру PS/2, чтобы управлять меню (выбирая ядра и ПЗУ), и, конечно же, чертова клавиатура не работала (оказывается, ядрам нужны подтягивающие резисторы на входах PS/2).

У меня был выбор: я мог просто припаять два резистора 5-10К к только что купленному neptUNO (мои навыки пайки не велики, и я мог легко расплавить то, что не должен был)… или Я мог собрать сам удаленная клавиатура PS/2 — что я и сделал… конечно!

СКИДКА ДЛЯ ЧИТАТЕЛЕЙ Сэкономьте 50 долларов на terminal. training

Я опубликовал 38 видео для новых разработчиков, дизайнеров, UX, UI, владельцев продуктов и всех, кому сегодня нужно покорить командную строку.

49 долларов США — только по этой ссылке

TL;DR

  • Демо-видео
  • Детали и исходный код

Но почитайте тоже, это было весело 🙂

Первые демонстрации

Как это работает

После просмотра видео Бена Итера о клавиатурах PS/2 я понял, что скан-коды для клавиатуры должны быть можно воссоздать с помощью чего-то вроде Arduino.

Моя версия была именно такой. Я использовал библиотеку под названием ps2dev для отправки тактового сигнала и сигнала данных для кодов сканирования клавиатуры вверх и вниз. Затем я подключил свою Arduino напрямую к порту PS/2 и включил neptUNO для проверки — сразу же меню задвигалось вверх и вниз: это означает, что у всего этого есть ноги.

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

У меня было несколько плат WEMOS на основе ESP из неудачных предыдущих проектов, и я решил использовать свой D1 Mini и запрограммировать его для приема запросов WebSocket. Теоретически этот WebSocket будет пересылать коды сканирования клавиатуры на соединение PS/2.

Проводка относительно проста, и требуемый код Arduino частично взят из существующего примера кода, а частично я внес небольшие коррективы.

Код на D1 mini состоит из следующего (и я включу полный исходный код в конце):

  • Подключите ESP к моей локальной сети Wi-Fi
  • Настройка выходных контактов для часов и линий данных для соединения PS/2
  • Запустить сервер WebSocket
  • В сообщении WebSocket пересылать каждый байт сообщения в линии синхронизации и данных PS/2

Я бы также продолжил обновление, включив в него: обслуживание одной HTML-страницы на порту 80 устройства.

С браузером добавлена ​​хитрость. Как вы могли видеть из демонстрационного видео, я могу использовать браузер — на любом устройстве — для отправки удаленных команд нажатия клавиш.

Поскольку объектная модель браузера дает мне события для нажатия и нажатия клавиши, они идеально соответствуют тому, как работают скан-коды PS/2. Например, ввод буквы «Г» (заглавной) представляет собой последовательность: сдвиг вниз, г вниз, г вверх, сдвиг вверх.

Это соответствует шести байтам: 0x12 («сделать» сдвиг), 0x34 («сделать» g), 0xF0 , 0x34 («разбить» g), 0xF0 9032 9 , 0x12 ( «перерывная» смена).

К счастью, в веб-архиве сохранилась старая веб-страница, содержащая таблицу кодов сканирования, которые я сопоставил с event.code из событий нажатия и нажатия клавиши.

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

Все это работало отлично, поэтому пришло время перейти к третьему прототипу — полупостоянной пайке платы и подключению к штыревому разъему PS/2, чтобы я мог легко отключать и снова подключать. Я также хотел две кнопки быстрого доступа для конкретных функций neptUNO (основное меню и клавиша «сканер»), а также потому, что у меня были две толстые кнопки под рукой.

У меня не очень хорошие навыки пайки (именно поэтому я предпочитаю паять свой собственный набор для взлома, а не более дорогие компьютеры), и эта задача заняла у меня добрых несколько часов, но я был доволен результатом.

Конечным результатом является устройство, которое я могу подключить, запускать меню вообще без компьютера (т.е. если я просто играю с джойстиком и мне нужно меню загрузки ПЗУ) или я могу полностью контролировать настольная клавиатура.

Код и детали

  • WEMOS D1 mini
  • PS/2 Male DIN (плюс несколько кусачек, чтобы разрезать его на нужные части) — я также рекомендую проверить, какой провод подходит к какому контакту, прежде чем начинать свой проект.

Читайте также: