Go Down

Topic: Zwei Frequenzen erzeugen ! (Read 1 time) previous topic - next topic

Michael_tt

Hallo,

ich möchte gerne mit meinem neu erworbenen Arduino Mini 04 zwei unterschiedliche Frequenzen
erzeugen. Zum Beispiel 38kHz und 40Khz, diese dann ausgeben. Ohne Timer scheint dies
nicht vernünftig möglich zu sein.

Mit Timern hab ich wenig Erfahrung, in Zusammenhang mit dem Arduino schon garnicht. Hat da vielleicht jemand ein paar Codeschnipsel rumliegen die das Thema in etwa anreissen ?

Kann ich die Timer mit dem Arduino Bootloader und der Arduino 0018 Umgebung überhaupt vernünftig nutzen ?

Danke im voraus ! 8-)

udoklein

#1
Jun 12, 2010, 02:31 pm Last Edit: Jun 12, 2010, 02:32 pm by udoklein Reason: 1
Der Arduino hat 3 Timer. Timer 1 und 2 sind frei benutzbar. Für PWM und für Tone gibt es Beispielsketches. Die sind schon in der IDE mit drin.

Man muß nur aufpassen, daß man Pins verwendet die auch verwendbar sind. PWM und Tone geht nicht mit jedem Pin.

Wenn Du 2 Pins verwendest die an verschiedenen Timern hängen, also an 1 und 2, dann kannst Du die Frequenzen auch beliebig unabhängig variieren.

Udo
Check out my experiments http://blog.blinkenlight.net

Michael_tt

#2
Jun 12, 2010, 06:10 pm Last Edit: Jun 12, 2010, 06:11 pm by Michael_tt Reason: 1
Danke für die Antwort, aber mag sein das ich blind bin ... ich kann in den
Beispielen nix zu Timern finden ?! :'(

udoklein

Mist, Du hast recht. Ich hatte das falsch im Kopf. Ich hatte mir den Quellcode der Libs angeschaut und hatte das falsch im Kopf. Die ultimative Quelle ist natürlich das 328P Datenblatt von Atmel. Immer dran denken der Arduino ist auch nur ein AVR Mega mit ein paar Verzierungen ausen rum.

Deshalb gilt auch alles was hier steht:
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/Die_Timer_und_Z%C3%A4hler_des_AVR

Im Datenblatt kann man dann noch schauen wieviele Timer der jeweilige Prozessor hat und wie die Register heissen.

Gruß, Udo
Check out my experiments http://blog.blinkenlight.net

Go Up