Aus deiner täglichen Erfahrung kennst du sicherlich Geräte, die durch einen Ton oder ein Geräusch auf sich aufmerksam machen.
Ein Mikrowellen-Ofen gibt zum Beispiel einen Ton ab, sobald die Zeit des Aufheizens vorbei ist, Rauchmelder erzeugen im Brandfall einen unangenehmen lauten hochfrequenten Warnton und manche Smartphones sind so eingestellt, dass sie bei jedem Tastendruck einen leisen Ton abgeben.
In den genannten Geräten sind häufig sogenannte Piezo-Lautsprecher eingebaut; sie sind klein und billig und ihr Klang genügt den Anforderung der Menschen.
Notiere drei Gegenstände/Geräte aus deinem Umfeld, die ebenfalls einen Ton abgeben.
______________________________________________________________
______________________________________________________________
______________________________________________________________
In dieser Station lernst du am Beispiel eines einfachen Schaltkreises, wie man Töne erzeugt und über einen Lautsprecher ausgibt. Zum Schluss wird eine kleine Melodie entworfen, die über den Mikrocontroller und den angeschlossenen Piezo-Lautsprecher abgespielt wird.
Neue Fachbegriffe sind: Piezo-Lautsprecher, Frequenz, Kilohertz, Hörbereich eines Menschen
Ziele
Wenn du Station 3 durchgearbeitet hast, bist du in der Lage ...
... Töne unterschiedlicher Höhe über einen Propeller-Mikrocontroller auf einem Lautsprecher auszugeben.
... das Datenblatt eines Piezo-Lautsprechers zu lesen und ihm Informationen zu entnehmen.
... einfache elektronische Schaltungen mit einem Lautsprecher aufzubauen.
... ein einfaches C-Programm einzugeben und zu verstehen.
... die #define-Anweisung anwenden zu können.
... eine einfache Melodie über einen Mikrocontroller auf Lautsprecher auszugeben.
Material |
|
Aufgabe |
|
Programm B03_1.c
Wie arbeitet das Programm B03_1.c?
Das Programm besteht aus nur einer Programmzeile. Der Befehl freqout enthält die drei Parameter: portpin, mstime und frequenz. Der Aufruf von
freqout(4, 1000, 3000);
sendet für 1000ms ein Wechselspannungssignal an Port 4 mit einer Frequenz von 3000 Hz. Da der Lautsprecher an P4 angeschlossen wurde, wechselt die Ausgangsspannung an P4 sehr schnell zwischen 3,3V (high) und 0V (low) und regt damit das piezoelektrische Element im Lautsprecher zu 3000 Schwingungen pro Sekunde an. Das Ergebnis ist ein hörbarer Ton.
Jetzt kommst du!
Auf einem Klavier werden Töne dadurch erzeugt, dass ein kleiner Hammer eine Saite anschlägt. Die Saite fängt - je nach Länge - mit einer bestimmten Frequenz an zu vibrieren und erzeugt dadurch einen hörbaren Ton.
Für einen ausgewählten Tastenbereich auf der Klaviatur gibt das unten stehende Bild einige Frequenzen wieder.
Die über zwei Oktaven angegebenen Frequenzen der einzelnen Töne sollen in einem Feldbereich (einem Array) abgelegt werden. Innerhalb des vorgegebenen Tonumfangs von zwei Oktaven werden wir eine kleine Melodie entwickeln und über den Lautsprecher abspielen.
Material |
|
Aufgabe |
|
Das Programm B03_02.c lässt sich mit Hilfe des #define Befehls etwas komfortabler und lesbarer schreiben, da nicht jedem sofort klar wird, welchem Notenwert die Frequenz 1047 oder 1175 entspricht. Das lässt sich mit dem folgenden Programm B03_03.c, das genau das gleiche macht, wie B03_02.c anschaulich zeigen.
Gib das neue Programm ein und speicher es als Projekt mit Save Project As ... unter B03_03 ab.
Wir haben gesehen, dass sich mit Hilfe des Befehls #define den Frequenzen Notenbezeichnungen zuordnen lassen. Das vereinfacht zum Beispiel die Übertragung von Musikstücken auf den Rechner.
Komponiere ein kleines Stück, das aus den ganzen Tönen C6 ... D7 bestehen soll. Rufe die Noten im Programm über ihre Bezeichnungen auf. Sobald das Programm fertig geschrieben ist, speicher es unter dem Namen B02_komposition ab.