我有一个瞬时常开开关连接到引脚 13 和地。引脚 13 还有一个 10k 的上拉电阻连接到引脚 13 和 +3.3v。
当我按下按钮时,该部分运行一次,然后当重置中断时,vars页面告诉我中断正在等待引脚变高,即使我重置中断时引脚处于高电平。我在 2.0 分支中有非常相似的代码并且它运行了很长时间但当我将固件升级到 3.0 分支时我开始出现这种行为。
1. 如果我在重置中断之前读取引脚,它会读取高电平,就像它应该的那样
2. 我尝试在设置中断之前将引脚写入高电平
3. 我尝试在设置中断之前将引脚写入低电平
下面是代码的精简版
代码:
全选
interrupt garageSwitchPin, [garageButtonPress]
[garageButtonPress]
interrupt garageSwitchPin
print \"buttonPress
\"
gosub [garageFlipFlop]
delay 500
interrupt garageSwitchPin, [garageButtonPress]
wait
[garageFlipFlop]
if io(laststat,garageRelayPin) = 1 then
io(po,garageRelayPin,0)
io(po,garageIndicatePin,0)
else
io(po,garageRelayPin,1)
io(po,garageIndicatePin,1)
endif
return
0