我一直试图读取覆盆子pi上输出gpio引脚的当前状态,但没有成功
代码:
#!/usr/bin/python
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.OUT)
while True:
if GPIO.output(4) == True:
print "pin is high"
else:
print "pin is low"
time.sleep(0.500)
我一直收到错误告诉我在if语句的第一行我需要两个参数,如果我提供两个参数,那么所有发生的事情就是引脚变为高电平并继续在循环上打印。我确定我必须接近,但我似乎无法得到它。在此先感谢您的帮助!
答案 0 :(得分:1)
我假设您要仔细检查您的引脚状态而不是测量它。
我遇到这样的情况:两个插件(在Kodi / XBMC下)可以控制一个引脚,然后在其中一个更改设置之前需要首先读取该引脚的状态:
if GPIO.input(17) is 1:
line2 = 'The pin is high'
else:
line2 = 'The pin is low'
答案 1 :(得分:0)
我猜你需要改变
GPIO.setup(4, GPIO.OUT)
到
GPIO.setup(4, GPIO.IN)
如果你想从中读取
GPIO引脚不是双工的(它们可以读取或写入,但不能同时读取或写入)...您必须明确地将其更改为写入模式以写入和读取模式以读取...