Hi,
hab mir einen Schalter an meinen Pi gehängt der per Interrupt eingelesen wird und mir auf der Konsole etwas ausgibt. Wenn ich nur einen Interrupt programmiere funktioniert alles perfekt. So wie hier.
Code
GPIO.setup(11, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E1
def Interrupt1(channel):
schalter1()
GPIO.add_event_detect(11, GPIO.RISING, callback = Interrupt1, bouncetime = 200)
nun zum Problem, wenn ich mehrere Interrupts programmiere fängt das Programm an zu spinnen. Ich betätige einmal einen Taster dann sollte ich auf der Konsole eigentlich nur einmal eine Ausgabe erhalten. Leider kommt die Ausgabe aber mehrmals und völlig wilkürlich in der Anzahl, von einer bis sechs widerholungen alles dabei, dachte zuerst das liegt am Prellen, hab aber eine Wartezeit drin. Es liegt also am Code, bin aber zu blöd um es zu sehen.
Code
GPIO.setup(11, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E1
GPIO.setup(13, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E2
GPIO.setup(15, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E3
GPIO.setup(19, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E4
GPIO.setup(21, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E5
GPIO.setup(23, GPIO.IN, pull_up_down = GPIO.PUD_DOWN) # E6
# ----------------Interrupt was soll passieren
def Interrupt1(channel):
schalter1()
def Interrupt2(channel):
schalter2()
def Interrupt3(channel):
schalter3()
def Interrupt4(channel):
schalter4()
def Interrupt5(channel):
schalter5()
def Interrupt6(channel):
schalter6()
# --------------Interrupt
GPIO.add_event_detect(11, GPIO.RISING, callback = Interrupt1, bouncetime = 200)
# GPIO.add_event_detect(13, GPIO.RISING, callback = Interrupt2, bouncetime = 200)
# GPIO.add_event_detect(15, GPIO.RISING, callback = Interrupt3, bouncetime = 200)
# GPIO.add_event_detect(19, GPIO.RISING, callback = Interrupt4, bouncetime = 200)
# GPIO.add_event_detect(21, GPIO.RISING, callback = Interrupt5, bouncetime = 200)
# GPIO.add_event_detect(23, GPIO.RISING, callback = Interrupt6, bouncetime = 200)
Alles anzeigen
wenn mir jemand auf die Sprünge helen könnte wär das klasse.
mfg