Ich habe mir hier diesen I2S Verstärker auf einem Breakout-Board gekauft: https://datasheets.maximintegrated.com/en/ds/MAX98357A-MAX98357B.pdf Im Datenblatt steht, dass er z.B. 16kHz und 30kHz sampling rate unterstützt. Eigentlich ist das I2S interface ja synchron, warum soll nicht eine beliebige Rate funktionieren? Hat jemand eine Idee?
Seite 16: "LRCLK ONLY supports 8kHz, 16kHz, 32kHz, 44.1kHz, 48kHz, 88.2kHz and 96kHz frequencies." Auf Seite 6 stehen die erlaubten Abweichungen für diese Frequenzen. Ich vermute mal, dass andere Frequenzen auch funktionieren, aber dass der Chip nicht notwendigerweise den richtigen digitalen Filter (S. 17) auswählt.
Beitrag #4981493 wurde vom Autor gelöscht.
Danke. Es könnte also sein, dass er eigentlich funktioniert, aber nicht ganz so gut klingt. Etwas bedenklich finde ich den Satz auf Seite 19: >Do not remove LRCLK while BLCK is present. >Removing LRCLK while BCLK is present can cause >unexpected output behavior, including a large DC output >voltage. Das hört sich fast so an, als wenn es zu Schäden kommen könnte, wenn ein Softwarefehler auftritt.
Hier gibt es eine Anleitung und Breakout-Board von Adafruit zu dem Verstärker: https://www.adafruit.com/product/3006
Und hier das Beispiel, wie er an einen Arduino Zero angeschlossen wird. https://www.arduino.cc/en/Tutorial/ArduinoSoundWavePlayback ( Ich poste die Links nur, weil ich diese Threads immer wieder als Wissenssammlung benutze und dann schnell die Informationen wieder zusammen kriege )
Markus schrieb: > Und hier das Beispiel, wie er an einen Arduino Zero angeschlossen wird. > > https://www.arduino.cc/en/Tutorial/ArduinoSoundWavePlayback > > ( Ich poste die Links nur, weil ich diese Threads immer wieder als > Wissenssammlung benutze und dann schnell die Informationen wieder > zusammen kriege ) Dir ist bekannt, dass es am PC Programme wie Notepad gibt? Also solche, wo man Text aufschreiben kann?
>Dir ist bekannt, dass es am PC Programme wie Notepad gibt? >Also solche, wo man Text aufschreiben kann? Können die andere Leute auch lesen, wenn sie bei mir auf dem Computer liegen?
Die Lernkurve beginnt: es funktioniert nicht. So wie es aussieht, geht der Verstärker in den sogenannten "TDM" mode, wenn die Flanken auf dem LRCLK nicht gleich lang sind ...
Hat den Codec schon mal jemand erfolgreich benutzt? Er scheint gerne beim Raspi verwendet zu werden.
Markus schrieb: > Hat den Codec schon mal jemand erfolgreich benutzt? > Er scheint gerne beim Raspi verwendet zu werden. Welche Antwort ergibt sich wohl aus Deiner letzten Aussage auf die Frage?
Die Zusammenfassung dieses Threads: Der MAX98358A braucht einen sehr stabilen Takt, da er einen Auto-Detection-Modus hat, mit dem er sich konfiguriert. Ein STM32F103 ohne I2S Schnittstelle ist für die Ansteuerung dieses Chips nicht geeignet, es ist dem Chip kein Ton zu entlocken. Mit einer I2S-Schnittstelle wie sie z.B. beim STM32F407 vorhanden ist, funktioniert der Chip problemlos: Beitrag "Re: STM32F407 Black und Arduino"
Markus schrieb: > Hat den Codec schon mal jemand erfolgreich benutzt? > Er scheint gerne beim Raspi verwendet zu werden. Habe ein Board von Adafruit: es knackt immmer hörbar und damit störend, wenn I2S beim Abspielen anläuft (je nach Player und ohne ALSA-Softmixer auch zwischen Audiodateien). CLK startet (auch nicht schön: mit kurzer Unterbrechung) vor LRCLK und verursacht vermutlich je nach Timing unterschiedlich starkes Knacken. Wahrscheinlicher Zusammenhang: Markus schrieb: > Etwas bedenklich finde ich den Satz auf Seite 19: >>Do not remove LRCLK while BLCK is present. >>Removing LRCLK while BCLK is present can cause >>unexpected output behavior, including a large DC output >>voltage. > > Das hört sich fast so an, als wenn es zu Schäden kommen könnte, wenn ein > Softwarefehler auftritt. Es klingt auch so (aber noch deutlich stärker als das Knacken). Die I2S-Spezifikation scheint Beginn und Ende der Übertragung gar nicht zu definieren. Abhilfe: - Kernel-Treiber ändern - CLK-Reihenfolge ändern (unwahrscheinlich) - I2S-CLKs nicht abschalten (knackt nur einmal beim Einschalten) - dauernd "nichts" abspielen (knackt nur einmal beim Einschalten) - Board und Treiber mit STDBY-Unterstützung verwenden (Treiber existiert, muss aber selbst kompiliert werden)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.