我购买了QTR-8RC反射传感器阵列,现在尝试使用Python进行配置。我试图确定我的接收器(光电晶体管)正在读取的电压的衰减速率,以便我知道何时检测到一条线。我不知道为什么我的Python代码没有返回任何东西。甚至没有警告声明。附加信息包括默认情况下GPIO是输出,LED指示灯亮。任何帮助表示赞赏!
import RPi.GPIO as GPIO
from time import sleep
def Read():
GPIO.setmode(GPIO.BOARD)
GPIO.setup(5, GPIO.OUT)
sleep(0.01)
count = 0
GPIO.setup(5, GPIO.IN)
while GPIO.input(5) == True:
count = count + 1
return count
while True:
Read()
print(Read())
sleep(1)
答案 0 :(得分:1)
我对QTR-8RC反射传感器阵列一无所知。 但是看看你的python代码,问题可能在于
while GPIO.input(5) == True
如果值始终为true,则永远不会到达带有return语句的行。
您可以在while块之后使用print语句来检查。像
这样的东西while GPIO.input(5) == True:
count = count + 1
print "while loop has ended"
return count
答案 1 :(得分:1)
而不是运行程序连续运行一段时间并检查输出。 也许你需要增加睡眠时间来实际看到输出。
import RPi.GPIO as GPIO
from time import sleep
def Read():
GPIO.setmode(GPIO.BOARD)
GPIO.setup(5, GPIO.OUT)
sleep(0.01)
count = 0
GPIO.setup(5, GPIO.IN)
while GPIO.input(5) == True:
count = count + 1
print "count :", count
return count
for _ in range(100):
print(Read())
sleep(2)