[V] PCM3070 DSP Prototyping Boards

OP #3799815
Lesenswert?

Hallo Community!

Ich möchte hier 3 Prototyping Platinen für den DSP PCM3070 von Texas 
Instruments verkaufen!

Meine Version ist mit der von "Borsty Bürste" kompatibel.

Preis: 5€ pro Stck. (inkl. Versand)


mfg
Maximilian


Falls interesse an den Bauteilen besteht, kein Problem, hab alles auf 
Lager.
#3800510
Lesenswert?

Hi Maximilian,

wolltest du nicht SPI rausführen? Das sind ja 1:1 Kopien von meinen 
Platinen, abgesehen vom fehlerhaften Bestückungsdruck. Wieso hast du 
nicht gleich den 12.288MHz Oszillator mit drauf gepackt wenn du es eh 
schon neu machst? Das war an meinem Layout eigentlich das nervigste 
Problem (steht auch in meinem Originalthread).

Zu deiner Frage: Selbstverständlich kannst du den PCM3070 über I2S 
deines Arduinos steuern. Du musst nur aufpassen dass die Pullups auf 3V3 
liegen und nicht auf 5V.

Besser nochmal messen bevor du es anschließt. Ansonsten kein Problem.

EDIT: der Original Thread findet sich hier: 
Beitrag "[V] Verkaufe PCM3070 DSP Boards"
#3800537
Lesenswert?

Du hast in jedem digitalen Audiosystem einen Masterclock. Aus diesem 
teilt sich dann der Wordclock, Bitclock, usw. herunter. Manche Geräte 
können den Masterclock selbst erzeugen, andere berechnen ihn auf Basis 
des Bitclocks. Dieser IC braucht ihn aber (wie die Meisten anderen Codes 
auch) extern zugeführt.

Als ich die PCB's erstellt habe war ich der Meinung dass man diesen 
Masterclock nur braucht wenn man auch digitale Signale verarbeiten 
möchte. Leider wird der aber intern auch für den AD / DA Wandler 
benötigt. Also brauchst du den Clock auch bei Analog in / Analog out.

Sprich der IC arbeitet nur wenn man Masterclock Pin ein Takt mit 12.288 
Mhz anliegt. (daher ergibt sich auch die Samplingrate von 48kHz -> 48kHz 
* 256 = 12.288Mhz).
OP #3800567
Lesenswert?

Du hasts ja schon erklärt, oder? Das mit dem Teiler und den 48kHz?

Ich möcht ja jetzt erstmal auf dem PCM via SPI schreiben können!

Der Quarz ist nur für die DA und AD Wandler notwendig, oder?


Ist der Oszillator auf meinem Screenshot ausreichend?
Ich muss doch dann die 3V3 an den Spannungsregler auf der Platine, den 
GND auf Masse und den Out einfach an die WCLK?

Ich hab jetzt Grad eine Software im Programmieren, die die *.cfg Datei 
entweder via RS232 nacheinander auf den Chip sendet (durch den Arduino) 
oder einfach nur eine *.HEX generiert!
Angehängte Dateien:
#3800575
Lesenswert?

Maximilian K. schrieb:
> Du hasts ja schon erklärt, oder? Das mit dem Teiler und den 48kHz?

Naja da gibt es schon noch einiges mehr zu erklären und lernen.

> Ich möcht ja jetzt erstmal auf dem PCM via SPI schreiben können!

Das wundert mich ja, die SPI Schnittstelle hast du ja gar nicht 
herausgeführt. Willst du jetzt I2C oder SPI verwenden?

> Der Quarz ist nur für die DA und AD Wandler notwendig, oder?

Nein, lies mal bitte meinen Post von vorher nochmal.

>
> Ist der Oszillator auf meinem Screenshot ausreichend?

Ja.

> Ich muss doch dann die 3V3 an den Spannungsregler auf der Platine, den
> GND auf Masse und den Out einfach an die WCLK?

Wieso WCLK? Überleg mal nochmal ob es nicht auch ein anderer Clock sein 
könnte ;-)

> Ich hab jetzt Grad eine Software im Programmieren, die die *.cfg Datei
> entweder via RS232 nacheinander auf den Chip sendet (durch den Arduino)
> oder einfach nur eine *.HEX generiert!

Welche .cfg Datei? Was willst du mit einer Hex? Aber ok :) Cool :)
#3800629
Lesenswert?

Maximilian K. schrieb:
> Die config datei, die man oder PurePath Software erstellt mein ich!
>
> Wie bringst du die auf deinen PCM?

Achso, oh Gott... fang erstmal klein an. Im Datenblatt sind ein paar 
Befehle aufgeführt um grundlegend das Teil zum laufen zu kriegen.

