Как сделать клавиатуру на ардуино для пк

Добавил пользователь Владимир З.
Обновлено: 05.10.2024

Библиотеки Mouse и Keyboard

Эти базовые библиотеки позволяют платам Arduino Leonardo, Micro или Due при подключении к компьютеру определяться как обычная мышь и/или клавиатура.

Предосторожности при использовании библиотек Mouse и Keyboard: при постоянной работе библиотек Mouse или Keyborad могут возникнуть сложности во время программирования вашего устройства. Функции, подобные Mouse.move() или Keyboard.print() могут перемещать курсор и сигнализировать о нажатии клавиш подключенному компьютеру, поэтому должны вызываться только тогда, когда вы готовы контролировать их работу. Рекомендуется использовать какую-нибудь систему управления, позволяющую выключать подобную функциональность, например, в зависимости от положения переключателя или сигнала на выводе, состояние которого вы можете контролировать.

Перед использованием функций библиотек Mouse или Keyboard непосредственно с компьютером, лучше всего протестировать их возвращаемые значения с помощью функции Serial.print(). Так вы сможете удостовериться в правильности отправляемых значений. Подробнее см. примеры работы с библиотеками Mouse и Keyboard ниже.

Мышь (библиотека Mouse)

Функции для работы с мышью позволяют Leonardo, Micro или Due контролировать движение курсора на подключенном компьютере. Обновление позиции курсора всегда осущетсвляется относительно его предыдущего положения.

Клавиатура (библиотека Keyboard)

Функции для работы с клавиатурой позволяют Leonardo, Micro или Due отправлять подключенному компьютеру сигналы о нажатии клавиш.

Примечание: Библиотека Keyboard позволяет отправлять не все ASCII-символы, в частности она не позволяет отправлять непечатаемые символы. Библиотека также поддерживает использование клавиш-модификаторов, которые при одновременном нажатии с другой клавишей изменяют ее поведение. Дополнительную информацию о поддерживаемых клавишах и их применении см. здесь.

Используйте Arduino Leonardo для создания виртуальной клавиатуры (простой badusb)

Leonardo - это модель платы разработки Arduino, которую можно программировать и использовать, как и другие платы Arduino. Тем не менее, есть некоторые важные различия:

The Leonardo differ from other Arduino boards in that they use a single microcontroller to both run your sketches and for USB communication with the computer. The Uno and other boards use separate microcontrollers for these two functions, meaning that the USB connection to the computer remains established regardless of the state of the main microcontroller. By combining these two functions onto a single processor, the Leonardo allows for more flexibility in its communication with the computer. It also helps to lower the cost of the board by removing the need for an additional processor.

Arduino Leonardo отличается от всех предыдущих контроллеров Arduino, он напрямую использует функцию связи USB ATmega32u4 и отменяет чип USB to UART. Это позволяет Leonardo не только выступать в качестве виртуального COM-порта, но и подключаться к компьютеру в качестве мыши или клавиатуры.

Вещи, которые я сделал с Arduino Leonardo сегодня, очень причудливы, давайте посмотрим на эффект:

Демонстрация виртуальной клавиатуры (badusb)

Сначала создайте новый файл в Arduino IDE и импортируйте библиотеку ресурсов:

Это библиотека для работы с клавиатурой. Она может использоваться только на плате разработки серии Arduino Leonardo. Если она скомпилирована в Arduino UNO, об ошибке будет сообщено

Далее нам нужно изучить некоторые виртуальные операторы клавиатуры:

Начать общение с клавиатурой:

Соответствует ключу релиз:

Конечно, вы также можете ввести:

Наконец, завершите связь с клавиатурой:

С этими основами вы можете смело использовать свое воображение!

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


Принцип тоже очень прост:

Вот еще один простой пример:

Неплохо смотреть фильмы, снятые на струнах.



Можете ли вы сказать, что это за фильм? Хахаха .

Кроме того, в видео есть код дождя:


