- GPIO号
- 代码
import RPi.GPIO as GPIO
import time
import random
pins = {'pin_R': 11, 'pin_G': 12, 'pin_B': 13}
GPIO.setmode(GPIO.BOARD)
for i in pins:
GPIO.setup(pins[i], GPIO.OUT)
GPIO.output(pins[i], GPIO.HIGH)
p_R = GPIO.PWM(pins['pin_R'], 100)
p_G = GPIO.PWM(pins['pin_G'], 100)
p_B = GPIO.PWM(pins['pin_B'], 100)
p_R.start(100)
p_G.start(100)
p_B.start(100)
def off():
for i in pins:
GPIO.output(pins[i], GPIO.HIGH)
def loop():
while True:
r = random.randint(0, 100)
g = random.randint(0, 100)
b = random.randint(0, 100)
p_R.ChangeDutyCycle(r)
p_G.ChangeDutyCycle(g)
p_B.ChangeDutyCycle(b)
time.sleep(1)
def destroy():
p_R.stop()
p_G.stop()
p_B.stop()
off()
GPIO.cleanup()
if __name__ == "__main__":
try:
loop()
except KeyboardInterrupt:
destroy()
- 结果