Töne erzeugen mit µC

Gast #2326593
Lesenswert?
• ▲
▼
Kurze Frage: Ich möchte für ein Gehör-Tester (nichts seriöses, nur zum 
Spielen) verschiedene Piep-Töne in verschiedenen Lautstärken erzeugen.

Wie ich Rechtecksignale verschiedener Frequenz auf zwei "Kanälen" 
(GPIOs) ausgebe und für einen Lautsprecher verstärke, ist soweit klar. 
Tiefpass und Leistungs-OPV habe ich auf einer Lochrasterplatine schon 
zum Laufen gebracht.

Mich würde aber interessieren, ob ich auch verschiedene Lautstärken 
erzielen kann, ohne dass ich das extern in Hardware aufbauen. Man müsste 
ja eigentlich mit einer hohen PWM-Frequenz und einer im Speicher 
abgelegten Sinus-Funktion weiterkommen, oder?

Ist ein Attiny dafür schnell genug? Was meint ihr?
Gast #2326616
Lesenswert?
• ▲
▼
Die gängigen ATTinys haben zwischen 8 und 20 Beinchen.
Entsprechend also 5 bis an die 17 GPIOs.

Wenns nur Rechteck sein soll - ist von 20 Hz bis 20 kHz
die Geschwindigkeit kein Problem.

Setzt man den Sinus aus einer Tabelle zusammen,
kommt die Frage PWM oder R2R-DAC?

Sollte bei 8 MHz auch hinzukriegen sein.

Wie fein soll die Lautstärke regulierbar sein?

Fang einfach mal mit einigen Enwürfen z.B mit einem
Tiny24 an - und frag damit noch mal nach.
Gast #2326659
Lesenswert?
• ▲
▼
Gerhard schrieb:
> Tiefpass und Leistungs-OPV habe ich auf einer Lochrasterplatine schon
> zum Laufen gebracht.

Ein Gehörtester umfaßt gemeinhin Frequenzen bis zu einigen Kilohertz, 
die dein Tiefpaß dann noch durchlassen muß. Für tiefe Frequenzen 
bedeutet das aber, dass noch fleißig Oberwellen durchkommen, es sei 
denn, der Tiefpaß wird mit der Generatorfrequenz zumindest grob 
nachgeführt.

Einfacher ist es, direkt ausreichend gute Sinussignale z.B. mit DDS zu 
erzeugen.
http://www.myplace.nu/avr/minidds/index.htm
Persönliche Seite #2326666
Lesenswert?
• ▲
▼
Einen DDS Chip braucht man nicht unbedingt, wenn man sich auf Frequenzen 
begrenzt, die der Prozessor noch packt. Das ist ja so wenig nicht. Eine 
einfache DDS kommt mit 4 Punkten aus, gemappt auf 16 gefiltert auf 8 
Bit.

http://www.mikrocontroller.net/articles/Digitale_Sinusfunktion 
http://www.mikrocontroller.net/articles/Digitale_Interpolation_bei_DA-Wandlung

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.