Python Script bzgl. der Kontrolle der GPIO Slots funktioniert nicht


Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

tklustig

Erfahrenes Mitglied
Hallo Leute,
seit geraumer Zeit funktioniert mein Temperatursensor auf dem Messboard meines Pis nicht mehr. Um zu überprüfen, ob der Sensor, oder dir GPOSs defekt sind, habe ich folgendes Python-Script geschrieben. Das wirft mit aber folgenden Fehler aus:
Bash:
root@pi:/home/tklustig# python pins_testall.py
  File "pins_testall.py", line 26
    print "Ausgang LOW"
    ^
IndentationError: unexpected indent
Hier das Python-Script. was mache ich falsch? Wo liegt der Bug?
Python:
#!/usr/bin/env python
#coding: utf8
import time
import RPi.GPIO as GPIO
# Zählweise der Pins festlegen
GPIO.setmode(GPIO.BOARD)
# Pin x (GPIO x) als Ausgang festlegen
x = 24
while x >= 16:
    GPIO.setup(x, GPIO.OUT)
# Ausgang 3 mal ein-/ausschalten
    i = 3
    while i > 0:
    # Ausgang einschalten
        GPIO.output(x, GPIO.HIGH)
    # Abfragen, ob Ausgang TRUE ist
        if GPIO.input(x) == GPIO.HIGH:
        # Wenn Ausgang TRUE ist, Ausgabe im Terminal erzeugen
            print "Ausgang HIGH"
        else:
            print "Ausagebe LOW"
    # eine Sekunden warten
        time.sleep(1)
    # Ausgang ausschalten und anzeigen
        GPIO.output(x, GPIO.LOW)
        print "Ausgang LOW"
    # eine Sekunden warten
        time.sleep(1)
    # Zähler für die Schleifen herunter zählen
        i = i - 1
    x= x - 1
# Ausgänge wieder freigeben
GPIO.cleanup()
 

Jan-Frederik Stieler

Monsterator
Moderator
Hast Du Dir mal den Fehler richtig durchgelesen?
Grundsätzlich ist die Anzahl der Einzugszeichen egal aber sie müssen dann immer gleich bleiben.
Also schau mal in Deinem Script ob Du in Zeile 26 einen richtigen Einzug drinnen hast oder obDu vielleicht Spaces und Tabs gemischt hast oder ob die Anzahl von Spaces nicht stimmt.

Grüße
 

tklustig

Erfahrenes Mitglied
Du hattest Recht. Erst nachdem ich das gesamte Script per Tabs korrigiert hatte, läuft es durch. Das ist eben ungewohnt für mich. Normalerweise kenne ich die Öffnung und Schließung der "Blöcke" durch {
bzw.
}
.Danke für deine Hilfe
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…