Arduino HID-Project.hライブラリとは?

Arduino
Arduino
記事内には広告が含まれています。

Arduino HID-Project.h ライブラリとは?

HID-Project.hライブラリは、ArduinoボードをHID(Human Interface Device)デバイスとして動作させるためのライブラリです。このライブラリは、キーボード、マウス、ゲームパッド、およびメディアコントロールデバイスなど、さまざまなHIDデバイスのエミュレーションを提供します。

HID-Project.hライブラリ関数

メディアキー定数を含むキーボードの関数

メディアキー定数

HID-Project.hライブラリには、以下のメディアキー定数が含まれています。

  • MEDIA_PLAY_PAUSE
  • MEDIA_NEXT
  • MEDIA_PREVIOUS
  • MEDIA_STOP
  • MEDIA_VOLUME_UP
  • MEDIA_VOLUME_DOWN
  • MEDIA_MUTE
  • MEDIA_EJECT
  • MEDIA_FAST_FORWARD
  • MEDIA_REWIND

キーボードの関数

  • Keyboard.press(key): 特定のキーを押し下げます。
  • Keyboard.release(key): 特定のキーを離します。
  • Keyboard.write(key): 特定のキーを押して離します。
  • Keyboard.print(text): テキストをキーとして送信します。
  • Keyboard.println(text): テキストをキーとして送信し、改行を追加します。

マウスの制御関数

  • Mouse.begin(): マウス機能を初期化します。
  • Mouse.end(): マウス機能を終了します。
  • Mouse.click(button): 指定されたボタンをクリックします。
  • Mouse.move(x, y, wheel): マウスを移動し、ホイールを回転させます。
  • Mouse.press(button): 指定されたボタンを押し下げます。
  • Mouse.release(button): 指定されたボタンを離します。

マウスのボタン定数

  • MOUSE_LEFT
  • MOUSE_RIGHT
  • MOUSE_MIDDLE

ジョイスティックの制御関数

ジョイスティック機能は、HID-Project.hライブラリの中で高度な制御を提供します。

  • Joystick.begin(): ジョイスティック機能を初期化します。
  • Joystick.end(): ジョイスティック機能を終了します。
  • Joystick.setButton(button, value): 指定されたボタンを設定します。
  • Joystick.setXAxis(value): X軸の値を設定します。
  • Joystick.setYAxis(value): Y軸の値を設定します。
  • Joystick.setZAxis(value): Z軸の値を設定します。
  • Joystick.setRxAxis(value): Rx軸の値を設定します。
  • Joystick.setRyAxis(value): Ry軸の値を設定します。
  • Joystick.setRzAxis(value): Rz軸の値を設定します。
  • Joystick.sendState(): ジョイスティックの状態を送信します。

具体的な使用例

メディアキーの使用例

#include <HID-Project.h>

void setup() {
  HID.begin();
}

void loop() {
  // 音量を上げる
  Consumer.write(MEDIA_VOLUME_UP);
  delay(1000);
}

キーボードの使用例

#include <HID-Project.h>

void setup() {
  HID.begin();
}

void loop() {
  // "Hello, World!"を送信
  Keyboard.print("Hello, World!");
  delay(1000);
}

マウスの使用例

#include <HID-Project.h>

void setup() {
  Mouse.begin();
}

void loop() {
  // マウスを右に100ピクセル移動
  Mouse.move(100, 0, 0);
  delay(1000);
}

ジョイスティックの使用例

#include <HID-Project.h>

void setup() {
  Joystick.begin();
}

void loop() {
  // X軸とY軸を最大値に設定
  Joystick.setXAxis(1023);
  Joystick.setYAxis(1023);
  Joystick.sendState();
  delay(1000);
}

Keyboard.hやMouse.hとの違い

`Keyboard.h` や `Mouse.h` の機能は `HID-Project.h` に統合されているため、`Keyboard.h` や `Mouse.h` にあるが `HID-Project.h` には無い特定の関数はありません。`HID-Project.h` はこれらのライブラリの機能を包括的にカバーしているため、実質的には同じ機能を提供します。

まとめ

HID-Project.h は Keyboard.h と Mouse.h の全機能を含んでおり、さらにメディアコントローラーやシステムコントロールデバイスのエミュレーション機能も提供します。したがって、Keyboard.hや Mouse.h の機能を包括的に扱いたい場合や、追加のHIDデバイスのエミュレーションが必要な場合は HID-Project.h を使用することが推奨されます。

コメント

タイトルとURLをコピーしました