2017-04-25 79 views
0

感谢您阅读本文并提供帮助。python GPIO输入,检查不同结果的时间

我使用覆盆子pi b 2 +和python来试用这个。

我试图检查我输入GPIO引脚设置为逻辑高电平的时间,因为我正在使用的器件将设置逻辑高电平以表示不同的条件。如:

  • 1毫秒脉冲=开放

  • 3毫秒脉冲=关闭

  • 5毫秒脉冲=故障

我需要阅读这些不同的条件,所以我可以设置语句。

例如,如果输入是1ms脉冲,我需要将其中一个输出引脚设置为逻辑高电平,这需要与2ms脉冲或5ms脉冲不同。

非常感谢 威尔

回答

0

,因为我不知道这是否会帮助你,我会评论这个答案,但我不能。 难道你不能使用time.time()函数吗?

建立一个检查GPIO输入条件的while循环。

while GPIO.input(pin_number)==0: 
    pulse_start = time.time() 
while GPIO.input(pin_number)==1: 
    pulse_end = time.time() 


pulse_duration = pulse_end - pulse_start 

希望这是你在找什么。让我知道这是否有帮助。 (也要使用time.time()你必须导入时间

+0

对不起有关延迟,我试过使用这个,所以谢谢你的帮助,但是,它从来没有看到脉冲结束。当while循环运行时,我打开脉冲开始和关闭脉冲结束,它不断打开,永不退出循环。 –