Hallo Leute, habe nun endlich mal den Einstieg in die ARM7 Welt geschafft und habe mir einen TLV320AIC23B an den SSC Port des ARMs getackert. Datenblatt gelesen und Code-Beispiele (von Atmel, und dem MP3-Player auf ARM-Basis hier im Forum) angeschaut. Prinzipiell verstanden habe ich es, und prinzipiell funktioniert es auch. Ich habe (ähnlich wie dem I2S Test im trunk/tag verzeichnis des ARM-MP3-Player SVN Snapshots) einfach eine Rechteck-Wellenform per SSC ausgegeben. Es kommt auch etwas an das mit einer Rechteck-Welle ähnlichkeit hat, allerdings viel grausamer klingt (habe Oberwellen auf dem Signal). Der Codec läuft mit seinem eigenen Quarz auf 12.288 MHz als Master. Der ARM (das AT91SAM7256 Header Board aus dem (ehemaligen) Shop hier) läuft in dem falle als Slave (erzeugt also keine Takte und Signale außer eben TD). Ich habe am Scope geschaut, und die Signale sind soweit sauber (BitClk, LRClk, SDIn und SDOut an TK, TF, TD). Also keine kurzschlüsse oder falsche Pegel oder dergleichen. Das einzige was ich gemacht habe ist das ich für den Codec einen separaten Spannungsregler (3.3V) spendiert habe, damit der 3.3V Regler des Header Boards nicht noch zusätzlich belastet wird, nur denke ich sollte das nicht das Problem sein. Worauf sollte man beim SSC noch achten ? (von der Konfiguration her). Was mich auch etwas wundert (bzw. was ich nicht ganz verstehe) : Warum kann ich mit dem Empfänger des SSC nur 1 Kanal einlesen (wenn ich das Datenblatt richtig verstanden habe, aber selbst die App Note schreibt ja das nur 1 Kanal lesen geht) ? Die Register sind ja 32 Bit breit, und wenn ich eh nur mit 16 Bit sample, dann sollten doch 2 Wörter Platz in dem RHR finden, oder ? Hoffe mir kann jemand helfen. Es sind etwas wage Informationen, und ich habe das Board z.z. leider nicht zur Hand (erst morgen abend wieder) um zu Testen, aber vllt. hat ja der eine oder andere auch Problem(chen) gehabt den Codec mit dem SSC ans laufen zu bringen. Gruß Rene PS. Den Codec als Slave laufen zu lassen habe ich auch schon versucht, allerdings da wohl noch einen Fehler in der SSC-Konfiguration. Werde es morgen nochmal versuchen. Kann ja nicht so schwer sein. Nur wäre es schön wenn es auch als Master klappt, und da dies hier schon einige gemacht haben frage ich erstmal dahingehend.
kurze info : ich habe es zum laufen gebracht. Der Codec läuft als Master und taktet den ARM. Die Daten gehen sauber raus. Was noch etwas merkwürdig ist, ist das bei einem Stereo-Signal das ich ausgebe, einer der beiden Kanäle nur die negative Halbwelle (im falle eines Sinussignals) rausgibt. Der andere Kanal gibt die komplette Welle aus. Was das ist weiß ich nicht. Vielleicht finde ich es ja noch raus.
Hi René, ich beschäftige mich seit paare Tage mit dem SSC. Ich habe vor, der AT91SAM7S64 als Slave zu stellen. Ich will die PCM-Daten von einem Mobile Modul in der AT91 abspeichert und danach über USB am PC abspielen und natürlich auch auf beide Richtung. Ich schaffe es nicht der AT91SAM7S64 als Slave zu stellen dh. ich will nur die Pin : RK, RF, TD und RD benutzen. Wie hast du denn bei deinem Beispiel die Registern RCMR,RFMR,TCMR und TFMR eingestellt? Gruß Hugues
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.