nakkyi が 2023年02月12日14時23分48秒 に編集
コメント無し
本文の変更
## ショートカットキーボード 自分だけのショートカット、3キーの自作キーボードを作ってみました。
マイコンは、Arduino Leonardo互換のマイコン「Beetle」をつかいました。
マイコンは、[Arduino Leonardo互換のマイコン「Beetle」](https://www.switch-science.com/products/4284)をつかいました。
アクリルのケースに入れて、巻取り式のUSBケーブルを付けました。 ![キャプションを入力できます](https://camo.elchika.com/bf628a637d359f42016964f60324157eaeb2cbbe/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f62333466356663372d613730652d343463362d613263362d6132336663343963626131382f36663463353837302d613135312d343233342d386431312d653530366133323465646162/) ## 使用したもの |部品名|型式|メーカー|数量| |---|---|---|---| |マイコン|Beetle|TOKYO FLIP-FLOP|1| |キー|ボタンスイッチ|不明|3| |ユニバーサル基板|3cm×7cm|不明|1| |ケース|105mm×43mm|セリア|1| |USBケーブル|巻取り式|不明|1| ## 製作方法 ![キャプションを入力できます](https://camo.elchika.com/efe4534d01c8f25c01a36a0a371ddd813c80935c/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f62333466356663372d613730652d343463362d613263362d6132336663343963626131382f63366136623835622d663761352d343335382d383936372d613362356530393332313362/) 1,TOKYO FLIP-FLOPのショートカットを持ち運べる[「ワンボタンキーボード」](https://www.one-button-key.com/)自作キットのマイコン「Beetle」を使いました。 2,ユニバーサル基板に、ボタンスイッチ3個と、マイコン「Beetle」をハンダ付けします。配線を行いました。 ![キャプションを入力できます](https://camo.elchika.com/02f1d6034b743e1e7de6c03d7bb84820a5d3e76d/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f62333466356663372d613730652d343463362d613263362d6132336663343963626131382f61303766376235632d656437612d346234332d613733342d343038303265653663393761/) 3,ケースはセリア(百均ショップ)で見つけたものを、穴あけ加工しまして、ボルト止めしました。 4,巻取り式のYSBケーブルを取り付けて完成です。丁度コネクターも中に納まりました。 5、ソースコードは、KEY_SWを3個にして、 ①漢字変換:(半角/全角) ②コピー:(Ctrl+C) ③ペースト:(Ctrl+V) にしました。 ## 回路図 配線はこれだけです。 ![キャプションを入力できます](https://camo.elchika.com/3f6ad41c9157b5aee87909addcd043722d37766f/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f62333466356663372d613730652d343463362d613263362d6132336663343963626131382f66623032383934362d306130322d343035372d383633632d643966306531666164393630/) ## ソースコード ```[code] #include "Keyboard.h" #define PIN_KEYSW1 (9) #define PIN_KEYSW2 (10) #define PIN_KEYSW3 (11) int prevKeyState1; int currKeyState1; int prevKeyState2; int currKeyState2; int prevKeyState3; int currKeyState3; void setup() { pinMode(PIN_KEYSW1, INPUT_PULLUP); pinMode(PIN_KEYSW2, INPUT_PULLUP); pinMode(PIN_KEYSW3, INPUT_PULLUP); prevKeyState1 = HIGH; prevKeyState2 = HIGH; prevKeyState3 = HIGH; currKeyState1 = HIGH; currKeyState2 = HIGH; currKeyState3 = HIGH; Keyboard.begin(); } void loop() { // かな/漢字変換のショートカット currKeyState1 = digitalRead(PIN_KEYSW1); if ((prevKeyState1 == HIGH) && (currKeyState1 == LOW)) { Keyboard.press(KEY_LEFT_ALT); Keyboard.press('`'); delay(10); // 10ms待つ Keyboard.releaseAll(); // すべて放す } // コピーのショートカット currKeyState2 = digitalRead(PIN_KEYSW2); if ((prevKeyState2 == HIGH) && (currKeyState2 == LOW)) { Keyboard.press(KEY_LEFT_CTRL); Keyboard.press('C'); delay(10); // 10ms待つ Keyboard.releaseAll(); // すべて放す } // ペーストのショートカット currKeyState3 = digitalRead(PIN_KEYSW3); if ((prevKeyState3 == HIGH) && (currKeyState3 == LOW)) { Keyboard.press(KEY_LEFT_CTRL); Keyboard.press('V'); delay(10); // 10ms待つ Keyboard.releaseAll(); // すべて放す } prevKeyState1 = currKeyState1; prevKeyState2 = currKeyState2; prevKeyState3 = currKeyState3; delay(10); } ``` ## 制御キー名一覧表 CTRL KEY_LEFT_CTRL または KEY_RIGHT_CTRL SHIFT KEY_LEFT_SHIFT または KEY_RIGHT_SHIFT ALT KEY_LEFT_ALT または KEY_RIGHT_ALT WIN KEY_LEFT_GUI または KEY_RIGHT_GUI スペース 0x20 上 KEY_UP_ARROW 下 KEY_DOWN_ARROW 左 KEY_LEFT_ARROW 右 KEY_RIGHT_ARROW BACKSPACE KEY_BACKSPACE TAB KEY_TAB RETURN KEY_RETURN ESC KEY_ESC INSERT KEY_INSERT DELETE KEY_DELETE PAGE UP KEY_PAGE_UP PAGE DOWN KEY_PAGE_DOWN HOME KEY_HOME END KEY_END CAPS LOCK KEY_CAPS_LOCK F1 KEY_F1 F2 KEY_F2 F3 KEY_F3 F24 KEY_F24 ## まとめ ワンボタンキーボードのマイコン「Beetle」を使って、3ボタンのショートカットキーボードを作ってみました。ソースコードの1部を書き換えるだけで、自分だけのショートカットキーボードになります。