takeyamaのアイコン画像
takeyama 2021年02月27日作成 (2021年02月27日更新)
製作品 製作品 閲覧数 1881
takeyama 2021年02月27日作成 (2021年02月27日更新) 製作品 製作品 閲覧数 1881

お手軽自動入力キーボードを作る!!

お手軽自動入力キーボードを作る!!

はじめに

まずはこちらをご覧ください。

ここに動画が表示されます

概要

というわけで、茶番はおいておいて、

  • 一度に大量の単語を入力するのがめんどくさい!
  • よく入力する単語は自動入力したいけど、グーグルに乗っ取られたくない!
  • 手軽に左手デバイスを使いたい!

今回作るのはこんな願いを一度に叶えるガジェットです。

材料

部品 おすすめ購入先
Pro micro https://bit.ly/3dPzUx8 (amazon)
ピンソケット https://bit.ly/3bJDKW3 (秋月)
タクトスイッチ(×3) https://bit.ly/2P6f6an (秋月)
10kΩ抵抗(×3) https://bit.ly/3dQxJJH (秋月)
基板(切れ端でもいい) https://bit.ly/3bHBlep (秋月)
microUSBケーブル

回路図

プルダウン型のスイッチをPro microに接続するだけの超簡単な回路図になってます。
キャプションを入力できます

プログラム

7, 8, 9番ピンにつながっているタクトスイッチそれぞれに対して入力できる単語を決めています。もちろん、その内容を書き換えれば自分の好きなように使えます。

#include "Keyboard.h" const int buttonPin = 7; // ボタンピン番号 const int buttonPin2 = 8; // ボタンピン番号 const int buttonPin3 = 9; // ボタンピン番号 int previousButtonState = HIGH; // for checking the state of a pushButton int previousButtonState2 = HIGH; // for checking the state of a pushButton int previousButtonState3 = HIGH; // for checking the state of a pushButton void setup() { pinMode(buttonPin, INPUT); pinMode(buttonPin2, INPUT); pinMode(buttonPin3, INPUT); Keyboard.begin(); } void loop() { int buttonState = digitalRead(buttonPin); int buttonState2 = digitalRead(buttonPin2); int buttonState3 = digitalRead(buttonPin3); if ((buttonState != previousButtonState) && (buttonState == HIGH)) { Keyboard.print("unko unko unko unko unko unko unko unko unko"); //7番ピンにつないであるスイッチを押すと入力される単語 } if ((buttonState2 != previousButtonState2) && (buttonState2 == HIGH)) { Keyboard.print("I just called to say I love you!!"); //8番ピンにつないであるスイッチを押すと入力される単語 } if ((buttonState3 != previousButtonState3) && (buttonState3 == HIGH)) { Keyboard.print("Gooooooooooooooooooooooooooooooogle"); //9番ピンにつないであるスイッチを押すと入力される単語 } previousButtonState = buttonState; previousButtonState2 = buttonState2; previousButtonState3 = buttonState3; }

振り返り

ケースをつけようとも思ったんですが、逆に回路が見えている方がロマンということであえてむき出しにしました。もちろん、配線側にはゴム足をつけて地面とは絶縁されるようにしています。
キャプションを入力できます
キャプションを入力できます

1
ログインしてコメントを投稿する