0
Raspberry Pi 3のピン23にGPIOボタンが設定されています。このボタンを押すと別のpythonスクリプトを実行することができます。最初のプログラムを実行すると、 "Button Pressed"が表示されますが、2番目のプログラムは実行されません。 (私はプログラムで許可が設定されていることを確認しました。)ご協力いただきありがとうございます!GPIOボタンを押してPython 3プログラムを実行
#!/usr/bin/env python
import RPi.GPIO as GPIO
import time
import subprocess
GPIO.setmode(GPIO.BCM)
GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_UP)
while True:
input_state = GPIO.input(23)
if input_state == False:
print('Button Pressed')
subprocess.call('/home/pi/Downloads/PuttingItAllTogether.py', shell=True)
time.sleep(0.2)
それはそれはあなたのスクリプトを実行されるべき「押されたボタン」を印刷しています場合。 '/ home/pi/Downloads/PuttingItAllTogether.py'スクリプトが出力を生成することは確実ですか?あなたはスクリプトの終了ステータスをチェックしましたか(これは 'subprocess.call'の戻り値です)? – larsks
助けてくれてありがとう@larsks。私はプログラミングに非常に新しいです。スクリプトの終了ステータスを確認するにはどうすればよいですか?私はPythonから/home/pi/Downloads/PuttingItAllTogether.pyを直接実行することができます。私は心からあなたの助けに感謝します。 –
私が言ったように、それは 'subprocess.call'への呼び出しの戻り値です。これを変数に保存し、 'returnval = subprocess.call(...)'の後に 'print'文のように出力します。 – larsks