Forum: Analoge Elektronik und Schaltungstechnik Verstärkerfrage für Sound aus uC


von J. Perthold (Gast)


Lesenswert?

Hallo zusammen,

hier wurde öfters schon mal die Frage diskutiert wie man mit dem uC
digitalen Sound ausgeben kann. Die einfachste Möglichkeit scheint das
Integrieren über einen RC Tiefpassfilter zu sein. Die eleganteste
Methode ist das Verändern eines PWM Counter-Registers mit den
WAV-Samplewerten. Hierdurch wird die Spannung über dem Kondensator
geändert. Egal wie es gemacht wird, das Ergebnis ist ein entsprechend
geladener Kondensator am Ausgangspin.

 uC Pin-> o-----RRRR----+----o Analoges Audiosignal->
                        |
                       CCC
                        |
                       ===

Mein Problem ist nun wie ich den ausgegebenen WAV-Wert nun auf einen
Lautsprecher gebe. Brauche ich einen Koppel-Kondensator um den
Gleichstromanteil zu eliminieren ? Reicht bei einem 5V uC ein
Transimpedanzverstärker, um das Signal dann auf einen Lautsprecher oder
Piezo zu geben ? Ich will keine High-End Lösung sondern etwas was
einigermaßen funktioniert.

Danke für jeden Hinweis,

 Jürgen

von Rahul (Gast)


Lesenswert?

Im Prinzip könntest du auch einfach einen NPN-Transistor direkt mit dem
Portpin ansteuern, der wiederum einen Lautsprecher ansteuert. Der
Lautsprecher ist dann der Tiefpass.

von ecslowhand (Gast)


Lesenswert?


von Winfried (Gast)


Lesenswert?

Oder ein kleiner NF-Verstärker IC dahinter. Kommt halt immer drauf an,
was für Leistung, Stromverbrauch, Qualtität und Aufwand du willst.

von J. Perthold (Gast)


Lesenswert?

Mein Problem ist, dass der Spannungsbereich durch die 5V uC Versorgung
schon ziemlich groß ist, was jeden normalen NF Verstärker wohl
überfährt.

Ich werde mal die Billig-Transistor Methode direkt an Lautsprecher
probieren. Vermutlich kommen da aber die Oberwellen der PWM Frequenz
mit durch (=Pfeifen).

Danke auch für den Atmel-Link, das ist natürlich schon eine umfassende
Lösung :-)

Gruß,

 Jürgen

von Rahul (Gast)


Lesenswert?

Du könntest auch ein Poti hinter den Kondensator hängen (womit sich zwar
der Ausgangswiderstand deiner Schaltung ändert) und damit dann die
abgegebene Spannung reduzieren.
Ein nachgeschalteter Verstärker sollten dann noch ein gewisses
Tiefpass-Verhalten besitzen (Grenzfrequenz bei 16kHz...).

von Simon K. (simon) Benutzerseite


Lesenswert?

operationsverstärker.

von Benedikt (Gast)


Lesenswert?

Ich hänge meist einen HC245 an der PWM Port, und schalte alle Gatter
parallel.
Das reicht um einen Lautsprecher mit >16Ohm anzusteuern.

Der Sound ist zwar nicht HiFi, aber besser als man erwarten würde. Und
der Wirkungsgrad und somit die erzielbare Lautstärke ist größer als bei
einem Linearverstärker.

von TheMason (Gast)


Lesenswert?

@jürgen

um das pfeifen zu vermeiden kann man auch die  pwm-frequenz um ein
vielfaches (nach möglichkeit durch 2 teilbar) erhöhen. du gibst dann
nur jedes x.te mal ein neues sample aus (sprich : beschreibst dein
pwm-register). dadurch verringerst du den ripple auf dem
tiefpassgefilterten signal, und die qualität wird besser (vor allem bei
leisen audio-signalen)

gruß
rene

von Christian Rötzer (Gast)


Lesenswert?

@TheMason

Das mit dem PWM vervielfachen glaube ich nicht. Dass man mit der
höchstmöglichen PWM-Frequenz des uC arbeitet ist eh klar, aber darüber
hinaus :-/

Ich habe auch einen Vorschlag:

Um den Ripple zu reduzieren, kann man synchron zur PWM den
nachgeschalteten Tiefpass 1. Ordnung samplen und bis zum nächsten
Samplen "holden", also synchron abtasten. In erster Näherung ist
damit der Ripple komplett elime..., elimi..., entfernt.

Ich bin nur unsicher, ob das Verfahren Verzerrungen hervorruft.

von J. Perthold (Gast)


Lesenswert?

Der angegebene ATMEl Link
(http://www.atmel.com/dyn/resources/prod_documents/doc1456.pdf)
Enthält zwar eine wunderbare Schaltung, die jedoch nicht in der Lage
ist einen Kopfhörer geschweige denn einen Lautsprecher zu treiben.
Offenbar hat das noch nie jemand probiert... Eine Info an Atmel wird
dazu noch raus gehen.
Ich werde nun eine Lösung mit einem TDA7052 anstreben, das ist ein 1
Watt NF Verstärker der als externe Beschaltung nur noch 2 Kondensatoren
benötigt, keine negative Versorgung und einen ziemlich freundlichen
Spannungsbereich besitzt.

Gruß,

 Jürgen

von TheMason (Gast)


Lesenswert?

@christian

habe deinen beitrag gerade erst gelesen.
ich bin mir aber ziemlich sicher das es funktioniert.
wenn du mit einem vielfachen der PWM-Frequenz arbeitest eleminierst
(das wars :-))) die du störgeräusche (vor allem die grundfrequenz der
PWM, bei einem tiefpass 1. ordnung immer noch zum teil durchkommt)
dadurch das du diese in ein frequenz-spektrum verschiebst das deutlich
über der frequenz des tiefpasses liegt.
den ripple verminderst du dadurch das der tiefpass mit seiner r-c
zeitkonstante ja quasi nicht "mitkommt" mit der pwm (will heißen die
zeit zwischen laden/entladen ist um ein vielfaches kürzer, dadurch wird
der ripple nicht so groß weil der kondensator eben seine zeit braucht).
ich habs selbst schon getestet. ich hab das auf einem fpga
implementiert. dort hatte ich einen systemtakt von 50MHz für eine 8Bit
PWM. Bei 4fachem Wiederholen hatte ich eine effektive Samplerate von
48kHz. und der ripple war deutlich geringer als wenn ich nur mit
einfacher samplerate gearbeitet habe (und dann nicht 8 bit sondern
10bit).

gruß
rene

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.