QTR-8RC反射传感器阵列不返回数据

时间:2017-01-06 04:07:24

标签: python

我购买了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)

2 个答案:

答案 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)