Forum: Mikrocontroller und Digitale Elektronik Brauchbares Filter?!


von Erik (Gast)


Lesenswert?

Hallo miteinander!

Ich brauche einen Ratschlag!

Ich betreibe mittels uC ein 16 Bit DAC mit 8 Bit Interface,
Samplingrate 44kHz.
Die Schaltung soll als Audio DAC dienen.
Leider habe ich am Ausgang nicht nur die Trägerfrequenz, z.B. 1kHz
Sinus, sondern auch höhere Frequenzen was laut Fourier-Analyse auch
logisch ist....
Nun meine Frage: Wie bringe ich das Weg, resp. was für ein Filter
benötige ich um die "nicht-Trägerfrequenzen", welche aber hörbar sind
zu dämpfen?
Normale Musik tönt gut, aber ein Gong oder Klavier Signal tönt
schlecht!

von Benedikt (Gast)


Lesenswert?

Ein möglichst steiles 20-22kHz Tiefpassfilter.

von Erik (Gast)


Lesenswert?

Danke für die Antwort!
Habe am Ausgang schon ein Tiefpass 3. Ordnung.
Dieses Filter glättet mir zwar die Treppe zu einem schönen Sinus, aber
es nützt nichts, das das x fache hörbare der Trägerfrequenz nicht
gefiltert wird! --> Fourier

von Björn (Gast)


Lesenswert?

