检查按钮是否被按下
我有一个带Siri代理的Raspberry Pi控制我的车库门,车库门只有一个用于打开和关闭的命令。为了检查车库门是否打开,我买了一个电磁开关,并且我制作了一个开关按钮。我已经尝试过检查按钮是否被按下
doorstate = `gpio read 5`.chomp #gives value 1 or 0, 1 is opened, 0 is closed
print doorstate
if doorstate == "1"
print "The garage door is already opened.\n"
elsif doorstate == "0"
print "OK, I'll open it for you!\n"
else
print "Error, please open it manually.\n"
end
有人可以告诉我,我怎么能检查网络连接,距离doorstate = 'gpio read 5'
返回的值或字符串等于字符串?
我在这里猜测'gpio read 5'的结果包含一行结尾。 尽量大嚼它关闭:
doorstate = `gpio read 5`.chomp
为了验证之类的doorstate
,在第2行
您需要将您的单引号('
)更改为反引号(`,键盘上带有波浪号的小东西)。那将执行命令。其余的代码很好。
插入p doorstate.class
我编辑的脚本,并在上面贴上后,但它总是打印出“错误,请打开它手动。“任何修复? Maby这是一个价值和没有字符串? –
@DavidG:这不是一个红宝石错误,这是肯定的。我不知道该怎么做。 – Linuxios
但终端给我正确的值,它我输入“gpio读”5它给我1或0,这取决于按钮是否被按下 –
谢谢,它现在工作:) –