树莓派GPIO控制的初级应用-多色二极管的亮度调节与颜色变化
树莓派GPIO的初级应用-多色二极管的亮度调节与颜色变化
认识多色二极管
引脚R:控制红色二极管亮/灭
引脚G:控制绿色二极管亮/灭
引脚B:控制蓝色二极管亮/灭
GND:接地
在这里我们令各个引脚:
R=13
G=26
B=16
初始化各个引脚
RPi.GPIO.setup(R,RPi.GPIO.OUT)
RPi.GPIO.setup(G,RPi.GPIO.OUT)
RPi.GPIO.setup(B,RPi.GPIO.OUT)
初始化脉宽调制为最大并启动
pwmR = RPi.GPIO.PWM(R,100)
pwmG = RPi.GPIO.PWM(G,100)
pwmB = RPi.GPIO.PWM(B,100)
pwmR.start(0)
pwmG.start(0)
pwmB.start(0)
以红色灯为例
红灯亮:RPi.GPIO.output(R,True)
红灯灭:RPi.GPIO.output(R,False)
亮度调节:
红灯1级亮度:pwmR.ChangeDutyCycle(blightness[count1]) # blightness[count1]=1
红灯2级亮度:pwmR.ChangeDutyCycle(blightness[count1]) # blightness[count1]=20
红灯3级亮度:pwmR.ChangeDutyCycle(blightness[count1]) # blightness[count1]=50
红灯4级亮度:pwmR.ChangeDutyCycle(blightness[count1]) # blightness[count1]=100
颜色调节:
红灯:红色二极管亮
蓝灯:蓝色二极管亮
绿灯:绿色二极管亮
黄色灯:红色、绿色二极管同时亮
白色灯:红色、蓝色、绿色灯同时亮
同时控制亮度和颜色方法:
当接收到红外信号时,内部计数器+1 并对25求余
当计数器为4 9 14 19 24时,表示灯熄灭
0~3时表示红灯,具体计数器数值表示亮度对应的字典下标
5~8时表示绿灯,具体计数器数值表示亮度对应的字典下标
10~13时表示蓝灯,具体计数器数值表示亮度对应的字典下标
15~18时表示黄灯,具体计数器数值表示红灯和绿灯亮度对应的字典下标
20~23时表示白灯,具体计数器数值表示红灯、绿灯和蓝灯亮度对应的字典下标