Код кода rain должен быть заранее написан на компьютере, сохранен в виде файла .bat и при запуске перетащен непосредственно в командную строку.

Есть много причудливых способов игры, вы можете сами придумать, подвести итог и добавить код, чтобы открыть командную строку:

После компиляции и загрузки кода подключите плату разработки Arduino Leonardo к другим компьютерам и попробуйте!


Для реализации проекта нам необходимо установить библиотеки:

Сборка:

1) Клавиатуру удобнее всего подключить к Ардуине проводками Папа-Папа.

Контакты на клавиатуре отсчитываются слева на право.


Клавиатура 4*4 Arduino (uno)
Контакт 1 pin 11
Контакт 2 pin 10
Контакт 3 pin 9
Контакт 4 pin 8
Контакт 5 pin 7
Контакт 6 pin 6
Контакт 7 pin 5
Контакт 8 pin 4

Контакты к которым подключаем клавиатуру, могут быть перенастроены на любые другие цифровые контакты. Настраиваются здесь:

2) Звуковой сигнал будет издаваться с помощью зуммера, его подключаем следующим образом:

Зуммер Arduino
GND GND
IO pin 3
VCC 5V или 3V

Контакт Pin3 так же может быть изменен на любой удобный вам цифровой выход. Настраивается здесь:

Скетч:

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

Видео:



В этой статье расскажу как работает матричная мембранная клавиатуру и приведу простой пример подключения клавиатуры к Arduino с отображением нажатий клавиш на последовательном мониторе.

Технические параметры:

► Разъём: PLS-8;
► Тип шлейфа: плоский, гибкий, 8 pin;
► Длина шлейфа: 75 мм;
► Размер: 77×69×2 мм;
► Масса: 7 г.

Обзор матричной мембранной клавиатуры

В статье пойдет речь о матричной мембранной клавиатуре на 4×4. Так же существуют клавиатуры 4 × 3, 4 × 1 и другие, в не зависимости от размера, все они работают одинаково. Как видно из фото, на передней части располагается сами кнопки, а на обратной стороне приклеена липкая основа, которая позволяет приклеить клавиатуру к любой поверхности.


Принцип работы матричная клавиатура

В матричной мембранной клавиатуре 4 x 4 (4 столбца и 4 строки) содержится 16 кнопок, под каждой кнопкой находится мембранная переключатель. Все эти кнопки соединены с друг другом, образуя матрицу 4 × 4, это позволило уменьшит количество используемых выводов для подключения к микроконтроллеры (Arduino) с 17 контактов до 8 контактов.



Подключение матричной мембранной клавиатура к Arduino

Необходимые детали:
► Arduino UNO R3 x 1 шт.
► Матричная мембранная клавиатура 4х4, 16 кнопок x 1 шт.
► Провод DuPont, 2,54 мм, 20 см, F-F x 1 шт.
► Кабель USB 2.0 A-B x 1 шт.

Подключение:
Теперь приступим к сборке схемы, подключим контакта 1 клавиатуры к цифровому контакту 9 на Arduino. Далее необходимо подключить все остальные контакты 2 с 8 и так далее.




Программа:
Пример простой, копируем или скачиваем и загружаем в Arduno.

keypad

Привет! Сегодня посмотрим как с Ардуино работает матричная клавиатура. Подключим клавиатуру, напишем небольшую программу и выведем данные на экран.

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

Также нам нужна библиотека для использования клавиатуры. Найти ее можно на странице разработчика на официальном сайте arduino.cc

Откроем пример HelloKeypad.ino из библиотеки. Нам придется его немного изменить. Так как наша клавиатура имеет 4 строки и 4 столбца.

После загрузки кода на плату в мониторе можно увидеть нажатые клавиши.

Экран

Теперь добавим в схему экран и будем выводить символы на него.

Чтобы символы отображались корректно используем функцию print из класса u8g2. Подробнее про доступные функции этого класса можно прочитать на странице в github.

Полный текст программы

Заключение

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

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