Невозможно использовать библиотеку клавиатуры с Arduino UNO даже после смены прошивки.

Итак, я пытаюсь использовать UNO в качестве HID-устройства. Я выполнил это руководство, прошил прошивку и обнаружил UNO. как HID-устройство.

Однако ошибка по-прежнему возникает

Клавиатура не найдена. Есть ли в вашем скетче строка #include?

Вот код –

/*
Copyright (c) 2014 NicoHood
 See the readme for credit to other people.

 Keyboard example
 Press a button to write some text to your pc.
 See official documentation for more infos
 */

// включаем HID-библиотеку
#include <HID.h>

const int pinLed = 13;
const int pinButton = 8;

void setup() {
  pinMode(pinLed, OUTPUT);
  pinMode(pinButton, INPUT_PULLUP);

  // Запускает последовательный порт со скоростью 115200 бод, иначе HID не будет работать на Uno/Mega.
  // Это не требуется для Leonado/(Pro)Micro, но обязательно активируйте нужные функции USB в HID.h
  Serial.begin(115200);

  // Отправляет хосту чистый отчет. Это важно, потому что
  // 16u2 Uno/Mega не выключается во время программирования
  // поэтому вы хотите начать с чистого отчета, чтобы избежать странных ошибок после сброса.
  Keyboard.begin();
}


void loop() {
  if (!digitalRead(pinButton)) {
    digitalWrite(pinLed, HIGH);

    // То же использование, что и официальная библиотека, что почти самоочевидно
    Keyboard.println("This message was sent with my Arduino.");
    Serial.println("Serial port is still working and not glitching out");

    // простое устранение дребезга
    delay(300);
    digitalWrite(pinLed, LOW);
  }
}

/*
Definitions:

 KEY_LEFT_CTRL
 KEY_LEFT_SHIFT
 KEY_LEFT_ALT
 KEY_LEFT_GUI
 KEY_RIGHT_CTRL
 KEY_RIGHT_SHIFT
 KEY_RIGHT_ALT
 KEY_RIGHT_GUI

 KEY_UP_ARROW
 KEY_DOWN_ARROW
 KEY_LEFT_ARROW
 KEY_RIGHT_ARROW
 KEY_BACKSPACE
 KEY_TAB
 KEY_RETURN
 KEY_ESC
 KEY_INSERT
 KEY_DELETE
 KEY_PAGE_UP
 KEY_PAGE_DOWN
 KEY_HOME
 KEY_END
 KEY_CAPS_LOCK
 KEY_F1
 KEY_F2
 KEY_F3
 KEY_F4
 KEY_F5
 KEY_F6
 KEY_F7
 KEY_F8
 KEY_F9
 KEY_F10
 KEY_F11
 KEY_F12

 KEY_PRINT
 KEY_SCROLL_LOCK
 KEY_PAUSE
 */

Может ли кто-нибудь указать, что я здесь делаю не так?

, 👍0


2 ответа


Лучший ответ:

0

Хорошо, проблема заключалась в том, что добавленная библиотека HID конфликтовала с основной библиотекой клавиатуры/мыши. Я заменил основную библиотеку на новую, и она заработала без проблем.

Ну, на самом деле есть одна проблема: он запросит платформенный файл.h. Чтобы решить эту проблему, загрузите zip-архив Arduino v1.5.7 BETA, найдите в нем файл Platform.h и вставьте его в текущий каталог Arduino.

,

0

Если я открою файл библиотеки rar, то увижу файл с именем Keyboard.h. Я уверен, что вам нужно включить Keyboard.h, так как класс Keyboard известен и вы можете использовать его в своем скетче.

,

Я пробовал это сделать... Не получается. Все равно выдает ту же ошибку, @YaddyVirus