
| 干簧管传感器 | 树莓派开发板 | LED灯 |
| VCC | 5V | 5V |
| GND | GND | GND |
| DO | GPIO.7(BCM4) | GPIO.0(BCM17) |


树莓派GPIO针脚图
已知传感器在检测到磁场后会输出开关量信号,通过测量电压为0-3V。实为低电平信号。可以通过树莓派来写个实时监测Python代码。用于检测该引脚的低电平信号,在树莓派上我们可以使用RPi.GPIO库来控制GPIO引脚!通过上面的接线方式,我们将传感器的信号输出引脚接入在了树莓派GPIO7(BCM为4),再将LED灯的正极接在树莓派的GPIO17(BCM0),通过程序来设定实时监测GPIO7的信号输入状态,(如果GPIO7有信号输入则让GPIO17输出电压并显示出:检测到磁性,反之则不输出并显示“检测正常”)
import time
# 设置GPIO模式为BCM
GPIO.setmode(GPIO.BCM)
# 定义GPIO引脚
GPIO_PIN_4 = 4
GPIO_PIN_17 = 17
# 设置GPIO4为输入,GPIO17为输出
GPIO.setup(GPIO_PIN_4, GPIO.IN)
GPIO.setup(GPIO_PIN_17, GPIO.OUT)
try:
while True:
# 检测GPIO4的输入状态
if not GPIO.input(GPIO_PIN_4): # 如果GPIO4有低电平
GPIO.output(GPIO_PIN_17, GPIO.LOW) # 关闭GPIO17的高电平输出
print("检测正常")
else:
GPIO.output(GPIO_PIN_17, GPIO.HIGH) # 否则保持GPIO17为高电平
print("检测到磁性")
# 等待一段时间再检查一次(这里假设每秒检查一次,可根据需要调整)
time.sleep(1)
except KeyboardInterrupt:
# 键盘中断(Ctrl+C)时,清理GPIO资源
GPIO.cleanup()结果:当有磁性物体靠近传感器时,LED灯打开,并显示:检测到磁性。 当磁性物体拿开后LED灯关闭,并显示:检测正常!