Arduino Leonardoでマウスを自作してみたが,
Arduino Leonardoはマウスに使うには基板が大きすぎるので,Pro Microでやってみる。
Pro Microは,「Arduino Leonardo互換」と言うが,どの程度互換なのか。少なくとも,ピンの数が少ないのでどうなっているか,元々いくつかのピンを一つのピンに割当てているので,機能切替えのための設定などは必要なのか,というようなことが気になったので確認した。
Pro Microのピンの機能ついては,こちら↓に図がある。
https://cdn.sparkfun.com/assets/f/d/8/0/d/ProMicro16MHzv2.pdf
が、ピン名がいくつもあってどう使い分けているのか、わかりにくい気がしたので整理しておく。
図で,一番内側の白背景の枠で書かれているのがPro Microの基板に刻印されているピン名。
その外側,白緑背景の枠は、Arduino Leonardoのピン名。Arduino IDEで使うピン番号はこの番号。ほぼ基板の刻印通り。右下の10番あたりで,番号が飛んでいたり順序が入れ替わっていたりするのはLeonardoのピン名に合わせているからだ。
その外側,青紫背景の枠は、「Port」とあるが,これはPro MicroやArduino Leonardoで使われているCPU,ATmega32UT4のピン名。QMK firmwareではこちらのピン番号を使う。割込み処理の番号(桜色背景の枠)は、こちらの番号に合わせているので,Arduino IDEで割込み処理のプログラムをする時にピン番号と合ってなくてわかりにくくなっている(わかってしまえば言うほどではないが)。
機能切替えのための設定は,結論としてはほとんど必要ない。入力か出力か,と,入力の場合に内部プルアップを使うかどうか,くらい。
ということで,Pro Microを使った場合の配線は↓のようにした。
全く同じソフトでPro Microでも動いた。
Pro MicroでもArduino Leonardoでも,ピンの数以外,ほぼ同じと思って良さそう。