4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SLP KBITAdvent Calendar 2018

Day 10

Raspberry Pi 3の電源ランプ、アクセスランプでLチカをする

Last updated at Posted at 2018-12-09

この記事は SLP KBIT Advent Calendar 2018 の10日目の記事です。

はじめに

ラズパイ3の基板上にあるLEDは、設定を変えるとGPIOと連動させることができるらしいので
それを使ってLチカをしたいと思います。
つまりLEDを買わなくてもできるLチカをします。

使ったもの

  • Raspberry Pi 3 Model B

LEDの設定を変更する

現在の設定を確認する

Raspberry Pi 3 の基板上にはLEDが2つ存在します。
それらが、どのような設定で動いているか確認します。

cat /sys/class/leds/led0/trigger
none rc-feedback kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock timer oneshot heartbeat backlight gpio cpu cpu0 cpu1 cpu2 cpu3 default-on input panic mmc1 [mmc0] rfkill-any rfkill0 rfkill1

led0(緑)は、"mmc0"(SDカードへのアクセス)

cat /sys/class/leds/led1/trigger
none rc-feedback kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock timer oneshot heartbeat backlight gpio cpu cpu0 cpu1 cpu2 cpu3 default-on [input] panic mmc1 mmc0 rfkill-any rfkill0 rfkill1

led1(赤)は、"input"(電源)となっています。

この設定をGPIOに変更します。

GPIOと連動するように変更する

今回は、GPIO20とGPIO22を使用します。

sudo su
echo gpio > /sys/class/leds/led0/trigger
echo 20 > /sys/class/leds/led0/gpio
echo gpio > /sys/class/leds/led1/trigger
echo 22 > /sys/class/leds/led1/gpio
exit

Lチカのプログラム

普通のLチカと同様にプログラムを作成します。
LEDを0.5秒ごとに交互に点滅させる処理を10回繰り返すようにします。

lchika.py
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(20,GPIO.OUT)
GPIO.setup(22,GPIO.OUT)

for x in range(10):
    GPIO.output(20,0)
    GPIO.output(22,1)
    time.sleep(0.5)
    GPIO.output(20,1)
    GPIO.output(22,0)
    time.sleep(0.5)
GPIO.cleanup()

実行する

sudo python3 lchika.py

LEDが点滅したら成功です。

LEDの設定を元に戻す

以下のコマンドで設定を元に戻せますが、
ラズパイを再起動、シャットダウンさせても元に戻るようです。

sudo su
echo input > /sys/class/leds/led1/trigger
echo mmc0 > /sys/class/leds/led0/trigger
exit

感想

自分が思っていたよりも、簡単にLチカができた。
基板上のLEDは、GPIO以外にも設定を変更できるということが分かったので
いろいろ試してみたい。

参考

[【 第27回 】Raspberry PiでもLED不要のLチカ!]
(https://www.fabshop.jp/%E3%80%90-%E7%AC%AC27%E5%9B%9E-%E3%80%91raspberry-pi%E3%81%A7%E3%82%82led%E4%B8%8D%E8%A6%81%E3%81%AEl%E3%83%81%E3%82%AB%EF%BC%81/)
RaspberryPi3でPythonを使ってLチカさせる
[コラム] Raspberry Pi 2のオンボードLEDを自由に光らせよう

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?