2013年12月23日月曜日

Raspberry Pi (7) IO制御 4

IO制御 4 (配線不要 ! もっとも簡単なLチカ)


最初に

ちょっと趣向を変えて、最も簡単なLチカをやってみます。
Raspberry PiでLチカと言うと、LEDと抵抗とリード線を買ってきて繋げるのが一般的だと思います。
実はそんなことしなくてもオンボードのLEDを点滅させる事が出来ます。
オンボードには5個のLEDが実装されています。

  1. ACT(SDカードのアクセス)
  2. PWR(電源表示)
  3. FDX(full duplex)
  4. LNK(リンク)
  5. 100(100Base)
この内、下の4つはハードウエアで制御されており、CPU(BCM2835)から操作はできません。
唯一ACTランプだけは、CPUのポート(GPIO16)に接続されており、プログラミングが可能です。
但しデフォルトでは、SDカードのアクセスランプとしてOSが制御しているので、その動作を止める必要があります。

点滅の方法

  1. まずrootユーザーになります。

    su -

    もし、rootのパスワードを設定していないのであれば、設定してからsu - を実行します。

    sudo passwd root

  2. 次にACTランプの動作を停止させます。

    echo none >/sys/class/leds/led0/trigger

  3. 次にmodprobeで、LED点滅用のモジュールを組み込みます。

    modprobe ledtrig_heartbeat

  4. LEDを点滅させます。

    echo heartbeat >/sys/class/leds/led0/trigger

    点滅しましたか?
  5. 実験が終わったら、元に戻します。

    echo mmc0 > /sys/class/leds/led0/trigger

    下記のコマンドを打って、mmc0が[]で括られていたら正常に戻っています。

    cat /sys/class/leds/led0/trigger
    none [mmc0] heartbeat

このサイトを参考にさせて頂きました。
Can we control the on-board leds

次は、このLEDを使ってモールス信号を出したいと思います。

0 件のコメント:

コメントを投稿

コメントをどうぞ