官术网_书友最值得收藏!

GPIO callback functions

Let's review some uses of functions with the GPIO example. Functions can be used in order to handle specific events related to the GPIO pins of the Raspberry Pi. For example, the gpiozero library provides the capability of calling a function either when a button is pressed or released:

from gpiozero import Button 

def button_pressed():
print("button pressed")

def button_released():
print("button released")

#button is interfaced to GPIO 2
button = Button(2)
button.when_pressed = button_pressed
button.when_released = button_released

while True:
pass

In this example, we make use of the attributes when_pressed and when_released of the library's GPIO class. When the button is pressed, the function button_pressed is executed. Likewise, when the button is released, the function button_released is executed. We make use of the while loop to avoid exiting the program and keep listening for button events. The pass keyword is used to avoid an error and nothing happens when a pass keyword is executed.

This capability of being able to execute different functions for different events is useful in applications like home automation. For example, it could be used to turn on lights when it is dark and vice versa.

主站蜘蛛池模板: 余姚市| 吴堡县| 宜丰县| 白玉县| 西城区| 虞城县| SHOW| 余庆县| 郧西县| 浑源县| 梓潼县| 漳平市| 余姚市| 兰州市| 郸城县| 社会| 灵川县| 沛县| 武定县| 墨玉县| 中山市| 眉山市| 黄陵县| 通渭县| 马尔康县| 庆城县| 敦化市| 瑞金市| 无锡市| 太仆寺旗| 汾阳市| 承德市| 威远县| 太康县| 资中县| 尤溪县| 南丰县| 体育| 商洛市| 原阳县| 陈巴尔虎旗|