Töne erzeugen, ZVEI Geber mit Mega8
Ich möchte mit einem AtMega8 Töne erzeugen, die zwischen 1060 und 2600Hz liegen.
Es handelt sich um eine Folge von 5 unterschiedlichen Tönen, wobei jeder Ton gerade mal 70mS lang ist.
http://de.wikipedia.org/wiki/5-Ton-Folge
Wie kann ich ohne möglichst zusätzliche Hardware diese Töne aus dem Mega8 herraus zaubern?
Re: Töne erzeugen, ZVEI Geber mit Mega8
Zitat:
Zitat von Halvar
Ich möchte mit einem AtMega8 Töne erzeugen, die zwischen 1060 und 2600Hz liegen.
Hallo Halvar!
Gestatten, Halvar mein Name. :-)
Mit Buzzer (Piezo) oder Lautsprecher und Transistor (laut): http://halvar.at/elektronik/kleiner_...er0_als_timer/
Mit Lautsprecher aber ohne Transistor (leise): http://www.mcselec.com/index.php?opt...=175&Itemid=41
Dieser Beitrag http://www.loetstelle.net/forum/view...?p=11781#11781 und die folgenden Beiträge dürften auch noch interessant sein.
Wenn du mit dem Timer1 arbeitest, dann brauchst du nur zuerst den Überlaufwert in das Pseudo-Register Compare1a schreiben. Danach schaltest du den Timer1 so lange ein, so lange der Ton dauern soll. Danach schaltest du den Timer einfach wieder aus.
Code:
STOP TIMER1
START TIMER1
Es gibt auch noch den SOUND-Befehl, den ich hier nicht verschweigen möchte. Der ist dann interessant, wenn es nicht so genau auf die Frequenz ankommt und das Programm in der Zwischenzeit sowiso nichts zu tun hat.
mfg
Gerold
:-)