鉄道模型のレイアウト上に踏み切りの制御や信号機の制御に使えればとセンサーをRaspberry pi 3で使いたいと思い始めて、今まで全く触ったことのないFT2232Dを秋月電子で購入し、Raspberry pi 3に接続してみました。まずはドライバのインストール、
http://www.ftdichip.com/Drivers/D2XX.htm
から手に入れます。Raspberry pi 3はARMv8 (64bit)搭載なのでドライバがない!?と一瞬思いますが、OSが32bitなのでソフトウェア上は
# lscpu Architecture: armv7l Byte Order: Little Endian CPU(s): 4 On-line CPU(s) list: 0-3 Thread(s) per core: 1 Core(s) per socket: 4 Socket(s): 1 Model name: ARMv7 Processor rev 4 (v7l) CPU max MHz: 1200.0000 CPU min MHz: 600.0000
のように見えます。そこでARMv7用のドライバをダウンロードします。
いろいろなサイトを参考にしながらようやく理解したところでは、今回のようにセンサーを使用する場合は、シリアルポートとして使用するのではなく、BitBangモードを使用するようです。いろいろとサンプルプログラムもあるので、慣れないC言語で少しいじってみたところ、AD0-GND,AD1-GND,AD2-GNDをショートさせた場合、させなかった場合で値が変わることが確認できるようになりました。

ここまで来れば1つの壁を越えられたような気がします。アセンブラでポインタが嫌いになってからC言語からはしばらく離れていましたが、コマンドラインで何とかなればあとはどうとでもなる気がするので一安心です。

コメント