上の写真の通り、ボードを囲むように、ずらりとGPIOピンが並んでいました。デジタル入出力ピンが54本、アナログ入力ピンが12本、アナログ出力ピンが2本あります。この二つあるMicroUSBポートのうち、右がプログラミングポートで、左がUSBホストにもなるネイティブポートです。右は電源ジャックで、7V~12Vまでの電源が入力できます。パソコンにIDEをインストールして、USBホストライブラリもインストールしました。HHKBとarduinoは、スマートフォンなどで使っていたOTGケーブルで繋ぎます。arduinoの公式リファレンスにあるUSBHostの項目から、さっそくサンプルのプログラム(arduinoではスケッチと呼ぶようです)を書き込んでみると、問題なく認識して、HHKBのキー入力を受け付けてくれました。あとはリファレンスを読んで、HHKBをポメラと繋ぐためにどのようなスケッチを書いたらよいのか考えます。class」の中には、keyPressed()keyReleased()getKey()getModifiers()getOemKey()という関数がありました。keyPressed()は、キーボードのキーが押されたときに働く関数。keyReleased()はキーを放したときに働く関数。getKey()は、押されたキーのASCIIコードを返す関数。keyを数値で返す関数。getOemKey()は、押されたキーをOEMコードで返す関数とのこと。そこで、keyPressed()関数でキーが押されたときに、getModifiers()とgetOemKey()でどのキーが押されたのかの数値を取得し、そのキーに対応したGPIOピンをHIGHにしてスイッチを入れる、という方法を基本にしてスイッチを書くことにしました。GPIOピンからの信号は、前の記事で書いたアナログスイッチIC送られて、ポメラのキーボードを操作します。実際のスケッチは、単純にSwitch文でパターン毎に振り分けます。キーボードの「A」を押すと、「A」のOEMコードは「4」なので、Switch文の「4」の部分に15と24の二つの変数を代入します。15と24は、ポメラで「A」を押したときに繋がるラインの番号で、その二つのスイッチを開くGPIOピンに命令を出します。HIGH);として、キーボードで押されたキーを、ポメラのキーを押す動作に変換します。digitalWriteは、GPIOのデジタル出力ピンに信号を送る命令です。LOW);}で、GPIOピンに送った信号を消します。単純ですが、これをキースイッチの分繰り返せば、USBキーボードでポメラを動かせそうです。スケッチ(プログラム)には目星がついたので、次回はアナログスイッチICを使って、arduinoとポメラを繋ぐ回路をブレッドボード上に組んで、実際に動作するのか実験したいと思います。ポメラにHHKBをつなげる3に続きます。2018.09.26前回、ポメラのメンブレンキーボードを分解して、その配線が分かったので、実際にそれをメカニカルキーボードに作り替える方法を考えてみます。コメントをキャンセルメールアドレスが公開されることはありません。*サイト上に表示された文字を入力してください。WordPress.。