Warum funnktioniert Skript mit GPIO.setmode(GPIO.BCM) nicht??

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Guten Abend @all,

    ich habe eine kurze Frage. Ich nutze hier auf ein b+ ein aktuelles minibian image mit python (2.7.3). Das folgende Skript nutze ich in Verbindung mit einem PIR Bewegungsmelder. Dieses Skript funktioniert:

    Was ich aber nicht verstehe, ist folgendes:

    Wenn ich die Adressierung für den Data-Pin folgendermaßen definiere, funktioniert das Skript nicht mehr.

    Code
    GPIO.setmode(GPIO.BCM)
    PIR_PIN = 18

    53bc258dc6c0425cb44870b50ab30621

    Kann mir jemand sagen, warum diese Adressierung nicht funktioniert?

    Danke und Gruß

    Micky

    Einmal editiert, zuletzt von Micky (20. Juni 2015 um 22:47)

  • Warum funnktioniert Skript mit GPIO.setmode(GPIO.BCM) nicht??? Schau mal ob du hier fündig wirst!

  • Zum Script: Wieso nutzt du 'os.system' um ein echo auszugeben? :s wieso nicht einfach direkt 'print' ohne Aufruf eines externen Programms?

    Davon abgesehen solltest du Pull Up/Down aktivieren/verwenden da sich bei einem als Eingang geschalteten GPIO der Zustand willkürlich ändern kann.
    Der callback Funktion wird auch nicht die PIR_PIN Variable übergeben sondern der Channel/Pin auf dem der Interrupt ausgelöst wurde. Diese Variable gleich zu nennen sorgt also nur für Verwirrung.

    "GPIO.setmode(GPIO.BOARD)" bezieht sich auf die Pin-Nummer.
    "GPIO.setmode(GPIO.BCM)" bezieht sich auf die GPIO-Nummer.

    Somit wäre mit "GPIO.BOARD": Pin#12 -> GPIO18

    Wieso das bei dir allerdings nicht geht - obwohl beides das selbe sein sollte (Pin#12 = GPIO18) vermag ich nicht zu erraten.

  • Hi,

    ich habe ein ähnliches Script für den Bewegungsmelder.

    bei mir steht zum setmode noch eine setup Zeile. Ob die dringend nötig ist weiß ich leider nicht genau.
    Evtl. kannst es mal testen.


    Code
    GPIO.setmode(GPIO.BCM)
    GPIO.setup(SENSOR_PIN, GPIO.IN)

    gruß
    co8

  • Ließ den ersten Beitrag bzw sein Script bitte noch mal. Die setup Zeile ist auch bei ihm vorhanden - und ja die ist zwingend notwendig um einen GPIO entsprechend zu konfigurieren, als IN oder OUT usw - ohne gäbe es keinerlei Funktion bzw Zugriff auf den GPIO ...

    Bitte seht auch davon ab bereits geschriebenes nochmals zu beschreiben (Berlin_pi)

  • Hallo @all,

    Danke für eure Antworten. Da das Skript ansich so läuft ist es nicht so wild. Mich hat einfach nur interessiert warum ich die PIN's nicht über die andere Adressierung ansprechen konnte.

    Trotzdem vielen Dank.

    meigrafd: gute Frage, ich werd mir deine Anregungen mal genauer anschauen.

    Grüße Micky

Jetzt mitmachen!

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