Immer Einschaltplopp: kann jemand mir eine Bestätigung geben?

OP #2100783
Lesenswert?
• ▲
▼
Hallo, Leute!

Ich überlege immer, wie ich den Einschaltplopp meines Weckers wenigstens 
reduzieren kann...

Heute habe ich zufällig in der Dokumentation des VS1011e dieses 
Paragraph gelesen:
1
9.5 Play/Decode
2
This is the normal operation mode of VS1011e. SDI data is decoded. Decoded samples are converted to analog domain by the internal DAC.
3
If no decodable data is found, SCI HDAT0 and SCI HDAT1 are set to 0 and analog outputs are muted.
4
When there is no input for decoding, VS1011e goes into idle mode (lower power consumption than during decoding) and actively monitors
5
the serial data input for valid data.

Also, verstehe ich richtig, daß wenn ich mit dem Abspielen fertig bin, 
wird der Analogoutput auf 0V gesetzt?

Wenn ja, konnte es dann das Problem des Einschaltplopps sein, richtig?

Zur Zeit, in meinem Code, bevor ich den Verstärker wieder laut schalte, 
warte ich ein paar Millisekunden, und gleichzeitig schicke einfach 0 dem 
VS1011e:
1
// Laut Doku, soll man den vor dem Abspielen immer setzen!
2
  vsSetClock();
3
// Dazu setze ich die Lautstärke, denn ansonsten (bei Knopfbetätigen) wird nicht gesetzt!
4
  vsSetVolume(currentVolume);
5
// Und nun ein bißchen stumme Daten als Init...
6
  for(i = 0; i < 2048;)
7
  {
8
    if(bit_is_set(VS_PIN, VS_DREQ_PIN))
9
    {
10
      vsSendData(0);
11
      i++;
12
    }
13
    displayCurrentTime();
14
  }
15

16
  tdaLoud();

Meint ihr, ich warte eine zu kurze Zeit? Zwischen dem VS1011e und dem 
Verstärker (TDA1554q) gibt es zwei 100nF Kondesatoren (ein pro Kanal).

Ich hätte kein Problem, nach der Schleife und vor der Funktion 
"tdaLoud()" noch eine Wartezeit (_delay_ms(500) zB?) hinzuzufügen, aber 
wenn ich nix schicke, wird bestimmt auch der MP3-Decoder wieder in "idle 
mode" gehen, richtig?

Soll ich einfach diese Schleife verlängern, bzw. so lange 0 schicken, 
bis zB 500mS vergangen sind?
Meint ihr, es konnte helfen?

Dazu: meint ihr, daß "0" eine "decodable data" ist? In der Dokumentation 
ist diese Schleife schon als Beispiel gegeben, wenn man zB vor einem 
Software-Reset warten will.

Ich freue mich auf eure Meinungen!
Luca Bertoncello

Antwort schreiben

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.

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.