“LED不要のLチカ!”は、以前の記事「Arduino IDEのインストールからLED点滅まで」でも紹介しましたが、Raspberry Piでもできることが分かったので、今回紹介します。
GPIO25の出力で基板上のLED(緑)を制御できるように設定する
Raspberry Pi 3 Model B(+)では、基板上のPWR(赤)とACT(緑)のLEDの内、ACT(led0)の入力を”mmc0(ディスクアクセス)”からGPIOに切替えられることが分かりました。
LXTerminal画面に戻り、行末の半角スペースの後を右クリックして「貼り付け」を選択し、「Enter」キーを押します。
これで「ACT(led0)」の設定が”mmc0(ディスクアクセス)”から”gpio”に切り替わります。
echo gpio > /sys/class/leds/led0/trigger
「↑」キーを押すと、直前のコマンドが入力されるので、”gpio”を”25″に、”trigger”を”gpio”に上書きして、「Enter」キーを押します。
echo 25 > /sys/class/leds/led0/gpio
Pythonで基板上のLEDを制御する
GPIO制御ライブラリ”WiringPi2″をインポートします。
import wiringpi2
ここでエラーが出る場合は、【 第26回 】で実行した”WiringPi2-Python”をインストールしてください。
GPIO25を出力に設定します。
wiringpi2.pinMode(25, wiringpi2.GPIO.OUTPUT)
Visual Studio Codeで基板上のLED(緑)をLチカする
【 インストール編 】でインストールしたVisual Studio Codeを起動し、画面左端のアクティビティーバーの「エクスプローラー」アイコンをクリックします。
エディター画面が現れるので、プログラムを書き込みます。
プログラムはwhile文によりLED(緑)が1秒ずつ点滅するのを10回繰り返し、初期化して終わるというものです。
エディター画面に入力していると、画面上に「エラー」としてフォーマッター”autopep8″のインストールを促されますが、「閉じる」ボタンをクリックして閉じます。
import wiringpi2 import time wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(25, wiringpi2.GPIO.OUTPUT) counter = 0 while (counter < 10): wiringpi2.digitalWrite(25, 1) time.sleep(1) wiringpi2.digitalWrite(25, 0) time.sleep(1) counter = counter + 1 wiringpi2.wiringPiSetupGpio()
ACT(led0)の設定を既定の"mmc0(ディスクアクセス)"に戻しておく
「」キーを何回か押すと以前入力したコマンドが表示されるので、”gpio”を”mmc0″に上書きして「Enter」キーを押します。
これで「ACT(led0)」の設定が”gpio””からmmc0(ディスクアクセス)”に戻ります。
echo mmc0 > /sys/class/leds/led0/trigger