2016年5月4日 星期三

Raspberry Pi - 控制內建LED燈 PWR LED 和 ACT LED

1. Raspberry Pi有兩個內建的LED燈,一個為ACT LED,另一個是PWR LED。
OK (ACT) LED = led0
Power (PWR) LED = led1
2. 查詢所有點燈模式
$ cat /sys/class/leds/led0/trigger
none mmc0 timer oneshot [heartbeat] backlight gpio cpu0 cpu1 cpu2 cpu3 default-on input
3.1. 點亮LED燈
$ sudo sh -c 'echo none > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo none > /sys/class/leds/led1/trigger'
$ sudo sh -c 'echo 0 > /sys/class/leds/led0/brightness'
$ sudo sh -c 'echo 0 > /sys/class/leds/led1/brightness'
點暗LED燈
$ sudo sh -c 'echo none > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo none > /sys/class/leds/led1/trigger'
$ sudo sh -c 'echo 1 > /sys/class/leds/led0/brightness'
$ sudo sh -c 'echo 1 > /sys/class/leds/led1/brightness'
3.2. 以 SD 卡讀寫狀態觸發LED燈
$ sudo sh -c 'echo mmc0 > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo mmc0 > /sys/class/leds/led1/trigger'
3.3. 持續閃爍LED燈,delay_on為點亮時間,delay_off為點暗時間
$ sudo sh -c 'echo timer > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo 250 > /sys/class/leds/led0/delay_on'
$ sudo sh -c 'echo 250 > /sys/class/leds/led0/delay_off'

$ sudo sh -c 'echo timer > /sys/class/leds/led1/trigger'
$ sudo sh -c 'echo 2000 > /sys/class/leds/led1/delay_on'
$ sudo sh -c 'echo 2000 > /sys/class/leds/led1/delay_off'
3.4. 點亮led0,單次觸發後,持續delay_on時間後led熄滅
$ sudo sh -c 'echo oneshot > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo 3000 > /sys/class/leds/led0/delay_on'

$ sudo sh -c 'echo 1 > /sys/class/leds/led0/shot'
3.5. 心跳閃爍LED燈
$ sudo sh -c 'echo heartbeat > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo heartbeat > /sys/class/leds/led1/trigger'
3.6. 以 CPU 狀態觸發LED燈
$ sudo sh -c 'echo cpu0 > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo cpu0 > /sys/class/leds/led1/trigger'
3.7. 點亮LED燈
$ sudo sh -c 'echo default-on > /sys/class/leds/led0/trigger'
$ sudo sh -c 'echo default-on > /sys/class/leds/led1/trigger'
4. Dump GPIO相關資訊
$ mount -t debugfs debugfs /sys/kernel/debug
mount: debugfs is already mounted or /sys/kernel/debug busy
       debugfs is already mounted on /sys/kernel/debug

$ cat /sys/kernel/debug/gpio
GPIOs 0-53, platform/3f200000.gpio, pinctrl-bcm2835:
 gpio-35  (?                   ) out lo
 gpio-47  (?                   ) out lo
5. 參考來源
https://gist.github.com/taktran/1b691c08216dd30b70bf
以程式控制樹莓派 Raspberry Pi 的 ACT LED 指示燈
Linux PSP GPIO Driver Guide
Raspberry Pi と Raspberry Pi2の非互換性

沒有留言:

張貼留言