Hallo, ich versuche zurzeit erfolglos den CS43L22 auf dem STM32F4Discovery-Board dazu zu bringen, ein Sinussignal vom DAC des STM32F4 mit einer Frequenz von 250Hz und 0 bis 2,5V auf der Headphonebuchse verstärkt auszugeben. Der CS43L22 wird per I2C korrekt initialisiert und danach wird das Signal gesendet, das auch am Pin PA4 ausgegeben wird. Am Kopfhörer ist jedoch nichts zu hören. Das Waveplayer-Projekt von ST habe ich bereits erfolgreich getestet. Hat jemand eine Idee, warum der Analog Passthrough nicht funktionieren könnte? Könnte der analoge Eingang durch das versehentlich Anlegen von 2,95V beschädigt sein? Braucht der CS43L22 trotz der anderen Ansteuerung MCLK? Muss die Sinuswelle auch im negativen Bereich sein? Ich hoffe, jemand kann mir behilflich sein. Thomas
Haste Register 7.7 Passthrough x Select: PassA (Address 08h), PassB (Address 09h) Seite 42 im Manual vom CS43L22 richtig gesetzt ?
Thomas W. schrieb: > Braucht der CS43L22 trotz der anderen Ansteuerung MCLK? Genau das. Die Taktleitung ist nämlich auch für die Erzeugung der Hilfsspannungen der Verstärker notwendig (charge pump). Siehe Datenblatt Kapitel 4.8 und 4.9 (Initialisierung): "Once MCLK is valid, the quiescent voltage, VQ, and the internal voltage reference, FILT+, will begin powering up to normal operation. The charge pump slowly powers up and charges the capacitors. Power is then applied to the headphone amplifiers and switched-capacitor filters, and the analog/digital outputs enter a muted state." Bitte nach Behebung laufendes Beispiel hier posten :-) Chris D.
reicht dann das abspielen vom Audio-Playback-Sample und DAC parallel und passend gesetztes Register im Codec ?
Jepp. Hauptsache: Takt Man kann auch einfach ne Nulllinie über die I2S ausgeben ;-) Chris D.
Danke für die Antworten ;) Jetzt läuft MCLK (PC7) mit 2 MHz (nachgemessen), aber es tut sich immer noch nichts. Im folgenden beschreibe ich mal grob meinen Programmablauf: Reset (PD4) Low Reset High Register 2: Wert 1 0 153 71 128 50 128 50 0 0 0 MCLK start 4 175 5 129 6 0 32 1 33 1 8 1 9 1 14 192 20 1 21 1 2 158 10 0 39 0 31 15 26 10 27 10 Sinus start Nur MCLK wird momentan für I2S verwendet, d.h. die anderen I2S-Pins können sich in einem zufälligen Zustand befinden. Ich hoffe, jemand findet noch einen Fehler oder etwas Fehlendes. Thomas
Ja, über DMA1, aber der DAC ist auf Stream 5 und ich benutze zur MCLK-Erzeugung I2S3-RX auf Stream 0. Die Signale werden auch erzeugt; das habe ich nachgemessen.
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.