Hallo.
Ich habe mir einen Mp3-Player auf der Basis des VS1003 gebaut. Der geht
soweit auch ganz gut - wäre nur die eine Sache nicht:
Der Ausgang rauscht wie blöde. Es ist zwar im Normalbetzrieb nicht
hörbar, jedoch wenn die Musik sehr leise ist oder das Ende des Liedes
erreicht wurde sehr störend.
AVDD und CVDD liegen gemeinsam an 2.55V. IOVDD wird mit den 3.3V des
ATega128 versorgt. Die Verorgungsspannungen sind mit jeweils 10µF und
100nF angeblockt. An RCAP war ein 1µF Tantal dran. Aber den hab ich
wieder abgemacht und duch andere ersetzt. Nix hat gegen das Rauschen
geholfen. Auch ein Entfernen des RCAP-Kondensators hat keine
Verbesserung bzw Verschlechtung zur Folge.
Ich hab langsam keine Idee mehr, woher das Rauschen kommen könnte.
Ich vermute die Tatsache, das AVDD und CVDD zusammen sind ist nicht
optimal. Ist aber nicht mehr änderbar. Wobei der Rauschanteil, der
digital klingt nahezu vernachlässigbar ist.
Ich will aber auch nicht glauben, dass das der nornmale DAC-Fehler bzw
der Kopfhörerverstärker ist, der da so derartig rauscht.
Vielleicht sollte ich mal die Kopfhörer nicht über den GBUF-Pin
anschließen?
Hat jemand von Euch damit Erfahrung oder kann mir generelle Tips geben?
MFG
Ih verwende den gleichen IC und bei mir funktioniert alles tadellos. Bei
meinem Prototypen mit dem VS1002 hatte ich jedoch das gleiche Problem.
Wie ich es dann schlussendlich beseitigt habe, kann ich nicht genau
sagen jedenfalls habe ich folgende Dinge beim Layout eingehalten und
diese Massnahmen hatten sicher einen sehr großen Einfluss auf die
Audioqualität:
# Stützkondensatoren (10nF bis 100nF) für jeden Versorgungspin
# Leitungslängen der Stützkondensatoren zu Masse und dem Versorgungspin
so kurz wie möglich halten um Leitungsimpedanzen zu vermeiden.
# Getrennter Linearregler für AVDD, CVDD und IOVDD. AVDD muss mindestens
2.6V sein!!!!
# Bei Multilayern solltest du Flächen für AGND, DGND und den einzelnen
Versorgungsspannungen machen.
# AGND und DGND trennen. Kannst du an einem Punkt mittels eines 0R
Widerstandes verbinden.
# Ferritinduktivitäten bei sämtlichen Versorgungszweigen. Minimiert
Störaussendung und Störempfindlichkeit.
# Einen fetten Stützkondensator (100uF) für jede Versorgungsspannung.
# Kein Routen digitaler Signale durch den analogen Pfad.
# Saubere Versorgungsspannung. Verwende Linearregler mit geringem
Rauschen und geringen Toleranzen. Ferrit am Eingang und Ausgang des
Reglers.
# Leitungsbreiten so groß wie möglich machen.
# Schirmung der Audioausgangssignale vom IC bis zum Klinkenstecker
mittels analoger Masse schirmen (hab ich nicht gemacht, aber wäre auch
ein Vorschlag).
Wenn du noch Tipps brauchst, dann meld dich einfach.
http://www.poms-engineering.at/images/projects_mp3_player_7.jpg
Also die Versorgungsspannungen kann ich nicht mehr ändern. generell
lässt sich am Layout nix mehr ändern - das Teil ist ja quasi fertig. Was
noch machbar ist: Ich kann noch nach belieben Kondensatoren irgendwo
anbringen. Wobei ich generell erigentlich nur wenig platz habe. Die
2.65V für CVDD und AVDD erzeuge ich über eine Diode, über die ich von
den 3.3V ~0.6V abfallen lasse. Die Massen kann ich auch nicht mehr
trennen - ist alles eine Fläche. Wobei auch im DS steht "connect AGND
and DGND as close together as possible" (oder so) - Nach einem
Massebrummen hört sich das eh nicht an. Wenn ich mein Amperremeter auf
die Massefläche (wahllos) halte fließen max 3µA über das Messgerät -
also eigentlich so minimal, dass es als OK durchgehen sollte.
Für Feritkerne hab ich nur beschränkt platz. Wie groß müssen denn die
Spulen sein? (wndng). Bisher nützen die Blockkondensatoren nicht viel.
Die Unterdrücken lediglich den digitalen Rauschanteil - und auch dass
nicht wirklich gut.
Gibts noch andere Möglichkeiten die man ausprobieren könne, die nicht
das Layout andern?
MFG
Netten Support haben die da :)
Albrecht Gündel wrote:
>But I have an strong noise on my phones. Normally it issnt hearable but when the
SCI_VOL-Register is near 150 (nearly silence) the background noise becomes louder
than the music itselfs.
>
Hi,
The signal path is 16 bits and the DAC is 18 bits. There is -6dB and
-12dB attenuation in hardware, but the rest must be done to the signal
by software. When volume register is 150 = -75dB, there is -63dB digital
attenuation required (75-12=63), leaving only about 5.5 active bits to
the 16-bit data.
The chip is not designed for that large dynamic range.
>I reduced the noise by connecting the LineIn-Input to the virtual GroundBuffer of
the Phones (additional to the normal connections that were shown in the
Datasheet). Are there still any other known sources for the noise that is still
there?
>
Well, I didn't know about this one even!:-)
If you are not using the line input or mic input, write 0xc01e to
SCI_WRAMADDR, then 0 to SCI_WRAM. This clears the MODU_DIV register and
disables the AD converter. (Due to a firmware bug the ADC is not off by
default like it should.) This should also save a couple milliamperes on
AVDD.
If you do not need such a large dynamic range, attenuate the signal only
after VS1003 has generated it with a smaller attenuation.
If you need a large dynamic range, one solution is an external volume
control chip.
>Kind Regards from Germany.>Albrecht Gündel.>
-Pasi Ojala
VLSI Solution Oy
Aber so richtig zufrieden bin ich da immernoch nicht.
was soll der R bringen?
MFG
Da mich das ganze hier nervt und ich keine digitalen Störngen mehr im
Ausgang hören kann ist das Restrauschen wahrscheinlich duch den
Kopfhörerverstärker und den DAC.
Ich brauche daher einen Widerstand, den ich Digital ein und ausschalten
kann.
Meine Idee: Einen Modfet nehmen und duch einen Spannungsteiler die
Gatspannung so einstellen, dass das Signal auf 1/4 geschwächt wird. ->
1/4 des Rauschens.
eine Seite des Spannungsteilers verbinde ich mit einem Pin des AVRs ->
also wahlweise auf + oder -. Damit erreiche ich, das wahlweise die
Gatsannung anliegt oder auch eine volle "+" oder "-" Spannung. Bisher
bekomm ich aber nur geknackse duch den Mosfett durch. :(
Hat jmd ne Idee?
Hallo VS1003-Fans,
hat jemand von Euch Audio-Aufnahmen mit dem Teil gemacht? Ich hatte
vorher einen VS1002, da ging es ganz gut (ADPCM, keine hohe Qualität
aber verständlich). Man kann die Qualität abschätzen, wenn man das Audio
Feedback anhört, das der Chip auf den Ausgängen generiert. Das geht auch
beim VS1003, aber seltsamerweise nur mit bestimmten Clock-Einstellungen
(bei Clock Multiplikator 2x) Wenn man schneller taktet, kommt so eine
Art zerhackter Mickymouse-Sound als Feedback - seltsam - sollte doch für
das Audio Feedback egal sein, wie schnell der Chip läuft?
Hat jemand von Euch diesen Effekt beobachtet? Naja ich werde auch mal
den (wirklich guten) Support befragen.