Programm über Taster starten, beenden und wieder starten.

  • Hallo zusammen,

    ich möchte ein Programm mit welchem ich analoge Messwerte erfasse mithilfe eines weiteren Python Scripts über Interrupts, verursacht durch einen Taster, starten und beenden können.
    Das Interrupt Script soll im Autostart liegen und somit immer aktiv sein, drücke ich nun meinen Taster, wird das Script zur Erfassung der Messdaten gestartet, drücke ich ihn erneut, so stoppt die Messung.
    Hierfür habe ich mir bereits eine Interrupt Routine geschrieben welche auf positive Flanke reagiert und momentan (zur Verdeutlichung und Überprüfung) bei Betätigung des Tasters abwechselnd 1 und 2 ausgibt.
    Nun würde ich gerne anstatt der Ausgabe von 1 und 2, Programm starten und Programm beenden auf den Taster legen.

    Ich habe bereits ein wenig mit der Funktion subprocess herum probiert, allerdings schaffe ich es nur das Programm mithilfe des subprocess.Popen Befehls zu starten, jedoch nicht zu beenden.
    Hierfür hatte ich sub.kill() benutzt.

    Könnt ihr mir vielleicht ein wenig unter die Arme greifen?

  • Programm über Taster starten, beenden und wieder starten.? Schau mal ob du hier fündig wirst!

  • 1)
    Besser wäre meiner Meinung nach, wenn du ein Programm schreibst, in welchem zB aus der Hauptfunktion heraus reagiert wird.

    2)
    ``kill()`` ist die Ultima Ratio Lösung. Besser ``terminate()``

    Spoiler anzeigen


    main_programm.py


    sub_programm.py

  • Hallo,

    vielen Dank für die Anmerkung mit dem Hauptprogramm, werde ich mich bei Gelegenheit mit auseinandersetzen. Ich habe nun mithilfe des "terminate()" Begriffs meine Lösung erreichen können.
    Werde den Beitrag deshalb wieder schließen.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!