■GPIO
■LEDの点灯
「time.sleep(1)」が無いと、「GPIO.cleanup()」によってLEDの状態がすぐに初期化されてしまうみたい
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
GPIO.output(4, GPIO.HIGH)
time.sleep(1)
GPIO.cleanup()
print("Hello! LED!")
■LEDの点滅
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
while True:
GPIO.output(4, GPIO.HIGH)
time.sleep(1)
GPIO.output(4, GPIO.LOW)
time.sleep(1)
■ファイルの内容に従ってLEDを点灯
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
try:
while True:
led_status = open("led_status.txt", "r")
status = led_status.read()
led_status.close()
if status == "1":
GPIO.output(4, GPIO.HIGH)
time.sleep(1)
GPIO.output(4, GPIO.LOW)
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()
以下のようにすると、プログラムをバックグラウンドで実行&停止できる
$ python led_loop.py &
[1] 2646
$ ps aux | grep python
pi 2646 0.8 0.5 8596 5292 pts/1 S 23:12 0:00 python led_loop.py
pi 2648 0.0 0.0 3916 584 pts/1 S+ 23:12 0:00 grep --color=auto python
$ kill 2646
Linuxコマンド(Bash)でバックグラウンド実行する方法のまとめメモ - Qiita
https://qiita.com/inosy22/items/341cfc589494b8211844