Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Moderator: RevPiModIO

Post Reply
Juerge_G
Posts: 2
Joined: 04 Sep 2020, 14:22

Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Post by Juerge_G »

Bin noch komplett unerfahren mit RevPi und würde gerne wissen, wie man den digitalen Input (Stecker X2) des RevPi Connect mittels Python abfragen kann.
Habe leider auf Anhieb nicht gefunden. Ein kurzes Code Beispiel wäre natürlich perfekt.
User avatar
dirk
KUNBUS
Posts: 2111
Joined: 15 Dec 2016, 13:19

Re: Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Post by dirk »

Hi, siehe Tutorial Statusbytes RevPi Connect

Code: Select all

# GetInputX2

import revpimodio2
from time import sleep
rpi = RevPiModIO(autorefresh=True)

def GetInputX2():
    return rpi.io.RevPiStatus.value & 1<<6

while True:
    if GetInputX2():
        print("1")
    else:
        print("0")

    sleep(0.5)
Juerge_G
Posts: 2
Joined: 04 Sep 2020, 14:22

Re: Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Post by Juerge_G »

Funktioniert leider nicht.
Obwohl die Installation von RevPiModIO anscheinend erfolgreich war, bekomme ich die Fehlermeldung "NameError: name 'RevPiModIO' is not defined". Hab ich ggf. noch etwas übersehen?
User avatar
dirk
KUNBUS
Posts: 2111
Joined: 15 Dec 2016, 13:19

Re: Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Post by dirk »

Hi das ist seltsam. bitte prüfe, ob Dein System aktuell ist:

Code: Select all

sudo apt update 
sudo apt upgrade
Ich habe unseren Post verschoben ins RevPiModIO Forum.
Hast Du eventuell die 2 vergessen bei "import revpimodio2"?
User avatar
RevPiModIO
KUNBUS
Posts: 327
Joined: 20 Jan 2017, 08:44
Contact:

Re: Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Post by RevPiModIO »

Moin Juerge_G!

Da ist leider noch ein kleiner Fehler im Programm. Und den X2 kannst du direkt über das .core Objekt abfragen:

Code: Select all


# -*- coding: utf-8 -*-
import revpimodio2

rpi = revpimodio2.RevPiModIO(autorefresh=True)
rpi.handlesignalend()

while not rpi.exitsignal.wait(0.5):
    # Just print value every 500 ms
    print(rpi.core.x2in.value)

Wenn du dann richtige Programme schreiben willst, solltest du auf jeden Fall den .cycleloop oder .mainloop verwenden. Das Beispiel oben ist nur mal so zum testen ;)

Gruß, Sven
python3-RevPiModIO - https://revpimodio.org/ || Der RevPi ist das Beste, was passieren konnte!
User avatar
dirk
KUNBUS
Posts: 2111
Joined: 15 Dec 2016, 13:19

Re: Abfrage RevPiStatus (digitaler Input Stecker X2) mit Python

Post by dirk »

Hallo zusammen, vielen Dank für Deine Unterstützung @RevPiModIO. Da kann ich auch was dazulernen. @Juerge_G ich hoffe Deine Fragen sind beantwortet und Du siehst wie professionell und einfach der Support übers Forum funktioniert.
Post Reply