Python Gpiozero 中文API(三) - Output Devices - PWMLED
原文:https://www.cooooder.com/archives/2021060702
类
class PWMLED 继承于 PWMOutputDevice,代表可变亮度的发光二极管。连接LED阴极至地线引脚,连接LED阳极至限流电阻,将电阻另一端连接到GPIO引脚
构造方法参数
class gpiozero.PWMLED(pin, *, active_high=True, initial_value=0, frequency=100, pin_factory=None)
- pin
- 参数类型:int或者string
- LED灯连接的GPIO引脚,如果设置None,会抛GPIODeviceError
- active_high
- 参数类型:bool
- 如果True(默认),on()方法会将 GPIO 设置为高电平,如果False,on()方法会将 GPIO 设置为低电平
- initial_value
- 参数类型:float
- 如果是0(默认),LED最初将关闭,可以将 0 和 1 之间的其他值指定为 LED 的初始亮度
- frequency
- 参数类型:int
- LED 发出的脉冲频率,默认100Hz
- pin_factory
- 参数类型:Factory或None
- Gpiozero库对很多GPIO相关功能进行了封装,但它自己并不实现GPIO口底层的操作,而是借由一些现有的库来实现,Pin Factory就是用来连接上层和底层库的。
- 默认情况下大部分Gpiozero库功能都是由RPi.GPIO库来实现的,可以通过Pin Factory来更改所使用的库,参考 Pin Factory
方法
- blink(on_time=1,off_time=1,fade_in_time=0,fade_out_time=0,n=None,background=True )
- off()
- on()
- pulse(fade_in_time=1,fade_out_time=1,n=None,background=True )
- toggle()
属性
LED 方法
blink(on_time=1,off_time=1,fade_in_time=0,fade_out_time=0,n=None,background=True )
LED变成呼吸灯状态,重复打开和关闭
- 参数
- on_time(float):开启的时间(秒),默认1秒
- off_time(float):关闭的时间(秒),默认1秒
- fade_in_time(float):淡入的秒数,默认1秒
- fade_out_time(float):淡出的秒数,默认1秒
- n(int或None):闪烁的次数,None(默认)代表永远
- background(bool):如果True(默认值),启动后台线程以继续闪烁并立即返回。如果False,仅在闪烁完成时返回。(参数 n 的默认值的情况下将导致此方法永不返回)
off()
关闭LED
on()
打开LED
pulse(fade_in_time=1,fade_out_time=1,n=None,background=True )
使LED反复淡入淡出
- 参数
- fade_in_time(float):淡入的秒数,默认1秒
- fade_out_time(float):淡出的秒数,默认1秒
- n(int 或 None):脉冲次数,None(默认)表示永远
- background(bool):如果True(默认值),启动后台线程以继续脉冲并立即返回。如果False,仅在脉冲完成时返回。(参数 n 的默认值的情况下将导致此方法永不返回)
toggle()
反转LED的状态,如果处于打开状态,则会将它关闭,如果处于关闭状态,则会将它打开
LED 属性
is_lit
返回True,表示LED当前处于激活状态,否则返回False
pin
LED连接的引脚号,如果已关闭,则返回None
value
脉冲LED占空比,0表示关闭,1表示完全打开,值介于0到1之间