mp3-Player mit Atmega8 und vs1011e spielt nicht

Gast #2299431
Hallo,

ich versuche schon seit einiger Zeit den mp3-Player von Nik Bamert 
nachzubauen. siehe:

http://mp3.nikbamert.com/mega8/index.php?page=schaltplan

Dazu habe ich die obige Schaltung aufgebaut. Da ich diese komplett mit 
3,3V betreibe brauche ich auch keinen Pegelwandler. Ich verwende jedoch 
einen vs1011e und er in seinem Projekt einen vs1001k als Decoder. Die 
Schaltung ist momentan noch etwas minimalistisch gehalten… (ein paar 
Taster und ein Display werde ich später noch anschließen)

Der Sinustest des vs1011e funktioniert bei mir auch. Jedoch bin ich 
nicht in der Lage eine mp3-Datei von der SD-Karte abzuspielen und 
mittlerweile am verzweifeln. Es kommt nur beim Einschalten und Reset ein 
leises Knacken.

Daher: Kann jemand einen Fehler in meiner Schaltung oder in dem von mir 
leicht veränderten Programmcode entdecken?

Schon im voraus vielen Dank für eure Mühe! ;)
Angehängte Dateien:
Gast #2301150
Hi!

Erstmal Danke für die schnelle Antwort!

Einen 10uF Kerko hab ich zur Zeit nicht im Haus. Ich habe daher erstmal 
zwei 1uF Kerkos parallel zw. VCC und GND geschalten. (reicht das auch?) 
Der vs1011e spielt zwar immer noch nicht, aber ich glaube die Schaltung 
ist etwas empfindlicher geworden. Wenn ich z.B. die Hand darüber halte 
fängt der Lautsprecher an zu Knacken...

Ich vermute meinen Fehler momentan in den Mode-Einstellungen des Vs1011e 
in der vs1001.c, bin mir aber nicht sicher was ich ändern muss.

Ich bin für jede Hilfe dankbar :)
Gast #2301408
ja, ok, das war auch nur zur grundsätzlichen Beschaltung angemerkt.
Hast du denn mal die Datenblätter der beiden MP3-Decoder miteinander 
verglichen? Vor allem was die Registerbezeichnungen, Adressierungen etc. 
angeht.
Gast #2301439
Du solltest auf jeden Fall diesen Hinweis im Datenblatt beachten:
7.2.2 VS1001 Compatibility Mode
This mode is active when SM SDINEW is 0 (default). In this mode, DCLK, 
SDATA and BSYNC are active.
Gast #2301453
Ja, das Datenblatt des vs1011e hab ich gelesen und den Sinustest hab ich 
mir auch nach der Anleitung der zugehörigen Application Note 
zusammengebaut.

Verglichen habe ich die Datenblätter auch. Wenn ich das richtig 
verstanden habe benötigt der vs1001k noch ein BSYNC-Signal, welches 
während einer Datenübertragung auf Low gezogen werden muss. Der vs1011e 
braucht dieses jedoch nicht mehr und kann mit Hilfe von 2 CS-Leitungen 
in einem neuen Modus angesteuert werden.

Da der Code jedoch für diesen älteren Chip geschrieben wurde, würde ich 
gerne den Kompatibilitätsmodus des vs1011e nutzen, da ich dann den 
Treiber nicht weiter ändern müsste. Wenn ich aber versuche diesen zu 
Nutzen ist kein Ton zu hören. Deshalb hatte ich jetzt Testweise den 
neuen Modus des vs1011e genutzt, was leider auch nicht funktioniert hat.

Mit:

buf[0] = 0x0000;
vs1001_write(0,1,buf);

ist doch der Kompatibilitätsmodus ausgewählt, oder?
Gast #2301477
Ok, ich habe jetzt in meinem Programm den Kompatibilitätsmodus (siehe 
oben) ausgewählt und die 100KOhm Widerstände an Pin 2 und 3 des vs1011e 
entfernt und stattdessen DCLK (Pin 2) mit SCLK und SDATA (Pin 3) mit SI 
verbunden. Ist das so richtig?

Es kommt leider trotzdem noch kein Ton.
#2339597
Funktioniert die Schaltung jetzt so wie sie in der letzten Version 
gepostet wurde? Möchte soetwas im mom nämlich auch machen und bei diesem 
Schaltplan blicke ich mehr durch als bei dem originalen auf der Seite, 
da hier auch noch der ATMega8 mit aufgeführt ist :)
Gast #2361500
Kann ich leider noch nicht sagen. Es werden zumindest noch keine mp3s 
abgespielt.
Ich bin aber noch auf Fehlersuche ;)
Ich werde Schaltplan und Code posten wenn ichs zum Laufen bekomme.
Gast #2615638
So, der mp3-Player läuft jetzt. (auch wenn es ne weile gedauert hat ... 
)
Ich hatte meine Schaltung nur als Freiluftverdrahtung aufgebaut und 
deswegen kam es immer zu Sendefehlern. Ich hab mir jetzt eine 
ordentliche Platine ätzen lassen und es läuft alles.
Die letzte Schaltung sollte so funktionieren. Allerdings habe ich noch
- ein LCD und ein paar Taster an den uC angeschlossen
- die UART-Pins herausgeführt
- einen ATmega32 und einen VS1001k genutzt
Außerdem hab ich ein anderes Dateisystem genutzt als das oben gepostete, 
weil es mit dem ein paar Probleme gab.
Wenn Interesse besteht kann ich auch noch den aktuellen Schaltplan hier 
reinstellen (der is nur auf meinem Notebook und das hab ich grade nicht 
hier)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.