Forum: Mikrocontroller und Digitale Elektronik Frequenz ausgeben (AVR)


von Garfield (garfield@gmx.de) (Gast)


Lesenswert?

Bin Anfänger auf dem Gebiet AVR und hab da mal ne frage:
Wie kann ich z.B. beim Tiny2313 eine Frequenz von 38KHz ausgeben?
Ich habe mir gedacht evtl. über nen Timer interrupt. Das raffe ich aber
absolut noch nicht. Könnte mir evtl. jemand ein Codebeispiel geben wie
ich die betroffenen register konfiguriere? Währe echt super nett (in C
oder Assembler).
Der AVR soll mit 4Mhz betrieben werden.

Mal ne andere Frage:
Wenn ich so eine Frequenz ausgebe, bleibt diese dann unbeeindruckt von
meinem anderen Programm? Sprich: Ändert sich an der Frequenz was, wenn
ich mein Programm ausführe?

von Christoph Kessler (Gast)


Lesenswert?

mit dem zweiten (16Bit-)Timer läßt sich eine Frequenz unabhängig vom
laufenden Programm ausgeben, hat der Tiny2313 2 Timer ?

von Christian E. (christians)


Lesenswert?

schau doch evtl. mal im GCC-Tutorial oder im AVR-Tutorial

von Hannes L. (hannes)


Lesenswert?

Du kannst mit dem Timer sicherlich einen der OCxx-Pins toggeln
(zumindest geht das beim Tiny15, und das sogar ohne Interrupt).

Dann den passenden Vorteiler einschalten und den Timer in den CTC-Mode
und er klappert gemütlich mit der mittels OCR-Register eingestellten
Periode vor sich hin. Bei 4MHz Takt und 38kHz Frequenz dauert eine
Periode (4000000/38000) 105,26 Takte. Da beim Pin-Toggeln die Frequenz
halbiert würde (oder die Periode verdoppelt) sind es die Hälfte der
Takte bis zum Toggeln, also 53 Takte. Daher brauchst du Vorteiler 1:1
und OCR-Wert 53.

Und Toren (ein/ausschalten) kannst du diese 38kHz, indem du einfach den
Timer (Vorteiler) immer ein- und aus schaltest, so, wie es dein
Fernbedienungs-Telegramm erfordert. ;-)

...

von Sandmännchen (Gast)


Lesenswert?

Dazu hätte ich dann noch eine Frage, möchte auch ne Frequenz aum Ausgang
realisieren, so wie Garfield...

Das mit dem TImer und em CTC mode ist mir klar, nut an welchen Pin kann
ich die Frequenz ausgeben, bzw von außen abnehmen? Brauch ich da nen PWM
Pin oder hat das damit gar nichts zu tun??
DANKE

von Rahul (Gast)


Lesenswert?

OCnx

von Hannes L. (hannes)


Lesenswert?

OCnx

von Rahul (Gast)


Lesenswert?

Ob dat Sandmännchen inner Zeitschleife wohnt?

von Hannes L. (hannes)


Lesenswert?

Ob der HanneS alles nachplappert?

;-)

...

von Rahul (Gast)


Lesenswert?

Hannes = Papagei?

von Hannes L. (hannes)


Lesenswert?

Ich habe nun keine Lust, sowas speziell für den Tiny13 zu programmieren
und verweise daher auf eine (funktionierende) (Ton-) Frequenzerzeugung
mit Tiny15. Da wird Timer1 benutzt, wie er ohne Interrupt den OC-Pin
schaltet und dabei eine Melodie abspielt.

http://www.mikrocontroller.net/attachment.php/283378/melody.asm

Die etwas aktuellere Version findet man hier:

http://www.hanneslux.de/avr/melody/melody.html

...

von Hannes L. (hannes)


Lesenswert?

> Papagei

Papa? - Ja, seit über 30 Jahren...
Ei? - Oster-Ei? - Ja, gibt es schon seti Anfang der Woche bei Penny

Aber was mach' ich nur mit dem "p"???

;-)   <-- Das sein Smilie, das sein nötig wegen humorlose Leser

...

von Rahul (Gast)


Lesenswert?

die "P" hast du doch verbraucht... wie wäre es mit g ?

von Rahul (Gast)


Lesenswert?

@Hannes: Deine Seite ist wirklich schön (vor allem für Anfänger) zu
lesen. Glückwunsch!
Hast du schon überlegt, Tutorien zu schreiben?
Die, die hier angeboten werden, erfordern wohl noch zuviel
Eigendenken...

8-)   (Hab halt ne Brille...)

von Garfield (garfield@gmx.de) (Gast)


Lesenswert?

???

von Rahul (Gast)


Lesenswert?

@Garfield: auf der von Hannes angegeben Seite ist wunderschön
beschrieben, wie man Töne (Frequenzen) mit einem Tiny15 erzeugt.
Aufgrund der Beschreibung sollte es problemlos möglich sein, mit jedem
anderen AVR Frequenzen zu erzeugen...

von Hannes L. (hannes)


Lesenswert?

@Rahul:

Ich schreibe dieses HTML-Zeugs von Hand im Editor des Speedcommanders.
Um ein Tutorial für die hiesige Seite zu schreiben, müsste ich eine
weitere Beschreibungssprache erlernen, die man nirgeds sonst außer
Wikipedia und hier gebrauchen könnte. Dies ist die eigentliche Hürde,
warum ich nicht für die Artikelsammlung schreibe (von kleinen
Korrekturen und Ergänzungen abgesehen).

In diesen Melodiegenerator-Artikel habe ich aber besonders Wert darauf
gelegt, zu zeigen, dass alle nötigen Informationen einer einzigen
Quelle zu entnehmen sind, nämlich dem Datenblatt des Controllers. Wenn
du das für eine "Ohrfeige" für Diejenigen halten solltest, die
grundsätzlich keine Datenblätter lesen und stattdessen lieber gleich
das Forum fragen, dann könnte es sein, dass du Hellseher (ist das das
Gegenteil von "Schwarzseher"?) bist.

g

...

von Hannes L. (hannes)


Lesenswert?

Der Kater hat jetzt sicherlich andere Sorgen... (Mampf mampf...)

g

...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.