mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Problem mit VS1053 (nur einmal Sinus-Test möglich)


Autor: Tom (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich habe einen VS1053 auf dem Breakout-Board von Olimex an einen 
AT90USB1287 (auf AT90USBKey) angeschlossen und ein etwas merkwürdiges 
Problem: Das Abspielen von MP3 klappt noch nicht, weswegen ich erstmal 
nur den Sinus-Test ausprobieren wollte. Diesen kann ich einmal aufrufen, 
danach kommt kein Ton mehr heraus aus...

Die Bibliothek für den VS1053 basiert auf dem Code von Stephan Watterott 
und wurde eigentlich nur um den Code für das Sinus-Signal ergänzt. In 
meinem Code finden sich nur noch die Initialisierung von 
SPI-Schnittstelle und VS1053
/* Configure SS, MISO, MOSI and SCK */
DDRB   |=  (1<<PB0) | (1<<PB1) | (1<<PB2);
DDRB   &= ~(1<<PB3);
PORTB  |=  (1<<PB0);

/* Configure SPI interface */
SPCR = (1<<SPE) | (1<<MSTR);

/* Initialize VS1053 chip */
vs_init();

/* Sinus test */
vs_sine_test(126);

Ich gehe mal davon aus, dass meine Hardware in Ordnung ist, da der 
Sinus-Test ja einmal abläuft. Die einzelnen Pegel habe ich mit meinem 
Logic-Analyzer überprüft und kann da auch keinen Fehler finden.

Die Dataflash-Bausteine auf dem AT90USBKey sollten Ruhe geben, da ihre 
CS-Signale auf 1 gelegt wurden.

Vielleicht hat ja jemand eine Idee und kann mir helfen.

Gruß

Tom

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gerade gesehen: Es ist natürlich das Break-Out-Board von Sparkfun.

Autor: Tom (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Im Anhang sind die Screenshots des Logic-Analyzers, vielleicht sieht 
dort ja jemand Unstimmigkeiten. Die Init0 zeigt das Reset-Signal und 
danach drei Datenpakete, die in den Dateien Init1-3 detailliert sind 
(erst Mode setzen, danach Clock und dann Volume).

Ich bin leider noch nicht weitergekommen mit dem Problem.

Autor: Andreas Watterott (andreasw) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du mal probiert die Pausenzeiten im Init zu verlängern?

Zum Testen versuche auch mal das Status-Register auszulesen.

Gruß
Andreas

Autor: G. S. (varda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe heute auch ein Sparkfun Board verbaut. Ab und an gab es auch 
Probleme damit. Fehler traten nur sporadisch auf. Entweder starkes 
Brummen vorhanden oder gar kein Ton. Bei Berühen des VS1053 verstärkte 
sich dieses Verhalten.

Kurzum - die Lösung

Auf dem Board ist der Pin 32 (XTEST Reserved for test, connect to IOVDD) 
nicht verbunden. Laut Datasheet muss dieser PIN mit IOVDD verbunden 
werden. Mit dünnen Fädeldraht und unter der Lupe Verbindung gezogen - 
jetzt ist alles in Ordnung.

Manche VS1053 sind empfindlicher als andere. Einige gehen, einige nicht. 
Diese Erfahrung habe ich gemacht!

Autor: G. S. (varda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PIN 32 direkt mit PIN 31 verbinden geht auch - sieht schöner aus! CPWR 
wird als HIGH Pegel an PIN 32 erkannt. Praxis und Datasheet stimmen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.