Hallo zusammen,
momentan versuche ich mein Wecker-Skript etwas zu verbessern, indem ich der Ausschalt-Taste weitere Funktionen hinzufüge. Siehe Skript:
Python
import vlc
from time import sleep
from datetime import datetime
from gpiozero import Button, LED
// VLC-Player wird erstellt & konfiguriert
vlc_instance = vlc.Instance("--input-repeat=999")
player = vlc_instance.media_player_new()
song = vlc_instance.media_new("/home/pi/Music/Morgenstimmung.mp3")
player.set_media(song)
player.audio_set_volume(100)
button = Button(18)
led = LED(17)
led.off()
modus = 1
def druck():
print(modus)
if modus == 1: //Wenn der Modus 1 ist, stoppt die Musik, die LED geht an und er stellt auf Modus 2 um
print("knopf")
player.stop()
modus = 2
led.on()
elif modus == 2: // wenn der Modus auf 2 ist und der Knopf gedrückt wird, soll die LED blinken und probehalber einen Text ausgeben
led.blink(0.5, 0.5, 10)
print("geht es?")
sleep(5)
led.off()
modus = 1 // Den Modus zum Schluss wieder zurücksetzen
button.when_pressed = druck
// Wenn die Uhrzeit passt, den Weckton abspielen; wenn nicht, warten.
while True:
uhrzeit = open("/home/pi/Python/uhrzeit.txt", "r").read()
if datetime.now().strftime("%H:%M") == uhrzeit:
player.play()
sleep(60)
sleep(20)
Alles anzeigen
Ich bin mir sicher, dass die Experten unter euch viele Verbesserungsmöglichkeiten finden, aber mein Anliegen ist das folgende:
Starte ich das Skript und drücke dann den Knopf (GPIO18), dann kommt diese Fehlermeldung:
Jetzt stellt sich mir die Frage, warum diese Fehlermeldung kommt, denn der Modus wurde ja noch vor der Definition des Skriptes definiert.
Vielen Dank im Voraus,
Michael