Python/Raspberry Pi:BCM引脚永久提供高信号



我正在编写一个脚本,允许您按下 3 个按钮并通过 MQTT 控制另一个人的 LED。 我检查按钮是否按下的方式是通过中断/add_event_detect:

io.add_event_detect(btn1,io.FALLING,callback=lambda *a: snd_msg(1),bouncetime=500)
io.add_event_detect(btn2,io.FALLING,callback=lambda *a: snd_msg(2),bouncetime=500)
io.add_event_detect(btnMaster,io.FALLING,callback=lambda *a: snd_msg(3),bouncetime=500)

前两个工作正常,但第三个被永久调用,没有按下任何按钮。 这是他们目前使用的引脚:

btn1 = 2 #red
btn2 = 3 #yellow
btnMaster = 18 #green
io.setmode(io.BCM)
io.setup(btn1, io.IN)
io.setup(btn2, io.IN)
io.setup(btnMaster, io.IN) 

我也尝试过 btnMaster 的引脚 4,但我得到了相同的结果。我猜这与 BCM 模式下引脚 2 和 3 的上拉有关,但我真的不知道如何解决这个问题。

这是我运行脚本时的输出: 输出图片

如有必要,我可以提供更多代码。

我找到了答案,所以我想我也会在这里发布它。 这确实是引脚,因为BCM模式下的引脚2和3具有1.8 kOhms的内置上拉电阻。 我基本上只是在本教程中连接了给我带来上拉电阻问题的主按钮。

最新更新