.
Делаем свободно программируемую USB клавиатуру из Arduino и Тачскрин панели.
Резистивная сенсорная панель с бумажным фоном действует как макро клавиатура / тачпад.
Leonardo ATmega32U4 имитирует клавиатуру, которая вводит сочетания клавиш, макросы, текстовые блоки, пароли.

  • Очень простой проект только 3 компонента
  • Очень дешевые детали, общейая стоимость 10 €
  • Под сенсорнаой панелью находится лист бумаги. Просто вставьте свои собственные значки и тексты в Excel и распечатайте их.
  • Количество и размер кнопок может быть любым
  • Сочетания клавиш и горячие клавиши (Hotkey)
  • Текстовые модули
  • Пароли
  • Макросы с программируемыми временными задержками
  • Поддерживается английский, немецкий, русский (кириллица), французский, греческий, иврит, итальянский, грузинский. Другие языки / раскладки по запросу.

Arduino USB макро клавиатура из резистивный сенсорный экран / панель русский язык



Инструкция по изготовлению USB макро клавиатуры

Приклейте любую резистивную сенсорную панель к твердой поверхности по краю с двух сторон с помощью двухсторонней клейкой ленты.
Создайте таблицу в Excel с размерами сенсорной области. Найдите подходящие иконки в интернете и вставьте их в ячейки таблицы. Вырежьте напечатанную таблицу и вставьте его в щель между подложкой и сенсорной панелью.
На задней стороне USB макроклавиатуры приклеен модуль Pro Micro с ATmega32U4 (аналогично плате Arduino Leonardo) и пьезоэлектрический преобразователь.
Это очень легкий радиолюбительский DIY проект, который может повторить даже новичок в электронике. Схема подключения содержит только 3 компонента. Это также очень дешевый электронный проект.


Резистивное сенсорное стекло для экрана 155 мм 88 мм стоит, например, за 5,36 €
Pro Micro модуль стоит, например, с Aliexpress 3.30 € Пьезо 0,70 €

Общая стоимость самодельной USB макро клавиатуры составляет 9,36 €



Схема

Схема USB макро клавиатуры на ардуино и резистивной сенсорной экран панели ATmega32U4 badusb

Я вставил в схему Пьезоэлектрическижй зуммер чтобы озвучивать нажатие кнопки. После нажатия на сенсорное поле издается тихий щелчок. На пьезо подаётся по очереди 5 В и 0 В при каждом срабатывании.

Калибровка резистивной сенсорной панели

При первом использовании Arduino макро клавиатуры нужно откалибровать Touchscreen Panel один раз.

Запустите Arduino Terminal и отправьте символ "k".
Вам будет предложено нажать один раз в верхнем левом углу и один раз в нижнем правом углу.
Лучше всего попасть в угол внешнего края таблицы на бумажной вкладке.
Значения калибровки постоянно хранятся в EEPROM. При перезагрузке программы они также сохраняются.

Посылая символ «r», активируется режим, в котором необработанные данные выводятся через последовательный интерфейс в целях отладки.
Быводятся значения X / Y аналого-цифрового преобразователя и пересчитанные значения столбцов и строк ячейки в таблице.


Программирование USB-клавиатуры

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

#define Reihen 3 // Строки
#define Spalten 4 // Столбцы

const String data[Reihen][Spalten] =
{

{ "1", "2", "3", "A" },

{ "4", "5", "6", "B" },

{ "7", "8", "9", "C"},

};
резистивной сенсорной экран стекло ардуино кнопки координаты
Вы можете сами решить, сколько клавиш вы хотите разместить на сенсорной клавиатуре.
Обязательным условием является то, что палец должен помещатся в клеточку. Я думаю, что минимальная площадь составляет 10x10 мм. Таким образом, 15 * 8 = 120 клавиш (кнопок) можно разместить на сенсорной панели размером в 155-мм на 88-мм .

макросы и сочетания клавиш

Тексты в строке данных передаются на компьютер сразу после нажатия сенсорной кнопки, как если бы они были напечатаны.
Чтобы сохранить сочетания клавиш и макросы, я предоставил 4 макро команды . Каждая макро команда начинается с символов «§» и заканчивается « » символом пробела.

§p - Press         "§p0x80 "  нажать Strg     
§r - Release "§r0x80 " отпустить Strg
§a - Release All "§a " отпустить все нажатые клавиши
§w - Write "§w0xB0 " нажать и отпустить Enter
§t - Timer "§t3000 " 3 секунды подождать

Вот как выглядит макрос для выключения компьютера
"§p0x87 r§r0x87 §t100 shutdown -s -t 0 -f\n"

нажать 0x87
написать "r"
отпустить 0x87
подождать 100mS
написать текст "shutdown -s -t 0 -f"
новая строка (тоже самое что и Enter)

нажать клавишу Windows (Code 0x87 RIGHT_GU смотри Keyboard.h), напечатай r-клавишу, отпустить клавишу Windows. Это сочетание клавиш для запуска Выполнить-диалога. Затем ждём 0.1s для открытия диалогового окна. Затем вводится “shutdown -s -t 0 -f”. Это команда выключения Windows, а затем нажемается клавиша \n . Enter.

Arduino IDE поддерживает следующий управляющий код:

\n 10 LF (Line Feed) – Start new line (new line) клавиша возврата
\r 13 CR (Carriage Return) – Go to beginning of a line (return)
\t 9 Tab – Advance cursor to next tab-stop (tab)
\” 34 Double Quote
\’ 39 Single Quote
\\ 92 Backslash – so we can actually type that one as well

Для клавиши ввода "\ n" есть альтернатива, можно использовать команду сценария "§w0xb0 ".
w-Write 0xb0 Code für KEY_BACKSPACE (смотри Keyboard.h)

Sketch

Скачать Sketch для ATmega32U4

Применена Многоязычная библиотека для Arduino клавиатуры
а также TouchScreen Bibliothek

Создаём индивидуальный макет для сенсорной панели в Excel.

макет для сенсорной панели в Excel проект ардуино клавиатура



USB Macro Keyboard DIY Video russian
Nach oben