Unterrichts- und Lernmaterial für Mikrocontroller
Unterrichts- und Lernmaterial fürMikrocontroller

Propeller 8 Kern Controller - C Programmierung

  • Weitere Vorschläge zum Thema mit den Boards: Arduino UNO - BASIC Stamp
  • Raspberry Pi: Wer über ein Propeller Board verfügt, kann auch mit Hilfe des RasPi die beschriebenen Propeller-Übungen ausführen. Wie das geht wird hier beschrieben.

Station 3 - Töne erzeugen

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

 

Piezolautsprecher

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.

1 - Piezolautsprecher

Material
  • 1x  Piezo-Lautsprecher
  • 2x  Steckdraht
Aufgabe
  • Bau die unten dargestellte Schaltung auf.
  • Achte auf die richtige Verkabelung.
  • Gib das Programm B03_1 in den Editor ein und speicher es anschließend ab.
  • Starte das Programm über Load RAM & Run.
  • Überzeuge dich, dass der Lautsprecher 1 Sekunde lang einen Ton aussendet.

 

 

 

 

 

 

 

 

Abbildung 1

Schaltungsaufbau mit Piezolautsprecher

Courtesy of Parallax Inc.

 

 

 

Abbildung 2

Schaltskizze zum Schaltungsaufbau mit Piezolautsprecher

Courtesy of Parallax Inc.

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.

Courtesy of Parallax Inc.

2 - Eine Melodie spielen

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
  • 1x  Piezo-Lautsprecher
  • 2x  Steckdraht
  • Schaltungsaufbau wie in Übung 1
Aufgabe
  • Gib das unten stehende Programm B03_02 ein.
  • Speicher das fertig abgeschriebene Programm mit Save Project ... unter dem Namen B03_melodie auf deinem Stick ab.
  • Starte das Programm.

Programmcode zu B03_02

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.

Programm B03_03.c mit #define

Gib das neue Programm ein und speicher es als Projekt mit Save Project As ... unter B03_03 ab.

Die Experimentierecke

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.

Druckversion | Sitemap
© Reinhard Rahner - Gettorf