Übrigens lädt man keine Programme in den PCM3070, man konfiguriert 
diesen nur und setzt die Register so wie man es möchte.
OP #3801397
Lesenswert?

Hallo!

Also der Oszillator ist bestellt.

Mein anderes Problem jetzt: hab die Platine fertig gelötet und bestückt 
(der PCM3070 wurde durch einem Fachmann eingelötet) und hab statt 2x 
4,7k, 4,7 Ohm verwendet! So jetzt wo ich Jumper 2 Geschlossen hab, hats 
gezischt...

Der Chip ist kaputt, oder?

Kann ich iwie einen einfachen Funktionstest durchführen?
#3801403
Lesenswert?

Maximilian K. schrieb:
> 4,7k, 4,7 Ohm verwendet! So jetzt wo ich Jumper 2 Geschlossen hab, hats
> gezischt...
>
> Der Chip ist kaputt, oder?

Du hast nicht arg viel Ahnung von Elektronik, stimmt's? Nicht bös 
gemeint aber schau dir den Schaltplan doch mal an und sag uns welches 
Bauteil in diesem Fall kaputt geht.

Übrigens: Unabhängig davon, pass auf welchen Jumper du steckst!! Mit den 
Jumpern wählst du die Spannungsquelle für den LDO. Je nachdem was du im 
PCM3070 konfiguriert hast macht's nämlich wirklich "Zisch". Und wenn du 
jetzt zwischen den Zeilen liest dann wird dir auch bewusst dass du den 
PCM3070 in der Tat durch "falsche" bzw. unachtsame Programmierung 
vernichten kannst. Ich spreche aus Erfahrung. Also, wenn es an die LDO's 
geht, egal ob via SW oder via Jumper, immer nochmal checken und das 
Datenblatt prüfen.
OP #3801432
Lesenswert?

Naja sagen wir mal so: mit einem DSP hab ich noch nie was zu tun 
gehabt... aber ich kenn mich schon soweit aus um einige Dinge in Sachen 
Elektronik basteln zu können. Mein letztes Projekt war eine RGB Matrix 
mit WS2803 oder z.b einen Funktionsgenerator.


Datenblatt les ich morgen nochmal durch.

Kannst du mir vielleicht eine einfache "Schaltung" zeigen um zu wissen: 
Ja der PCM3070 spricht mit mir!
OP #3801464
Lesenswert?

Also ich hab bloß kurz den Strom drauf gehabt..., also der Widerstand 
kanns glaub ich nicht gewesen sein... ich Messe ihn morgen aber trotzdem 
nochmal nach, um das auszuschließen. Dann bleibt ja nur der Controller 
noch übrig.


Ich meinte mit Schaltung die Belegung der Jumper, bzw. die Geschichte 
mit den Oszi.

Beim I2C passiert folgendes in Dauerschleife:
-Start
-Adresse (0x30)
-Register (0x00)
-Stop
-Start Read
-Adresse (0x30)
-Warten bis 1 Byte gesendet wurde
-ausgeben auf Terminal

Wenn alles funktioniert muss ich doch den Arduino nur mit folgenden Pins 
auf dem Board verbinden: SCK, SDA, GND, +5V.

Was ist jetzt mit den Jumpern, bzw. MCLK?
#3801466
Lesenswert?

Maximilian K. schrieb:
> Dann bleibt ja nur der Controller
> noch übrig.

Wieso? Du hast durch den 4,7 Ohm Widerstand etwa 700mA bzw. das was der 
LDO hergibt durchgejagt. Das sind etwa 2W. Kurz hält er es aus, wir 
reden hier aber von Millisekunden.

Wieso sollte der PCM3070 dabei schaden nehmen?

> Ich meinte mit Schaltung die Belegung der Jumper, bzw. die Geschichte
> mit den Oszi.

Welches Oszi? Welche Geschichte?

> Beim I2C passiert folgendes in Dauerschleife:
> -Start
> -Adresse (0x30)
> -Register (0x00)
> -Stop
> -Start Read
> -Adresse (0x30)
> -Warten bis 1 Byte gesendet wurde
> -ausgeben auf Terminal

Kriegst du ein Ack oder nicht? Scheinbar schon, aber so ganz schlau 
werde ich daraus nicht. Welches Terminal meinst du denn? Ganz schön wirr 
alles.

> Wenn alles funktioniert muss ich doch den Arduino nur mit folgenden Pins
> auf dem Board verbinden: SCK, SDA, GND, +5V.

??

> Was ist jetzt mit den Jumpern, bzw. MCLK?

Die Sonnen sich in der Karibik. Was soll mit denen sein?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren