Armadillo210 で遊んでみた

そういえば、8/4 は Armadillo で遊んでいました。

現在会社では精力的に Armadillo をベースにした製品開発を行っていますが、

結局は Armadillo をそのまま使ってプログラムだけを書いている感じです。

実は Armadillo には、GPIO ポートがついていてこれがまた Linux から簡単に扱うことができるのです。

入力として使う場合は本当に信号線とGNDをショートするだけで良いのですが、

出力の場合はやはり増幅は必要ですね。

今回は下記のような回路を書いてみました。

回路これを実装してみましたが、ずいぶんきたない物になってしまいました・・・

実物

物はできたので、SSR を繋いでモータでも駆動するか!と思ったのですが、

まだ GPIO を制御するプログラムを書いていませんでした。

面倒だなーとおもって後輩の楊箸君に相談してみたところ、

Armadillo の FLASH に最初から入っている Linux には、gpioctrl というプログラムがあって、

それで制御できるかもしれないという素敵な情報を得ました!

ということで、火を入れます。

何故かモータは回っています、LED も灯いています。

これは回路がおかしいか、配線間違えたかしかないと思ったのですが、

シリアル経由でログインして・・・

# gpioctrl --set=gpio0 --mode=output --type=low

止まりました!

どうやら、電源投入時は high になっているようですね。

では、再度モータを動かしてみましょう。

# gpioctrl --set=gpio0 --mode=output --type=high

動きました!

あと、おまけでつけていた input 用のトグルスイッチをいじると、

ちゃんと状態変化を取得できました。

下記コマンドを入力すると、スイッチの状態によって、VALUE が HIGHかLOWか変わります。

# gpioctrl --get=gpio1

GPIO No. : 2 (GPIO1)
MODE : 1 (MODE_INPUT)
VALUE : 1 (HIGH)
INTERRUPT : 0 (DISABLE)

I/O が簡単に使えると便利ですね。