# Achtung: Der Arduino ESP32 kann an allen Pins PWM ausgeben,
# der Arduino Nano BLE Sense nur an den rechten Pins 11, 12, 15, 13, 14, 23, 21, 27, 2, 1, 8 (D2-D12) sowie 3, 28, 2, 31, 29, 30, 5, 4 (A0-A7)
# Bibliothek einbinden
from machine import Pin
#from time import sleep # Wird hier nicht benötigt.
from music import Music
'''
Mit diesem Modul kann man Töne in einer Liste definieren, die dann abgearbeitet wird.
Töne werden in der Form ('Tonhöhe', Notenlänge) definiert, also z.B. ('C4',1/4).
C4 ist das mittlere C auf der Klaviatur (eingestrichenes C).
Es ist die vierte C-Taste von links auf einem Standardklavier
und markiert den Übergang zwischen Violinschlüssel und Bassschlüssel.
Wählt man für Tonhöhe = P, wird eine Pause in der angegebenen Länge gespielt, z.B. ('P',1/2).
Bei der Deklaration kann man festlegen, wie schnell das Lied abgespielt wird (Schläge pro Minute).
'''
# Instanz erstellen: LS an Pin 12, Tempo: 60 Schläge pro Minute
ls = Music(Pin(12),60)
# Lied definieren
thema1=[('C4',1/4),('D4',1/4),('E4',1/4),('C4',1/4)]
thema2=[('E4',1/4),('F4',1/4),('G4',1/2)]
thema3=[('G4',1/8),('A4',1/8),('G4',1/8),('F4',1/8),('E4',1/4),('C4',1/4)]
thema4=[('C4',1/4),('G3',1/4),('C4',1/2)]
# zweimal Thema 1 abspielen
n=1
while n<=2:
i=0
while i<len(thema1):
ls.tone(thema1[i])
ls.noTone()
i=i+1
n=n+1
# zweimal Thema 2 abspielen
n=1
while n<=2:
i=0
while i<len(thema2):
ls.tone(thema2[i])
ls.noTone()
i=i+1
n=n+1
# zweimal Thema 3 abspielen
n=1
while n<=2:
i=0
while i<len(thema3):
ls.tone(thema3[i])
ls.noTone()
i=i+1
n=n+1
# zweimal Thema 4 abspielen
n=1
while n<=2:
i=0
while i<len(thema4):
ls.tone(thema4[i])
ls.noTone()
i=i+1
n=n+1