Учебники

Arduino — Серийная клавиатура

В этом примере прослушивается байт, поступающий с последовательного порта. После получения плата отправляет нажатие клавиши обратно на компьютер. Отправленное нажатие на клавишу выше, чем получено, поэтому, если вы отправите «a» с последовательного монитора, вы получите «b» с платы, подключенной к компьютеру. «1» вернет «2» и так далее.

Предупреждение. Когда вы используете команду Keyboard.print () , плата Leonardo, Micro или Due берет на себя клавиатуру вашего компьютера. Чтобы не потерять контроль над компьютером во время выполнения эскиза с помощью этой функции, настройте надежную систему управления перед вызовом Keyboard.print (). Этот эскиз предназначен для отправки команды клавиатуры только после того, как плата получила байт через последовательный порт.

Необходимые компоненты

Вам понадобятся следующие компоненты —

  • 1 × Arduino Leonardo, Micro или Due Board

Процедура

Просто подключите вашу плату к компьютеру с помощью USB-кабеля.

Клавиатура серийный макет

эскиз

Откройте программное обеспечение Arduino IDE на своем компьютере. Кодирование на языке Arduino будет контролировать вашу схему. Откройте новый файл эскиза, нажав Новый.

эскиз

Примечания — Вы должны включить библиотеку клавиатуры в свой файл библиотеки Arduino. Скопируйте и вставьте файл библиотеки клавиатуры внутри файла с именем «библиотеки», выделенным желтым цветом.

Файл библиотеки Arduino

Arduino Code

/*
   Keyboard test
   For the Arduino Leonardo, Micro or Due Reads
      a byte from the serial port, sends a keystroke back. 
   The sent keystroke is one higher than what's received, e.g. if you send a, you get b, send
      A you get B, and so forth.
   The circuit:
   * none
*/

#include "Keyboard.h"

void setup() {
   // open the serial port:
   Serial.begin(9600);
   // initialize control over the keyboard:
   Keyboard.begin();
}

void loop() {
   // check for incoming serial data:
   if (Serial.available() > 0) {
      // read incoming serial data:
      char inChar = Serial.read();
      // Type the next ASCII value from what you received:
      Keyboard.write(inChar + 1);
   }
}

Код для заметки

После программирования откройте серийный монитор и отправьте байт. Доска ответит нажатием клавиши, то есть на одну цифру выше.

Результат

Плата ответит нажатием клавиши, которая на один номер выше на последовательном мониторе Arduino IDE, когда вы отправите байт.