Also deine 1 KHz sind ja keine Trägerfrequenz im Eigentlichen Sinne. Das
Abtasttheorem sagt ja das man durch Abtastung ein periodisches Spektrum
bekommt. Wenn man f < fa vorraussetzt bekommt man z.B. für f = 1 KHz
und fa = 44 KHz (sinus) nach der Digitalisierung Spektrallinien bei f
(1 KHz), fa-f (43 KHz), fa+f (45 KHz), 2*fa-f, 2*fa+f ... (negative
f's spar ich mir mal geht ja genau so).

So alles in allem und das bleibt fest zu halten, entsteht durch
Abtastung (wenn das Abtasttheorem eingehalten wird) !keine!
Harmonischen von deinen 1 KHz, also keine bei 2 KHz , 3 KHz etc.

Mit einem idealen TP mit fg = fa/2 läßt sich nun das Ursprungsspektrum
wieder herausfiltern. Nun muss man einen praktisch realisierbaren TP
entwerfen, der den nötige SNR gewehrleistet. Da is 3 Ordnung bei 16 bit
und hoher fg etwas dünn.

Die Treppenkurve deines DAC hat im Übrigen folgende Konsequenzen:
Da man nicht mit Diracs Abtasten kann, wird dein Ursprungsspektrum in
der Realität noch mit einer si-Funktion bewertet deren Nullstellen und
damitg die Breite der Hauptkeule abhängig von der Haltzeit sind.

So ich hoffe, ich habe mich da  nicht irgendwo falsch erinnert, wenn
doch sollte es hier genung Leute geben, die das wieder gerade rücken.

Gruß

von Björn (Gast)


Lesenswert?

upps
habe mich ja böse vertippt am Anfang muss es ja heißen Abtasttheorem f
< fg/2 !
Und noch ein kleiner Zusatz zu der Bewertung mit der si-Funktion
(Stichwort Formfilter). Diese Funktion bewertet ja nicht nur das
Nutzspektrum, sondern auch alle anderen periodischen Spektrallinien.
Das bedeutet, das die periodischen Wiederholungen bei fg-f etc. schon
deutlich durch das Formfilter gedämpft werden je länger die Haltezeit
wird.
Wenn du Matlab hast, kannst du das ja mal schnell nachmessen.

von Erik (Gast)


Lesenswert?

Danke Björn!
Ich hatte das anders in Erinnerung aber ich vertraue mal deiner
Kompetenz.
Wie würdest du mein Problem lösen?!

von Till (Gast)


Lesenswert?

Da müsste man dein Problem erst mal genau verstehen. Du versorgst den 16
Bit DAC mit 8 Bit Datenworten bei 44kHz ? nach meiner Erfahrung klingt
ein 16 Bit DAC mit 16 BIT Datenworten ohne oversampling und ohne
nennenswerte Filterung prima - desseiden die Verstärkerkette dahinter
erzeugt massiv IMD. Möchte es mit 8 Bit einfach schlecht klingen weil
das ein bischen wenig Informationstiefe ist? Oder gibts du ihm schon 16
Bit, allerdings nur durch ein paralleles 8 Bit interface? (welcher Audio
- DAC hat NICHT I2S oder ähnliches serielles) Wie sieht die
Ausgangsstufe hinter dem DAC aus? ist es ein I-out oder ein V-out Typ,
wie wandelst du ggf. I zu V?


welche DAC ist es?

von Erik (Gast)


Lesenswert?

Ich füttere den DAC mit jeweils 2 Bytes also 16 Bit. Es ist ein V out
DAC. Das Ausgangssignal gebe ich dan i den Hochpass 3. Ordnung, welcher
mittels 2 OPV's und 3 C's aufgebaut ist, hat eine Grenzfrequenz von 42
kHZ.
Wie gesagt, Musik tönt io, aber ein Gong oder Klavier Signal schei....

von Erik (Gast)


Lesenswert?

Der DAC nennt sich AD660
Ald ADC verwende ich einen ADS7807

von Till (Gast)


Lesenswert?

Das Filter wird man wohl eher bei 20 kHz als bei 40 auslegen, sonst kann
man es sich eher sparen. Klingt es denn wenn du einfach mal das Signal
vor dem Filter abgreift genauso schlecht?

Der DAC ist ja nicht für Audio gedacht, er wird also eher in Richtung
hohe Temperaturstabilität, geringe long term drift etc. gebaut sein.
Hat der DAC einen deglitcher? Wenn nicht produziert er doch eh noise im
Frequenzbereich den du nicht filtern weil du ihn hören willst.

Wie wäre es mit ersatzweise mal einem Audio DAC?

von Erik (Gast)


Lesenswert?

Sorry, verschrieben, die grenzfrequenz liegt bei 23kHz!
Ein echter Audio Dac wäre wohl die Lösung aber die haben alle ein
Seriell interface und die Datenübertragung dauert einfach zu lange da
ich nebenbei noch ein Haufen Andere Dinge tun muss!
Was ist ein deglitcher?!

von Till (Gast)


Lesenswert?

schau doch mal hier ab seite 9 an:

http://www.analog.com/UploadedFiles/Application_Notes/3802616398400AN-313.pdf

soweit ich das verstehe haben Audio DACs irgendeinen deglitcher, mit
demselben wird aus bei der synthetisierung des Signals auftretender THD
anharmonische Verzerung gemacht, die sich da sie bei als vielfache der
samplingrate auftritt ausfiltern lässt. Mit glitches hast du aber halt
Anteile die innerhalb des Spektrums < 20kHz sind, und somit nicht zu
filtern. Dein  instrumentation DAC ist für den Anwendungsfall doch eh
sündteuer und zu schade (?) Ich glaube TI hat mit dem PCM54/55 eine
parallel input audio DAC. Ich würde versuchen einen billigeren TDA1543
oder 1541 zu nehmen und das serialisieren der Daten wenn der MC es
nicht schafft halt mit logik oder einem weiteren MC zu erledigen.

Nach meinen Erfahrungen kann man bei IMD unempfindlichen Verstärkern
gänzlich auf Filterung verzichten, ein Lautsprecher und auch das Ohr
machen sicher einen ganz guten Tiefpass bei unterhalb 20kHz. Wenn du an
der Stelle weiteroperieren möchtest lass doch mal die OPs weg, nimm
falls die Ausgangsipedanz wichtig ist einen sourcefolger, und als
Filter davor und dahinter ein RC Glied.

von Erik (Gast)


Lesenswert?

Dankeschön!
Ich werde mir mal ein passender adc und dac für audio suchen und halt
noch ein Uc verwenden der mir das Serialisieren übernimmt!
Die Messwandler die ich jetzt verwende sind wirklich verdammt teuer
:-)
Kennt jemand ein gutes IC wo ADC und DAC drin sind?!

von Stefan Kleinwort (Gast)


Lesenswert?

Der M16C24 von Renesas hat ein serielles Audio-Interface eingebaut. Von
Glyn gibt (gab?) es ein Eval-Board dazu. Der mc hat übrigens auch USB
onboard.

Audio ADC und DAC in einem Gehäuse - suche mal nach Audio-Codecs. Z.B.
von AKM, aber auch vielen anderen ...

Stefan

von Erik (Gast)


Lesenswert?

Danke für den Tip. Bin mittlerweile selbst auf den AD1845 gestossen, ein
Audio-Codec.

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.