Аппаратный эмулятор клавиатуры и мыши версии 1.0
08.01.2021, 20:50

Предлагаю вашему вниманию аппаратный эмулятор клавиатуры и мыши версии 1.0 который может сделать каждый своими руками. Он обладает лучшими техническими характеристиками чем у большинства аналогов. В первую очередь это скорость, достигающая 500 эмуляций в секунду. То есть на каждую эмуляцию необходимо около 2 миллисекунды. За секунду возможно напечатать до 500 символов или до 500 перемещений курсора мыши и/или нажатий/отпусканий ее кнопок. Эмулятор клавиатуры поддерживает одновременное нажатие до 14 кнопок не считая кнопок-модификаторов. Для большинства случаев этого достаточно, тем более что не все приложения и игры успевают обрабатывать такой поток данных.

Для изготовления эмулятора необходим модуль известный как Blue Pill, который можно приобрести в интернет магазинах eBay, AliExpress и других или в магазине радиодеталей. Стоимость от 100 рублей в зависимости от магазина. Выглядит модуль так.

 

 

 

Он содержит все необходимое для эмулятора клавиатуры и мыши. Нужно только загрузить прошивку в микроконтроллер (черный квадратик в центре модуля). Это не сложно и пошаговую инструкцию можно найти в этой статье. Обратите внимание что маркировка микроконтроллера должна быть STM32F103C8T6. В продаже есть точно такие же модули, но с микроконтроллером CS32F103C8T6. Это китайский аналог и с ним работа эмулятора не гарантируется поскольку нет сведений об 100% совместимости и надежности этих микроконтроллеров.

Также возможно изготовление эмулятора из отладчика ST-Link.

После загрузки в модуль предлагаемой прошивки он становится эмулятором и при подключении к компьютеру через разъем Micro USB (на фото он в левой части модуля) компьютер обнаружит комбинированное USB устройство состоящее из клавиатуры, мыши и устройства управления и автоматически подберет и установит для них драйверы, как это бывает при подключении обычных клавиатуры и мыши.

Рассмотрим пример эмуляции клавиатуры и набором на эмуляторе слова Emulator.

 

If LibInit()<>0 ; Инициализация библиотеки эмулятора
  
  ; Ввод слова Emulator.
  Keyboard_SetKey(#KeyMod_LeftShift, $08) ; E
  Keyboard_SetKey(0, $10)                 ; m
  Keyboard_SetKey(0, $18)                 ; u
  Keyboard_SetKey(0, $0F)                 ; l
  Keyboard_SetKey(0, $04)                 ; a
  Keyboard_SetKey(0, $17)                 ; t
  Keyboard_SetKey(0, $12)                 ; o
  Keyboard_SetKey(0, $15)                 ; r
  
  LibEnd() ; Деинициализация библиотеки эмулятора
EndIf

 

Функция LibInit() инициализирует эмулятор и ее необходимо вызывать после загрузки dll и перед вызовом из нее любой другой функции. Если при инициализации ошибок не произошло, функция вернет не 0 что проверяется в операторе If. Далее функция Keyboard_SetKey посимвольно вводит слово Emulator. При вводе первой буквы также нажимается кнопка Shift чтобы напечатать заглавную букву. Работает фукнция так: Код кнопки отправляется через интерфейс USB эмулятору (модулю на фото выше), который с точки зрения компьютера и операционной системы является клавиатурой и мышью. Эмулятор через интерфейс клавиатуры отправляет коды кнопок в компьютер, который считает что они были введены с обычной клавиатуры.

Архив с другими примерами на языке AutoIt можно скачать этой ссылке. Пакет документации с описанием функций dll, а также с кодами кнопок клавиатуры в архиве.

Бесплатная демонстрационная версия прошивки.

У нее следующие ограничения:

  • Скорость работы снижена до 20 эмуляций в секунду.
  • Время работы около 1 минуты.
  • DLL только x86.

Заказать лицензионную версию без этих ограничений можно написав на e-mail hw-emulator@yandex.ru 

Стоимость прошивки 20 долларов, которые необходимо будет перевести на Z-кошелек системы денежных переводов WebMoney.

Рекомендуется перед заказом лицензии, проверить работу модуля с демо-версией и убедится что эмулятор подходит для решения ваших задач.


 

Эмулятор клавиатуры в действии можно увидеть на видео

Скорость эмуляции очень высокая. На ввод 200 строк со словом Emulator потребовалось несколько секунд и ввод каждого символа занял около 2-ух миллисекунд что составляет 500 символов в секунду.

У бесплатной, демонстрационной версии скорость значительно ниже и ввод занимает больше времени.

Категория: Эмулятор | Добавил: emulator
Просмотров: 1586 | Загрузок: 0 | Комментарии: 1 | Рейтинг: 0.0/0
Всего комментариев: 1
avatar
0
1 koltimeche • 17:26, 12.01.2021
Попробуем . .
avatar