Python Gpiozero 中文API(四) – Output Devices – Buzzer 蜂鸣器
原文:
https://www.cooooder.com/archives/20210615
类
class Buzzer 继承于 DigitalOutputDevice,代表一个数字蜂鸣器组件,此接口只能执行简单的开/关命令,不能播放多种音调(多种音调需使用 TonalBuzzer),将蜂鸣器的阴极连接地线,另一侧连接GPIO引脚。
构造方法参数
class gpiozero.Buzzer(pin, *, active_high=True, initial_value=False, pin_factory=None)
-
pin
- 参数类型:int或者string
- 蜂鸣器连接的GPIO引脚,如果设置None,会抛GPIODeviceError
-
active_high
- 参数类型:bool
- 如果True(默认),on()方法会将 GPIO 设置为高电平,如果False,on()方法会将 GPIO 设置为低电平
-
initial_value
- 参数类型:float
- 如果是False(默认),蜂鸣器最初将静音,如果是True,蜂鸣器将首先打开
-
pin_factory
- 参数类型:Factory或None
- Gpiozero库对很多GPIO相关功能进行了封装,但它自己并不实现GPIO口底层的操作,而是借由一些现有的库来实现,Pin Factory就是用来连接上层和底层库的。
-
默认情况下大部分Gpiozero库功能都是由RPi.GPIO库来实现的,可以通过Pin Factory来更改所使用的库,参考
Pin Factory
蜂鸣器发声示例:
from gpiozero import Buzzer
bz = Buzzer(3)
bz.on()
方法
属性
Buzzer 方法
beep(on_time=1, off_time=1, n=None, background=True)
蜂鸣器重复打开和关闭
- 参数
- on_time (float):开启的时间(秒),默认1秒
- off_time (float):关闭的时间(秒),默认1秒
- n(int或None):闪烁的次数,None(默认)代表永远
- background(bool):如果True(默认值),启动后台线程以继续闪烁并立即返回。如果False,仅在闪烁完成时返回。(参数 n 的默认值的情况下将导致此方法永不返回)
off()
关闭蜂鸣器
on()
打开蜂鸣器
toggle()
反转蜂鸣器的状态,如果处于打开状态,则会将它关闭,如果处于关闭状态,则会将它打开
Buzzer 属性
is_active
返回True,表示蜂鸣器当前处于激活状态,否则返回False
pin
蜂鸣器连接的引脚号,如果已关闭,则返回None
value
如果蜂鸣器当前处于激活状态,则返回 1,否则返回 0。设置此属性会更改蜂鸣器的状态。
相关API快捷导航
-
Gpiozero 中文API(一) – Input Devices – Button
-
Gpiozero 中文API(二) – Output Devices – LED
-
Gpiozero 中文API(三) – Output Devices – PWMLED 脉冲宽度调制LED
出处:https://www.cooooder.com/archives/20210615
转载:欢迎转载,但未经作者同意,必须保留此段声明;必须在文章中给出原文连接;否则必究法律责任
版权声明:本文为zszangy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。