ZUSAMMENFASSUNG: Wir schließen einen externen Summer an unseren Raspberry Pi Pico an, um eine einfache, lustige Melodie zu spielen.
from
machine
import
Pin, PWM
import
utime
# Notenfrequenzen (in Hz)
notes
=
{
'C4': 262,
'D4': 294,
'E4': 330,
'F4': 349,
'G4': 392,
'A4': 440,
'B4': 494,
'C5':
523
}
# Melodie und Dauer (in ms)
melody
=
['C4', 'D4', 'E4', 'C4', 'C4', 'D4', 'E4', 'C4', 'E4', 'F4', 'G4', 'E4',
'F4', 'G4']
durations
=
[500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 1000, 500, 500,
1000]
# Initialisierung des Summers
buzzer
=
PWM(Pin(21))
buzzer.freq(440)
# Setze eine Startfrequenz
# Funktion, um eine Note zu spielen
def
play_note(note, duration):
if
note
in
notes:
buzzer.freq(notes[note])
buzzer.duty_u16(32767)
utime.sleep_ms(duration)
buzzer.duty_u16(0)
# Stoppe das PWM-Signal (Note ausschalten)
utime.sleep_ms(50)
# Kurze Pause zwischen den Noten
# Spiele die Melodie
for
note, duration
in
zip(melody, durations):
play_note(note, duration)
buzzer.deinit()
# Deaktiviere den PWM-Kanal, wenn fertig
# Setze die Frequenz basierend auf der Note
# Starte das PWM-Signal
# Halte die Note für die Dauer
Liste der Noten
Melodiespeicher
Funktion zum Abspielen der Noten
26