入力支援ソフトウェア「HeartyLadder」の4分割モード用スイッチを作成します。
HeartyLadder の4分割モードの操作をマウスで行う場合、{左ボタンを押す}{右ボタンを押す}{中ボタンを押した後左ボタンを押す}{中ボタンを押した後右ボタンを押す}の4つです。後半の2つ、「中ボタンを押した後〜」をスイッチを1回押す操作にします。
まずは実験のために「Arduino Leonardo」「押しボタンスイッチ」「ブレッドボード」「ジャンプワイヤ」を用意します。
ブレッドボードへ配置
難しいことはやっていません。各スイッチを Arduino の1,3,5,7番のピン(+)とGND(ー)へつなぐだけです。
上図の左側が Arduino Leonardo、右側がブレッドボードです。ブレッドボードの縦方向の中央に4個あるのが押しボタンスイッチで左から1番、2番、3番、4番スイッチとします。HeartyLadder 4分割モードの左上選択が1番、右上選択が2番、左下選択が3番、右下選択が4番スイッチが対応するようにします。
以下のコードを転送します。
#include <Mouse.h>
void setup() {
// 1,3,5,7番ピンを入力にし,プルアップ抵抗を有効にする。これにより,接地しない限りHIGHになる。
pinMode(1, INPUT_PULLUP);
pinMode(3, INPUT_PULLUP);
pinMode(5, INPUT_PULLUP);
pinMode(7, INPUT_PULLUP);
Mouse.begin();
}
void loop() {
//1番スイッチが押されたら
if(digitalRead(1)==LOW){
//左クリック
Mouse.click();
delay(500);
}
//2番スイッチが押されたら
if(digitalRead(3)==LOW){
//右クリック
Mouse.click(MOUSE_RIGHT);
delay(500);
}
//3番スイッチが押されたら
if(digitalRead(5)==LOW){
//ミドルクリックと左クリック
Mouse.click(MOUSE_MIDDLE);
Mouse.click();
delay(500);
}
4番スイッチが押されたら
if(digitalRead(7)==LOW){
//ミドルクリックと右クリック
Mouse.click(MOUSE_MIDDLE);
Mouse.click(MOUSE_RIGHT);
delay(500);
}
}