Mission 2-07: "Die Soundbox"
2. Die Beschreibung Deiner Mission
Bei diesem Projekt erstellen wir ein Programm mit dem Namen "Soundgenerator.hex",
welcher über den Schallwendler auf der Spannungsversrogungsplatine frei auswählbare
Sounds bereitstellt.
Funktionsbeschreibung:
1. Wir verwenden zur Programmerstellung ausschließlich die ereignisorientierte Programmierung.
2. Die Ereignisse:
a. Das Ereignis "Kaltstart/Warmstart des micro:bit-Computers" stellt zuerst das Smiley aus Bild 1
als Bereitschaftsanzeige auf dem Display des micro:bit-Computers dar.
Weiter wird eine Variable mit dem Namen "Melodie" mit dem Wert 1 belegt.
Bild1: Bereitschaftsanzeige
b. Das Ereignis "Drücken der Taste B" spielt den ausgewählten Soundeffekt (Melodie) ab.
- Hierbei wird im ersten Schritt wieder das Smiley aus Bild 1 zur Anzeige gebracht.
- Darauf folgen insgesamt sechs einseitige Auswahlstrukturen, mit welchen ermittelt wird,
welche Zahl {1, 2, 3, 4, 5, 6} in der Variablen "Melodie" gerade gespeichert ist und ent-
sprechend der in ihr gespeicherten Zahl den jeweiligen Soundeffekt (Melodie) abspielt.
Inhalt der Variablen "Melodie" Soundeffekt (Melodie)
1 ......................................................... "power up"
2 ......................................................... "power down"
3 ......................................................... "dadadum"
4 ......................................................... "wawawawaa"
5 ......................................................... "funk"
6 ......................................................... "punchline"
c. Das Ereignis "Drücken der Taste A" kann der gewünschte Soundeffekt ausgewählt werden.
- Dabei wird im ersten Schritt der Inhalt der Variable "Melodie" um 1 erhöht.
Wird als danach die Taste "A" gedrückt, ertönt ein anderer Soundeffekt aufgrund des geänderten
Inhalts der Variablen "Melodie".
- Im zweiten Schritt ist es jedoch unerlässlich zu verhindern, dass die in der Variablen "Melodie"
gespeicherte Zahl den Wert 6 nicht übersteigt, da sonst kein Ton mehr abgespielt würde.
Dies lösen wir ganz einfach (*^_^); mit einer einseitigen Auswahlstruktur, mit welcher überprüft
wird, ob der Inhalt der Variablen größer gleich 7 ist. Ist dem so, so wird im Anweisungsblock
innerhalb der einseitigen Auswahlstruktur die Variable "Melodie" auf den Wert 1 zurückgesetzt.
- Im dritten Schritt geben wir als Hilfestellung für den Anwender noch den Inhalt der Variablen
"Melodie" (Datentyp: Zahl) auf dem Display unseres micro:bit-Computers aus.