树莓派行人检测超过数量蜂鸣器代码
时间: 2023-09-20 17:07:06 浏览: 65
好的,以下是树莓派行人检测超过数量蜂鸣器的 Python 代码:
```python
import RPi.GPIO as GPIO
import time
# 设置 GPIO 编号模式为 BCM 模式
GPIO.setmode(GPIO.BCM)
# 设置蜂鸣器的 GPIO 编号
buzzer_pin = 18
# 设置行人检测器的 GPIO 编号
pir_pin = 23
# 设置蜂鸣器的初始状态为关闭
GPIO.setup(buzzer_pin, GPIO.OUT, initial=GPIO.LOW)
# 设置行人检测器为输入模式
GPIO.setup(pir_pin, GPIO.IN)
# 初始化检测到的行人数量
count = 0
# 设置超过数量的阈值
threshold = 10
try:
while True:
# 读取行人检测器的状态
pir_value = GPIO.input(pir_pin)
if pir_value == GPIO.HIGH:
count += 1
print("检测到行人,当前数量为:", count)
time.sleep(1)
# 如果超过阈值,蜂鸣器发出警报
if count > threshold:
GPIO.output(buzzer_pin, GPIO.HIGH)
print("超过数量,蜂鸣器发出警报!")
else:
time.sleep(1)
# 如果检测到行人离开,数量减一
if count > 0:
count -= 1
print("行人离开,当前数量为:", count)
# 如果数量恢复到阈值以下,关闭蜂鸣器
if count <= threshold:
GPIO.output(buzzer_pin, GPIO.LOW)
print("数量恢复到阈值以下,蜂鸣器关闭!")
except KeyboardInterrupt:
# 释放 GPIO 资源
GPIO.cleanup()
```
希望这段代码可以帮助到你!
阅读全文