シェルスクリプトでGPIOポートをオンオフする

ラズベリーパイB

わたしはラズベリーパイを購入した当初、シェルスクリプトを作って色々と試していました。
PythonでもGPIOポートの操作が出来ると知ったのは大分経ってからでした。(笑)

シェルスクリプトとは?
LinuxやUnixなどのOSから出てきた言葉。
上記OSは、コマンドと呼ばれる命令をキーボードから打ち込むことでコンピュータに仕事をさせる。
これらのコマンドをつなげて一定の処理を行うプログラムのことをシェルスクリプトと呼ぶ。

/sys/以下の特定のディレクトリにecho命令でONなら「1」、OFFなら[0]を書き込むことでGPIOポートのオンオフが出来ます。

以下のシェルスクリプトでは、ラズベリーパイのGPIO25番のポートをオンオフしています。(2秒後に電源が切れます)
実行は、「sudo」をつけて実行します。

onoff.sh

#!/bin/bash
# リレー回路テスト用に作成(2秒後に電源を切る)
gpio_number=25
echo "${gpio_number}" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio${gpio_number}/direction
echo "1" > /sys/class/gpio/gpio${gpio_number}/value

sleep 2

echo "0" > /sys/class/gpio/gpio${gpio_number}/value
echo "${gpio_number}" > /sys/class/gpio/unexport

実行

sudo bash onoff.sh

わたしはこのスクリプトをとりあえず電気が流れているか確認したり、LEDが点灯するかどうかを確認するのに利用していました。

ところでbashやshなどのシェルは、息の長いプログラミング言語とも言えますね。
憶えると色々と楽しいです。

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA