PIC10F222でジョイスティックの値を読む

PIC10F222でA/D変換した値を9600bpsで送信できるようになったので、抵抗式のアナログジョイスティックを接続してみました。

接続したところはこんな感じです。

左上に小さな変換基板が2つありますが、その下の方に10F222が載っています。上の方の変換基板には10F200が載っていますがどこにもつながっていません。そして、右半分にAkidukino(秋月Arduino)がありますが、電源供給とUSB-UART変換の部分しか使っていません。右下のTXDのジャンパのところに左上のPIC10F222の4pin(GP2)からのUART出力がつながっていて、右上のAE-UM232Rを通してPCに接続されています。

PIC10F222部分の拡大です。

アナログジョイスティック部分の拡大です。

これでアナログジョイスティックをぐりぐり動かすと、それに応じてUARTに送信される値が変化します。中央部分は摩擦によるヒステリシスのようなものがあるようで、実際に使う場合にはそれをどうキャンセルして違和感がないように見せるかが問われそうです。

今回はブレッドボードにバラで搭載しましたが、PIC10F222は安価ですのでヒステリシスをごまかしたりした上で電源、GND、シリアル出力の3線で使えるアナログジョイスティックモジュール、なんてものも作れそうです。

ちなみにArduinoがあるなら、直接そのアナログ入力で受ければいいじゃないか、という声が聞こえてきそうですが、まさにその通りです。ただ、これはPIC10F222の実験なので、これはこれでいいということで・・・。