Raspberry Pi LEDライトの点灯とPWM制御をでの点滅サンプルコード
■環境
・デバイスRaspberry Pi 4
・言語:Python
・IDE:Geany
■材料
・RGBフルカラーLED
・抵抗(100Ω)×3
・ジャンパーワイヤー×4
■サンプルコード
#coding: utf-8
import RPi.GPIO as GPIO
import time
#端子の配列をBroadcomチップに準拠
GPIO.setmode(GPIO.BCM)
#出力端子番号
red_pin = 16
blue_pin = 20
green_pin = 21
#端子番号を配列に格納
array_pin = {red_pin, blue_pin, green_pin}
for i in array_pin:
print ('出力端子番号: ' + str(i))
#対象端子出力に設定
GPIO.setup(i, GPIO.OUT)
#対象端子を点灯
GPIO.output(i, GPIO.HIGH)
#1秒待つ
time.sleep(1)
#対象端子を消灯
GPIO.output(i, GPIO.LOW)
#PWMで明るさを制御する端子を設定 引数:(端子番号, 周波数Hz)
r = GPIO.PWM(red_pin, 50)
#PWM出力が開始(引数はデューティー比)
r.start(0)
print ('PWMで明るさを制御')
#10回繰り返し
for loop in range(20):
#range(start, stop, step) 0〜100まで20おき
#明るくする間隔の制御
for i in range(0,100,20):
#明るさ制御(数にデューティー比を0~100の間でON・OFFのON比率を指定)
r.ChangeDutyCycle(i)
time.sleep(0.02)
#暗くする間隔の制御
for i in range(100,0,-20):
r.ChangeDutyCycle(i)
time.sleep(0.02)
#端子の開放
GPIO.cleanup()