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

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.

主站蜘蛛池模板: 岑溪市| 临洮县| 沁阳市| 岗巴县| 佳木斯市| 奇台县| 乌什县| 金山区| 上虞市| 安达市| 惠州市| 泰州市| 冀州市| 绵竹市| 巢湖市| 溧阳市| 四子王旗| 南澳县| 永仁县| 建宁县| 固原市| 政和县| 三都| 上栗县| 扶沟县| 大同县| 吉林市| 郓城县| 定兴县| 侯马市| 贵南县| 视频| 讷河市| 永善县| 盐亭县| 嘉禾县| 井冈山市| 凤冈县| 日土县| 平湖市| 灵石县|