我编辑了一个脚本如下:
if ret ==0:
count+=1
if color>160:
print(2)
a=count
b=count-a
if b ==3:
启动gpio
光电传感器得到一次信号,ret就会置一次零,我相当于是利用count对光电传感器感应的次数进行计数,但是我现在是识别物体的颜色,通过color这个变量判断物体是什么颜色,光电每给一次信号,就会有一个color值,现在我想要达到的目的是,当我当前的color值大于160时,我要再等光电传感器得到3次信号时我再启动gpio,我在满足color大于160的条件时,记下当下的count值是多少,用b变量表示当前的count值减去之前满足if条件的count值,也就是相当于当满足if条件后,我想再得到三次光电信号时再启动gpio,但是目前的问题是,如果我当第一次ret等于零时就满足了color大于160的条件,我紧接着当第二次ret等于零时又满足了条件,我的变量a不是一个固定的数了,这样就不准确了,请问一下大家有什么解决办法。
'''
不具体了解你的逻辑,全当抛砖引玉吧
每次光电信号ret置零,
并同时有一个color
当color大于160,需要再接受3次信号,这三次信号不管color值大不大于160,都改变gpio
'''
count=0
m=0
if color >160:
m=1
if ret==0 and m==1:
count+=1
if count==3:
# 启动gpio命令
m=0