Program Resource

開発者向け各種コード、アルゴリズム、リソース情報ライブラリ もしくはねふぁの覚え書き

ATmega 32u4を使ってUSBデバイスをエミュレーションする、今回は一般的なマウスである相対位置を送信するバージョン。

マウスカーソルを移動させるにはmove関数を使う、引数はchar型なので渡せるのは-127~127の範囲。大きく移動させるには、moveを何度か繰り返して呼び出す。スケッチ例には入れていないが、3つ目のパラーメータはマウスホイールの移動量となっている。

クリックはclick関数で引数無指定で左クリック、MOUSE_LEFT、MOUSE_MIDDLE、MOUSE_RIGHTを引数で渡す事でクリックボタンを指定できる。

以下は32u4のスケッチ開始5秒後、右にゆっくりカーソル移動し右クリック後、左にゆっくりカーソル移動し左クリックするサンプル。

#include <HID-Project.h> //HID-Project by NicoHood

void setup() {
	delay(5000);
	Mouse.begin();

	for (int i = 0; i < 250; i++) {
		Mouse.move(1, 0);
		delay(10);
	}
	Mouse.click(MOUSE_RIGHT);
	for (int i = 0; i < 250; i++) {
		Mouse.move(-1, 0);
		delay(10);
	}
	Mouse.click(MOUSE_LEFT);
}

void loop() {
}

コメントを残す

メールアドレスが公開されることはありません。


*

CAPTCHA