BeagleBone Black でGPIOでスイッチの状態を取得するには

BeagleBone Blackで遊ぼう! Raspberry Piより高機能で高性能 」という書籍のサンプルを動かしているのですが、2-5の「GPIOの入力を受け取る」が動かなくて困りました。BeagleBone Blackについているデモプログラムのもの(input.js)も動かないので回路の方に問題があるような気がして単純なものにすることにしました。

書籍では回路上にR1、R2の2つの抵抗を使っていますが、とりあえず、R2をはずしてR1だけにしてみました。これだけではなくて、gpioまわりの設定も少しさわってみました。次のようなスクリプトを用意して実行しました。

・bbb_sample_2-5_export.sh

#!/bin/sh
for t in 30 31 60
do
  echo $t > /sys/class/gpio/export 
  echo 'out' > /sys/class/gpio/gpio${t}/direction 
done
for t in 48
do
  echo $t > /sys/class/gpio/export 
  echo 'in' > /sys/class/gpio/gpio${t}/direction 
done

これで、動くようになりました。回路の修正が効いたのか、効いていないのかまでは確認していませんが、とりあえず動いたのでよしとします。スクリプトを使ってgpioまわりの設定を元に戻しておきました。

・bbb_sample_2-5_unexport.sh

#!/bin/sh

for t in 30 31 60
do
  echo $t > /sys/class/gpio/unexport 
done
for t in 48
do
  echo $t > /sys/class/gpio/unexport 
done

20140112-174659.jpg

20140112-174707.jpg

同じタグの記事: BeagleBone Black
同じカテゴリの記事: Program
関連書籍: BeagleBone Black