0

GPIOポートからの入力を監視するために使用しているラズベリーパイがあります。これを行うには、無限ループを実行する必要があります。

入力でaLOWを受け取ったら、システム コマンド usint を実行しますsubprocess.call。問題は、入力が受信されている限りこのコマンドを実行するLOWことです。これを一度だけ実行しようとしましたが、機能させることができません。

while 1:
    if (GPIO.input(11) != GPIO.HIGH ):
         puerta_abierta = 1
         if(puerta_abierta == 1 ):
              call(["mpg123", "file.mp3"])
              puerta_abierta = 0
    else:
        puerta_abierta = 0
4

2 に答える 2

1

このような:

puerta_abierta = 0
while 1:
    if (GPIO.input(11) != GPIO.HIGH ):
        puerta_abierta += 1
        if(puerta_abierta == 1 ):
            call(["mpg123", "file.mp3"])
    else:
        puerta_abierta = 0
于 2013-04-17T02:52:59.067 に答える