Forum: Mikrocontroller und Digitale Elektronik S/PDIF bei einem SD-Karten-Player nachrüsten


von Dominik S. (x-domi-x)


Lesenswert?

Hallo.

Ich habe so einen SD-Karten-Player: 
http://www.adjaudio.com/ProductDetails.aspx?ItemNumber=1358&MainId=1&Category=23
Dieser hat ausschließlich analoge Audioausgänge.

Meint ihr, währe es mit halbwegs geringem Aufwand möglich, einen 
Coaxialen S/PDIF Ausgang je Kanal nachzurüsten?
Denn die Tonqualität leidet hörbar darunter, wenn das Signal 3x zwischen 
Digital und analog hin und hergewandelt wird.

Zurzeit sieht die Signalverarbeitungskette so aus:
Digitales Medium (SDHC-Karte) -> Digital zu Analog umwandlung (im 
Player) -> Analog zu Digital umwandlung (im AV-R) -> Digitale 
Signalverarbeitung (im AV-R) -> Digital zu Analog umwandlung (im AV-R)

Da würden sich 2 Umwandlungen sparen lassen.

MfG Domi

von Jörg H. (idc-dragon)


Lesenswert?

Wenn du in dem Ding einen separaten D/A-Wandler findest, dann geht das.
Der wird dann höchstvermutlich mit einem I²S-Signal gespeist. An 
selbiges mußt du einen geeigneten S/PDIF-Transmitter anschließen.

Jörg

von Jim M. (turboj)


Lesenswert?

Auf der verlinkten Seite steht:

> S/PDIF digital output for each player

OK..., aber im Manual ist keine Rede mehr davon. Eventuell lohnt sich 
aber eine Nachfrage. Auch in USA darf man IMHO nicht mit nicht 
vorhandenen Features werben.

von Dominik S. (x-domi-x)


Angehängte Dateien:

Lesenswert?

Ich würde mal sagen, ich hab das Biest gefunden, das das Digitale Signal 
zu einem Analogen macht... ein PCM1716E (siehe Bild im Anhang)

Nur was ich wo und wie machen muss um S/PDIF zu erhalten... da habe ich 
ehrlichgesagt keinen Plan. Dafür reicht mein Wissen (noch) nicht.

Würde mich über eure Hilfe sehr freuen ;)

MfG Domi

von Jörg H. (idc-dragon)


Lesenswert?

Na, dann ist hoffentlich nur eine Buchse nicht bestückt oder so.

Auch an weniger vorbereiteten Geräten kann man Glück haben:
Ich habe mal S/PDIF an einem CD-Player nachgerüstet (ist lange her), der 
hatte keine Spur davon, aber das Signal lag an einem unbeschalteten Pin 
von einem dicken Käfer an.
Habe ich mit einem Oszi folgendermaßen gefunden: Kanal 1 an LRCLK vom 
DAC (eines der I²S-Signale), also an die 44,1 kHz dort, Trigger auf 
Kanal 1, dann mit Kanal 2 reihum ein Signal gesucht was dazu synchron 
ist und Datenmuster zeigt.

Jörg

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dominik S. schrieb:
> Ich würde mal sagen, ich hab das Biest gefunden, das das Analoge Signal
> kreiert... ein PCM1716E (siehe Bild im Anhang)

Nun, besorg Dir bei TI (die haben Burr-Brown aufgekauft) das Datenblatt
http://www.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=sbas080&fileType=pdf

Die digitalen Audio-Daten liegen an den drei Pins DIN, BCKIN und LRCIN 
an (Daten, Bittakt und Rechts-Links-Takt).

Jetzt musst Du "nur" noch herausfinden, wie Du aus dieser IIS* (oder 
I2S) genannten Schnittstelle ein S/PDIF-Signal erzeugen kannst.

Das geht z.B. mit diesem Baustein:
http://www.wolfsonmicro.com/products/spdif_transceivers/WM8804/


*) http://en.wikipedia.org/wiki/I%C2%B2S

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Guck mal ins Datenblatt von dem IC von dem der BB seine Signale bekommt, 
da wirste vllt fündig.

von Dominik S. (x-domi-x)


Angehängte Dateien:

Lesenswert?

Vielen Dank für die Schnellen Antworten! ;)

@Jörg H.:
Auf der Platine Sehe ich leider nicht wirklich unbestückte stellen, auch 
keine Stiftleisten, steckkontakte oder ähnliches, das nicht benutzt 
wird.
Ein Oszi hab ich leider nicht. Für nen Schüler ist soetwas ein wenig 
teuer.

@Rufus Τ. Firefly:
Danke für den Vorschlag. Aber ich finde keinen Onlineshop, wo ich den IC 
als Privatkunde kaufen kann. Bei farnel und vergleichbaren kann man nur 
als Firma einkaufen.
Und ich blicke ehrlichgesagt auch nicht so ganz durch, wie ich den IC 
beschalten müsste...

@Martin Wende:
Meines Erachtens nach bekommt der DAC seine Signale von dem im Anhang zu 
sehenden IC.

MfG Domi

von Mw E. (Firma: fritzler-avr.de) (fritzler)


Lesenswert?

Gibt ja noch andere ICs die das können, einfach mal das Netz abklappern.

PERIPHERALS
blabla
Two dual-channel, full duplex synchronous serial ports, supporting
eight stereo I2S channels
blabla

also mit SPDIF is da nix.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dieses dicke Bauteil (Blackfin-Signalprozessor) von Analog Devices ist 
in einem simplen SD-Karten-Player verbaut?

Da hat offensichtlich jemand zu viel Geld gehabt.

von Dominik S. (x-domi-x)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Dieses dicke Bauteil (Blackfin-Signalprozessor) von Analog Devices ist
> in einem simplen SD-Karten-Player verbaut?
>
> Da hat offensichtlich jemand zu viel Geld gehabt.

Jep, ist im Player verbaut ;) Wie teuer ist denn der DSP?


Würde sich der S/PDIF Ausgang auch mit diesem IC Realisieren lassen? -> 
http://at.rs-online.com/web/p/transceiver/4915669/
Oder kann jemand einen dafür geeigneten IC empfeheln, der bei RS 
erhältlich ist?

Bei RS könnte mir jemand Teile besorgen.


MfG Domi

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ja, der CS8406 dürfte auch funktionieren. Der hat eine 
IIS-Schnittstelle, und sollte sich somit mit genau den gleichen Signalen 
beschicken lassen, mit denen auch der DAC gefüttert wird.

Allerdings braucht der Baustein noch einiges an Zusatzbeschaltung, und 
muss von einem µC auch geeignet konfiguriert werden.

Da wirst Du die Datenblätter beider Bausteine vergleichen müssen, denn 
auch der DAC muss konfiguriert werden. Mit einem µC könntest Du an den 
entsprechenden Leitungen "lauschen", um herauszufinden, wie der Baustein 
konfiguriert wird, und das entsprechend sinnvoll in eine 
Initialisierungssequenz für den CS8406 umsetzen.

von Dominik S. (x-domi-x)


Lesenswert?

Mhpfff...

Ich weis zwar, was du meinst, kann mir aber beim besten Willen nicht 
vorstellen wie ich das machen soll. :(
Ich hätte mir das irgendwie einfacher vorgestellt.

Könntest du mir den Gefallen tun und das alles etwas genauer 
beschreiben? Würde mich echt sehr freuen! ;)

von Dominik S. (x-domi-x)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Da wirst Du die Datenblätter beider Bausteine vergleichen müssen, denn
> auch der DAC muss konfiguriert werden.

Wenn ich das richtig verstehe muss man den IC darüber informieren, 
welche Samplingrate, Samplingtiefe usw. das Signal hat. Gibt es nicht 
auch ICs, die das von selbst erkennen?

Rufus Τ. Firefly schrieb:
> Mit einem µC könntest Du an den
> entsprechenden Leitungen "lauschen", um herauszufinden, wie der Baustein
> konfiguriert wird, und das entsprechend sinnvoll in eine
> Initialisierungssequenz für den CS8406 umsetzen.

Mit welchem IC und wie geht das?
An welchen Pins des DAC muss ich messen?
Wenn es nur Frequenzen, Spannungen oder Ströme sind, kann ich das mit 
meinem Multimeter messen, ein Oszi zur Signaluntersuchung hab ich nicht.


MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Stell ich mich zu dumm an, oder ist das ein nicht besonders 
interessantes Thema?
Nicht falsch verstehen - ich will damit nicht Ungeduld zum Ausdruck 
bringen. Ich frage nur, weil man hier normalerweise sehr schnell 
Antworten bekommt.
(War ja auch am Anfang des Threads so... bis plötzlich niemand mehr 
antwortete...)

MfG Domi

von Achim M. (minifloat)


Lesenswert?

Dominik S. schrieb:
> Mit welchem IC und wie geht das?
> An welchen Pins des DAC muss ich messen?

Du müsstest einen kleinen Mikroprozessor programmieren, der dir jeweils 
beim Start des Players einmalig den CS8406 konfiguriert.
Messen wirst du mit dem Multimeter am DAC eher nichts können, außer 
vielleicht die Betriebsspannung. Ich würde an deiner Stelle ins 
Datenblatt des DAC rein schauen und nachsehen, wo die I2S-Signale 
anliegen. Die kann man dann einem I2S-SPDIF-Wandler übergeben.

Ohne Mikrocontroller würde es mit einem CS8404(A) gehen. Ob es den noch 
gibt, kann ich dir nicht sagen. Den Chip kann man über ein paar Pins 
konfigurieren, mit Jumpern oder Mäuseklavier würde das gehen. Der läuft 
dann sofort in dem Modus los, wie es eben die Pins anzeigen.

mfg mf

von Jörg H. (idc-dragon)


Lesenswert?

Die Transmitter-Chips (auch der CS8406) kennen oft einen Hardware-Mode, 
bei dem die elementarsten Einstellungen mit ein paar Pullups/Pulldowns 
gemacht werden können. Das reicht für diese Anwendung bestimmt aus. Ich 
habe schon bei einigen Geräten den I²S genau so angezapft.
Einstellung per I²C oder SPI bietet sich halt an, wenn man ein Gerät 
baut und eh schon einen uC im System hat.
Du wirst noch die Master-Clock brauchen (es sei denn du nimmst einen 
Transmitter mit PLL, der das selber vervielfacht), eine Frequenz mit 
einem vielfachen der Samplingrate (üblicherweise 256x, 384x, 512x), die 
also auch höher ist als die Bitclock. Die muß da auch irgendwo sein.
Geh' mit deinem Gerät mal irgendwo hin, wo ein Oszilloskop steht.

An Transmitterchips habe ich gefunden:
WM8804, AK4103, DIT4096, CS8406, TC9271.
Der CS8406 ist flexibel mit seiner Betriebsspannung, kann 3,3V oder 5V. 
Deshalb finde ich den praktisch.

Jörg

von Dominik S. (x-domi-x)


Lesenswert?

Danke für die Ausführlichen Antworten. ;)

Der Hardwaremode klingt mir Sympathisch, denn zum µC Programmieren hab 
ich keine Möglichkeiten und nochdazu das fehlende Wissen. µC 
Programmierung lernen wir erst nächstes Jahr in der Schule.

Wenn ich den  CS8404 + Mäuseklavier nehme, müsste es dann nicht 
eigentlich reichen, den Masterclock, L/R Clock, Bit Clock und das I2S 
Signal vom DAC abzuzweigen und zum  CS8404 zu führen, oder nicht? Wenn 
das Mäuseklavier nicht sehr viele Switches hat, könnte ich ja einfach 
alle Möglichkeiten durchprobieren...

In der Schule habe ich die Möglichkeit, mit nem Oszi zu messen. Nur dazu 
müsste ich Wissen, an welchen Pins des PCM1716E ich messen muss. Ich 
blicke da trotz mehrmaligen ansehens des Datenblattes noch nicht so ganz 
durch...

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Ich habe das Datenblatt des im Player verbauten DAC (PCM1716E) nochmals 
genau angesehen. Langsam blicke ich da ein wenig durch.

Ich habe zwei Stecknadeln zu Messpitzen umfunktioniert und mit meinem 
Multimeter mal zwischen Pin 14 und Pin 24 gemessen. 0,05V waren es.

Laut Datenblatt:
- Pin 14: AGND: Analog Ground
- Pin 24: MODE: Mode Control Select (H: Software, L: Hardware)

Nachdem das L warscheinlich für Low steht und nur 0,05V an Pin 24 
anliegen würde ich mal sagen, der verbaute DAC wird im Hardware-Modus 
konfiguriert.

Also müsste ich eigentlich mit einem ganz gewöhnlichen Multimeter die 
Konfiguration herausmessen können, oder nicht?
Werde mich nach dem Mittagessen mal an die Arbeit machen...

MfG Domi

von Achim M. (minifloat)


Lesenswert?

Dominik S. schrieb:
> Wenn ich den  CS8404 + Mäuseklavier nehme

Jörg H. schrieb:
> Die Transmitter-Chips (auch der CS8406) kennen oft einen Hardware-Mode,
> bei dem die elementarsten Einstellungen mit ein paar Pullups/Pulldowns
> gemacht werden können.

Die von Jörg genannten Chips unterstützen auch einen 
"Mäuseklavier-Modus", das ist im Grunde genommen dasselbe wie 
"Hardware-Mode".
Du kannst also auch deinen 8406 hernehmen, wenn du ihn bekommst.

Mit dem Multimeter die Konfiguration rausmessen ist schon mal eine gute 
Idee, das kann man dann auf den 8406 umsetzen und den genauso 
einstellen. Wenn die Konfiguration klar ist, könnte man sich die 
Mäuseklavier/Jumper-Geschichte sparen und gleich festverdrahten: ist 
billiger...

mfg mf

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

diese CS8404 gibts in der Bucht für ca. 10 EUR zu kaufen .. (aus England 
oder aus China).

http://www.ebay.de/sch/i.html?_from=R40&_trksid=p5197.m570.l1313&_nkw=CS8404&_sacat=See-All-Categories

Sind diese Bauteile nicht vielleicht soigar in manchen CD oder DVD 
LAufwerken, oder in defekten CD/DVD PLayern ausm Sperrmüll verbaut?

von Dominik S. (x-domi-x)


Lesenswert?

Ich habe jetzt die meiner Meinung nach wichtigen Pinns (23-28) gegen 
Masse gemessen.

Hardware/Software Mode:
Pin 24 = 0
-> Hardware Mode ist an

De-emphasis control:
Pin 26 = 0
Pin 27 = 0
-> De-emphasis ist aus

Input Audio Data Format:
Pin 23 = 0
Pin 28 = 1
-> 16-Bit Data Word, I²S Format

Soft Mute:
Pin 25 = 1
-> Mute OFF (Normal Operation)

Eine "Input Data Bit Selection" sollte man im Hardwaremodus des PCM1716E 
auch noch haben, dazu habe ich aber nichts gefunden?!

Nun ja, soweit so gut. Sind das alle Informationen, die man benötigt? 
Oder muss ich da noch mehr raus messen?

Bezüglich IC wahl für die I²S zu S/PDIF Konvertierung:
Worin unterscheiden Sich die ICs? Gibt es da Qualitätsunterschide bei 
der Umwandlung? Oder unterscheiden sich die nur in den Funktionen?

Wie bereits erwähnt, würde ich Bauteile bevorzugen, die bei RS 
erhältlich sind, da mir die jemand von dort besorgen kann.
Und da war der CS8406 halt der günstigste den ich gefunden habe. Kann 
ich den bedenkenlos nehmen?

MfG Domi

von Achim M. (minifloat)


Lesenswert?

Dominik S. schrieb:
> Gibt es da Qualitätsunterschide bei
> der Umwandlung?

Sind beides serielle Digitale Datenströme, die sich verlustfrei 
ineinander überführen lassen. Qualitätsunterschiede gibt es da per 
Definition eigentlich nicht. In der Praxis gibts vielleicht Jitter, aber 
das sollte erstmal nicht stören.
mfg mf

von Sascha W. (sascha-w)


Lesenswert?

@Dominik

schau dir mal die Bauanleitung von ELV an 
http://www.techome.de/manuals/AAD24_KM_G_050912.pdf das Teil benutzt 
auch einen CS8406. Da ist auch einiges erläutert und die 
Außenbeschaltung hast du auch gleich.

Sascha

von Dominik S. (x-domi-x)


Lesenswert?

Jörg H. schrieb:
> Du wirst noch die Master-Clock brauchen (es sei denn du nimmst einen
> Transmitter mit PLL, der das selber vervielfacht), eine Frequenz mit
> einem vielfachen der Samplingrate (üblicherweise 256x, 384x, 512x), die
> also auch höher ist als die Bitclock.

Ich habe soeben noch den Masterclock des DAC gemessen. Es sind ungefähr 
16,93MHz. Bei einem Vielfachen von 384 würde das 44,1kHz entsprechen.

Nur soweit ich das mitbekommen habe, unterstützt der CS8406 nur 256x, 
128x und 512x, aber nicht 384x.

Kann das sein? Jemand ne Idee?

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Im Datenblatt http://www.cirrus.com/en/pubs/proDatasheet/CS8406_F5.pdf
ist in Tabelle 4 auf Seite 29 folgendes zu lesen:

HWCK1 HWCK0 Function
0     0     OMCK Frequency is 256*Fs
0     1     OMCK Frequency is 128*Fs
1     0     OMCK Frequency is 512*Fs
1     1     OMCK Frequency is 256*Fs

Kann das wirklich sein, dass im Hardwaremodus wirklich 2x 256 vorhanden 
ist?? Und 384 garnicht?
Kennt sich jemand mit dem Teil aus?

Würde mich über eine Schnelle Antwort freuen, denn ich war schon am 
Schaltplan zeichnen... nur bringt mir der nichts, wenn der IC nicht 
passt...

von Jobst M. (jobstens-de)


Lesenswert?

Du könntest die 16,9MHz durch 3 teilen. Dann hast Du 128fs


Gruß

Jobst

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Jetzt musst Du Dominik aber noch etwas unter die Arme greifen und ihm 
erklären, wie er eine Frequenz teilt -- und für ihn herausfinden, ob der 
CS8406 wenigstens ein Taktsignal mit von 50% abweichendem "duty cycle" 
akzeptiert.

von Dominik S. (x-domi-x)


Lesenswert?

Danke für nen Hinweis. ;)

Frequenzteiler mit geraden Zahlen hätte ich gewust, aber dank google 
habe ich auch einen Frequenzteiler mit dem Verhältnis 3:1 gefunden.
Die 2te Getterschaltung auf dieser Seite müsste es sein: 
http://de.wikibooks.org/wiki/Digitale_Schaltungstechnik/_Frequenzteiler/_Puls/Pausen_Verh%C3%A4ltnis

Aber wenn ich das mit 3 T-FF's mache, wird dann nicht die Laufzeit der 
Gatterschaltung schon etwas lange? Kann das die Funktion des CS8406 
beeinträchtigen, wenn der Takt etwas "verschoben" ist?

Oder macht man das mit der Frequenzteilung anders?

Rufus Τ. Firefly schrieb:
> und für ihn herausfinden, ob der
> CS8406 wenigstens ein Taktsignal mit von 50% abweichendem "duty cycle"
> akzeptiert.

Das würde mich echt freuen, denn ich versteh nur Bahnhof... :(

MfG Domi

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Als "duty cycle" oder "puls-pause-Verhältnis" bezeichnet man bei 
Rechtecksignalen das Verhältnis aus der Zeit, die das Signal auf 
Low-Pegel und der Zeit, die das Signal auf High-Pegel ist.

Bei 50% ist es genausolange high wie low:
1
--      ----      ----      ----      --
2
  |    |    |    |    |    |    |    | 
3
   ----      ----      ----      ----

Bei 75% aber ist es dreimal so lang high, wie es low ist:
1
--    ------    ------    ------    ----
2
  |  |      |  |      |  |      |  | 
3
   --        --        --        --

Und bei 25% ist's genau andersrum:
1
   --        --        --        --  
2
  |  |      |  |      |  |      |  | 
3
--    ------    ------    ------    ----


Da das Taktsignal deutlich höher ist als das Audiotaktsignal, ist das 
vermutlich nicht von besonderer Bedeutung; es müsste aber im 
Datenblatt stehen.

Auch die Zeitverzögerung durch den Teiler dürfte hier nichts ausmachen; 
das IC muss sich ja sowieso auf den Audiodatenstrom aufsynchronisieren, 
und dazu gehört zum Audiodatenstrom ein eigenes Taktsignal.

Du solltest halt bei etwa 16 MHz Frequenz keine stainalten Logikgatter 
aus der 74xx- oder 74LSxx-Familie verwenden, achte also auf deren 
Durchlaufverzögerung, die sollte deutlich unter der Periodendauer des 
16MHz-Signales liegen.

von Dominik S. (x-domi-x)


Lesenswert?

Danke für die Hilfreiche Antwort. ;)

Im Datenblatt steht nur beim Links/Rechts Takt des I²S Signales was von 
duty cycle (da soll es 50% sein), beim master clock steht aber nichts 
mit duty cycle...

Wenn ich den Frequenzdrittler nach dem zweiten Schaltplan hier baue: 
http://de.wikibooks.org/wiki/Digitale_Schaltungstechnik/_Frequenzteiler/_Puls/Pausen_Verh%C3%A4ltnis
Müsste ja eh ein duty cycle von 50% sein, dann dürfte da auch nichts 
schief gehen, oder?

Nur finde ich keine FlipFlops, die schnell genug sind?! Die 
Periodendauer bei fast 17MHz beträgt ~60ns. Die meisten JK-FFs (zum bau 
der T-FFs), die ich bei RS finde haben defeinitiv keine deutlich 
kürzeren Laufzeiten.

MfG Domi

von Falk B. (falk)


Lesenswert?

@  Dominik S. (x-domi-x)

>Nur finde ich keine FlipFlops, die schnell genug sind?! Die
>Periodendauer bei fast 17MHz beträgt ~60ns. Die meisten JK-FFs (zum bau
>der T-FFs), die ich bei RS finde haben defeinitiv keine deutlich
>kürzeren Laufzeiten.

Du solltest vielleicht nicht bei den Relais suchen. Einen Frequenzteiler 
für 17 MHz baut man mit normalen HC-Schaltreisen ala 74HCxx.

Aber solche asynchronen Sauerein sollte man sein lassen. Mach es solide 
synchron.

von Dominik S. (x-domi-x)


Lesenswert?

Wenn du mir eine entsprechende Schaltung vorschlägst, gerne ;)
Denn ich hab um ehrlich zu sein keinen Plan, wie ich soetwas synchron 
machen soll.
Würde mich über einen Vorschlag freuen ;)

MfG Domi

von Falk B. (falk)


Angehängte Dateien:

Lesenswert?

@  Dominik S. (x-domi-x)

>Wenn du mir eine entsprechende Schaltung vorschlägst, gerne ;)

Für einen 3:1 Teiler braucht man zwei Bits/FlipFlops, 74HC74 ist 
dein Freund. Dazu ein bisschen Logik, fertig.

Q1 Q0  Q1' Q0'
0   0   0   1
0   1   1   0
1   0   0   0

Q0' = !Q1 & !Q0
Q1' = !Q1 &  Q0

Siehe Anhang. Wenn man noch den Luxus eines annähernd 50% Tastverhältnis 
Takt braucht, muss man die zweite Schaltung nehmen.

MFG
Falk

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Falk Brunner schrieb:
> Für einen 3:1 Teiler braucht man zwei Bits/FlipFlops, 74HC74 ist
> dein Freund. Dazu ein bisschen Logik, fertig.

Und wenn man statt 74HCxx 74ACxx verwendet, dann ist's auch schneller.

von Dominik S. (x-domi-x)


Lesenswert?

Danke ;)

Ja, wie bereits gesagt - ich weis es nicht, ob ich genau 50% 
Taktverhältnis benötige... Ich finde dazu nichts im Datenblatt des 
CS8406. Weiß jemand genaueres diesbezüglich?

Ansonsten werde ich wohl oder übel die Schaltung mit 50% Tastverhältnis 
bauen müssen.

MfG Domi

von Falk B. (falk)


Lesenswert?

@  Dominik S. (x-domi-x)

>Nur soweit ich das mitbekommen habe, unterstützt der CS8406 nur 256x,
>128x und 512x, aber nicht 384x.

"Mein" Datenblatt ist da geteilter Meinung.

http://www.datasheetcatalog.org/datasheet290ojutdqpj1lk81g3qwee0fhyz27y.pdf';)

Seite 26 sagt, dass per Software *384 möglich sind.
Seite 34 kennt im Hardwaremode keine *384. Das kann aber auch ein Fehler 
in der Doku sein. Muss man mal messen.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Ich bin mir nicht sicher, ob Du diesen Takt überhaupt benötigst; da der 
CS8406 im sogenannten slave mode betrieben wird, scheint der Takt 
nicht erforderlich zu sein. Aber das ist nur eine Vermutung; ich habe 
mit diesem Baustein selbst noch keine Schaltung aufgebaut, sondern ich 
sehe mir nur das Datenblatt an.

Ansonsten würde die Fähigkeit, das Ding per Software zu initialisieren, 
einiges vereinfachen, denn bei Softwaresteuerung kann der Baustein 
auch mit dem 384-Teiler arbeiten.

Im übrigen: Versuch macht kluch.

Besorg Dir erst mal die erforderlichen Bauteile und arbeite Dich von der 
minimalistischen Lösung an die Angelegenheit heran.

Als erster Schritt würde ich überprüfen, was passiert, wenn OMCLK im 
slave mode gar nicht "betaktet" wird. Zweiter Schritt wäre der, da das 
eigentliche Taktsignal anzulegen (das zwar ein falsches Teilerverhältnis 
hat, aber im slave mode nicht ausgewertet werden sollte). Und erst 
wenn das nicht funktioniert, würde ich den Teiler ausprobieren, zunächst 
in der einfachen Fassung, und wenn das nicht hilft, in der aufwendigen.

Du solltest allerdings, um diese Dinge ausprobieren zu können, Dir 
irgendwie Zugang zu einem geeigneten Messgerät verschaffen, mit einem 
Multimeter kommt man da nicht weit. Ein Oszilloskop ist hier definitiv 
angesagt.

von Sascha W. (sascha-w)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Ansonsten würde die Fähigkeit, das Ding per Software zu initialisieren,
> einiges vereinfachen, denn bei Softwaresteuerung kann der Baustein
> auch mit dem 384-Teiler arbeiten.
eben, und ein ATtiny der das Ding konfiguriert, nimmt noch weniger Platz 
weg als der Taktteiler und ist u.U. sogar noch billiger - wenn man das 
Programmierequipment schon hat.

Sascha

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

... nur muss man dann auch das Programm schreiben und testen können, das 
in den µC hineinkommen soll, und wenn ich den Threadstarter recht 
verstanden habe und einschätze, überfordert das (noch) seine 
Fähigkeiten.

von Jobst M. (jobstens-de)


Lesenswert?

Rufus Τ. Firefly schrieb:
> 50% abweichendem "duty cycle"

Wenn ich die Angaben im Datenblatt richtig deute, sind bei 5,6MHz 
(44,1kHz*128) 11-89% Duty-Cycle drin. Die High- und die Lowzeit soll 
mindestens 18.3ns betragen.
Ich würde einen 74HC4017 als Teiler benutzen. Einfach den Reset auf den 
4. Ausgang und Ausgang 2 als geteilten Takt benutzen.
= 33% DutyCycle

Dominik S. schrieb:
> Kann das die Funktion des CS8406
> beeinträchtigen, wenn der Takt etwas "verschoben" ist?

Nein, damit habe ich bisher keine Probleme gehabt. Auch im Datenblatt 
wird nicht auf eine zeitliche Abhängigkeit hingewiesen.


Rufus Τ. Firefly schrieb:
> Ich bin mir nicht sicher, ob Du diesen Takt überhaupt benötigst; da der
> CS8406 im sogenannten slave mode betrieben wird, scheint der Takt
> nicht erforderlich zu sein.

Doch, der wird benötigt. Und ich gehe davon aus, daß für die Generation 
eines S/P-DIF-Signals auch 128fs Minimum ist:

Preamble = 4 Bit
Audio = 24 Bit
VUCP-Bits = 4 Bit

Das sind 32 Bit. Mal 2 (Stereo) und nochmal mal 2, weil ein Bit aus zwei 
Slots besteht.

Insgesamt also 128 Bits (bzw. Slots) pro Stereosample.


Gruß

Jobst

von Dominik S. (x-domi-x)


Lesenswert?

Danke für die Antworten ausführlichen Antworten ;)


Ne, zurzeit habe ich weder das Wissen, noch die Möglichkeiten um nen IC 
zu programmieren. Nächstes jahr lernen wir das in der Schule.
Ein bisschen C kann ich aber (nur Windows Konsolenanwendungen).

Aber wenn ich die fertige Software hätte, würde mir warscheinlich Jemand 
in der Schule so einen ATtiny programmieren. (Das sollte sofern die 
Software fehlerfrei ist ja kein so großes Problem mehr sein, oder?)


Wenn dem CS8406 so ein großer Duty-Cycle recht ist, werde ich 
warscheinlich den ersten, von Falk geposteten Frequenzteiler bauen.

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Ich hab mir das alles nochmal überlegt. Ich möchte das ganze recht 
flexibel bauen, damit ich die selbe Platine auch für andere S/PDIF mods 
nutzen kann (hab da noch ein paar Geräte, die noch nen Digitalausgang 
brauchen könnten).

Ich weiß, am flexibelsten währe ich mit einem µC, aber das währe mit 
großer Warscheinlichkeit für mich zu aufwändig.

Deshalb werde ich ALLE Hardware-Konfigurationseingänge des CS8406 zu nem 
DIP-Schalter mit einem Pull-Down Widerstandsarray legen. (Um entweder 5V 
oder annähernd 0V anzulegen)

Den Taktdrittler werde ich auf einer eigenen Platine aufbauen (den 
benötigt man ja nicht fürjedes Gerät.)


Nur bei den Eingängen versteh ich nicht alles so ganz...

Was mus ich z.B. mit TCBL(Pin15) machen? Auf high legen? Auf low legen? 
Garnicht anschließen?

Und bei RST(Pin9) darf (sofern ich das richtig verstanden habe) erst 
dann ne Spannung anligen, sobald alles im "normal"-zustand ist (also der 
richtige Takt anliegt, das I²S Signal anliegt, usw, usw, ...). Da werde 
ich warscheinlich ne Einschaltverzögerung brauchen. Meint ihr reicht 
dafür an primitives RC-Glied? (C zwischen RST Pin und GND, R zwischen 
+5V und RST Pin)

Was ich mit APMS(Pin10), TCBLD(Pin11), CEN(Pin16), EMPH(Pin3) und 
AUDIO(Pin19) genau bezwecke habe ich auch nicht verstanden. Kann ich die 
auch einfach alle zum DIP-Schalter führen? (Damit ich den Print mal 
entwickeln kann.)  Oder muss man da eventuell auch was anderes anlegen 
als 5V oder 0V?

MfG Domi

von Falk B. (falk)


Lesenswert?

@  Dominik S. (x-domi-x)

>Den Taktdrittler werde ich auf einer eigenen Platine aufbauen (den
>benötigt man ja nicht fürjedes Gerät.)

Nicht sinnvoll. Lass ihn einfach unbestückt, wenn du ihn nicht brauchst.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dominik S. schrieb:
> zu nem
> DIP-Schalter mit einem Pull-Down Widerstandsarray

Pull-Up. Und der Schalter schaltet gegen Masse.

von Dominik S. (x-domi-x)


Lesenswert?

Danke für die Tipps ;)


Ich habe noch ein paar Fraagen zu den verschiedenen Pinns:

Ist das in ordnung, wenn ich TCBLD auf 1 setze, und TCBL nirgens 
anschließe?

Was genau ist Hardware Modus A bzw. B? Mittels CEN Pinn kann man das 
festlegen. Ich hätte rein gefühlsmäßig mal den Hardwaremodus A (CEN=0) 
gewählt und die dazugehörigen Pinns so belegt:
- COPY/C = 1
- ORIG = 0
- EMPH = 1 (oder soll ich das irgendwie mit dem SD-Karten-Player 
verbinden?)
- AUDIO = 0

Würde das so passen?

Bezüglich APMS: Woher weis ich ob der "Serial Audio Data Port" Master 
oder Slave ist?

Würde mich diesbezüglich über eure Unterstützung sehr freuen, denn da 
blicke ich echt nicht mehr ganz durch.


//EDIT:
Ich habe soeben beim verbauten DAC (PCM1716) den Widerstand zwischen Pin 
26 und 27 gemessen. Mit diesen Pins kann man "De-emphasis control" 
steuern. Nur blöderweise habe ich da unendlich widerstand zwischen den 
Pinns. Also wird das warscheinlich von einem IC Ein-/Ausgeschalten. 
Deshalb befürchte ich irgendwie, das ich das Signal irgendwie auswerten 
und dem CS8406 übergeben muss.
Oder was sagt ihr dazu?


MfG Domi :)

von Jobst M. (jobstens-de)


Lesenswert?

Dominik S. schrieb:
> - EMPH = 1 (oder soll ich das irgendwie mit dem SD-Karten-Player
> verbinden?)

ist

Dominik S. schrieb:
> "De-emphasis control"

Wird mittlerweile kaum noch genutzt. Ist ein Übrigbleibsel aus der Zeit, 
als in CD-Playern (aus Kostengründen) noch 14-Bit-Wandler verbaut 
wurden.



Dominik S. schrieb:
> Bezüglich APMS: Woher weis ich ob der "Serial Audio Data Port" Master
> oder Slave ist?

Der DSP wird Master sein, der DAC Slave.

Der CS8406 ist in jedem Fall Slave, da er nur an den Leitungen horchen 
soll.

Der Master erzeugt die Taktsignale. Das ist nicht Dein 
S/P-DIF-Converter!


Dominik S. schrieb:
> Den Taktdrittler werde ich auf einer eigenen Platine aufbauen (den
> benötigt man ja nicht fürjedes Gerät.)

Ich würde immernoch den 74HC4017 nehmen und mittels Jumper :2 (256fs), 
:3 (384fs), :4 (512fs), :6 (768fs) und :8 (1024fs) umschaltbar machen. 
Oder unbestückt ohne Teiler.


Nein ... eigentlich würde ich einen µC programmieren ;-)
Versuch es mal - ist gar nicht so schwer!


Gruß

Jobst

von Dominik S. (x-domi-x)


Lesenswert?

Für die Emphasize Funktion bräuchte ich meines erachtens nach nur Pin27 
des PCM1716 negieren und mit  Pin3 des CS8406 verbinden. Ich denke, das 
werde ich schon machen, wenn das so einfach geht.

Den 74HC4017 erhalte ich bei RS nicht einzeln, würde ich also gerne 
meiden.

Das mit dem µC Programmieren lasse ich glaube ich noch bleiben. In ein 
paar Monaten werde ich es eh in der Schule lernen...


Was mir jetzt aber immer noch total unklar ist:

Was mache ich mit U und V (Pin 17 und 18) des CS8406?? Mit 47kOhm gegen 
Masse verbinden. Aber die sind auf seite 12 im Datenblatt
-> 
http://docs-europe.electrocomponents.com/webdocs/04c9/0900766b804c985f.pdf
als Eingänge gekennzeichnet. Was muss da rein?

Und wie dimensioniere ich die Widerstände? Dazu müsste ich wissen, 
wieviel Strom aus den Inputs des IC rein bzw. raus fließen kann.

Ebenso währe esfür die berechnung des RC Gliedes (für die 
Einschaltverzögerung) hilfreich zu wissen, ab welcher Spannung der IC 
das Signal als 1 wahrnimmt. Diesbezüglich finde ich auch nichts im 
Datenblatt.

PS: Kann ich eigentlich die benötigten Signale für den CS8406 paralell 
vom DAC abzapfen? Sollte schon klappen, oder?

MfG Domi

von mmacs (Gast)


Lesenswert?

Mal ne Frage: Sind die JTAG pins an dem Ding gut zugänglich? Kann ich 
mit einem ICEbear modifizierte Firmware draufspielen?

von Dominik S. (x-domi-x)


Lesenswert?

äähhmmm... sprichst du vom SD-Karten-Player? Da ist auf der Platine eine 
nicht verbaute 2x7 Stiftleiste eingezeichnet. 6 Pins der Oberen reihe 
gehen zur unteren rechten Ecke vom DSP, einer ist nicht angeschlossen 
und die gesammte untere reihe ist GND. Könnte das was brauchbares sein?
PS: Das Teil ist auch updatefähig per SD-Karte.

MfG Domi

von Jobst M. (jobstens-de)


Lesenswert?

Dominik S. schrieb:
> Den 74HC4017 erhalte ich bei RS nicht einzeln, würde ich also gerne
> meiden.

Das ist nicht Dein Ernst !?
Bekommst Du bei Reichelt (0,37€), bei Conrad (0,31€) und im 10er Pack 
bei RS f. 4,30€.

Dominik S. schrieb:
> Was muss da rein?

Steht auf Seite 28 und auf Seite 41. Zu wissen, was Validity bedeutet, 
hilft auch weiter.
Dort steht auch, was passiert, wenn CEN auf high steht.

Dominik S. schrieb:
> PS: Kann ich eigentlich die benötigten Signale für den CS8406 paralell
> vom DAC abzapfen?

Ja.


Gruß

Jobst

von Rene B. (themason) Benutzerseite


Lesenswert?

Ist vllt schon was spät noch was zum DIT4096 zu sagen, aber dennoch mal 
:

Ich hab das Teil mal bei mir in meinem Audio-Projekt verbaut gehabt. Der 
kann wohl auch 384fs per Hardware (hab aber nen "geraden" Vorteiler 
benutzt).
Das Teil lief auf Anhieb. Ich brauchte nur die Konfigurationspins, den 
MCLK, BCLK, LRCLK und SDIN halt. Einfach "dranklemmen" und gut, kann 
aber nix zum Preis sagen da ich den noch als Sample rumfliegen hatte und 
meine Synthie-Bastelei digital ausrüsten wollte.

von Strubi (Gast)


Lesenswert?

Moin,

Zum Thema JTAG: Wenn Pin 84-88 auf die Stiftleiste geht, kann man den 
BF532 gut "debuggen", bei diesen Chips ist JTAG nicht deaktivierbar. 
Wenn's kein 14-Pin-Header ist, muss man aber die Pins ev. richtig 
verdrahten.
Und bloss nicht durchpiepsen, damit brät man den Chip relativ schnell.

Die meisten Geräte mit dem BF532 lassen sich mit gepatchter Firmware 
versehen, wie z.B. die recht beliebten Rigol Oszis. Man muss nur die 
(Gnu-)Tools bedienen können und den Chip gut kennen :-)

Die DACs hängen übrigens so gut wie immer an den SPORT (i2s/TDM oder 
microwire, oder wie sie alle heissen-protokolle), entweder findest du 
einen s/pdif transceiver, der kompatibel ist, oder du musst ein paar 
Konfigurations-routinen einschleusen.
Insgesamt sicher ein netter Hardware-Hack..

Gruss,
- Strubi

von Strubi (Gast)


Lesenswert?

Dominik S. schrieb:
> äähhmmm... sprichst du vom SD-Karten-Player? Da ist auf der Platine eine
> nicht verbaute 2x7 Stiftleiste eingezeichnet. 6 Pins der Oberen reihe
> gehen zur unteren rechten Ecke vom DSP, einer ist nicht angeschlossen
> und die gesammte untere reihe ist GND. Könnte das was brauchbares sein?
> PS: Das Teil ist auch updatefähig per SD-Karte.

Nachtrag, ich sollte besser lesen (ist ja auch schon spät):
Mit hoher Wahrscheinlichkeit ist der 2x7 der Standard-ADI-Header, da 
kannst du den ICEbear wohl direkt anstecken. Siehe sonst Pinbelegung zu 
ADI-Appnote EE-68 (oder ICEbear-Manual). Aber keine Garantie...
Dominik: Kannst Du davon auch mal ein Bild machen?

von Dominik S. (x-domi-x)


Lesenswert?

Danke für die ausführlichen Antworten ;)

Morgen abend (so c.a. ab 17:00) kann ich ein Bild davon posten.
Aber mal ne blöde Frage ganz nebenbei... was habt ihr eigentlich vor? 
Was wollt ihr mit der Software des DSP machen? Da bin ich jetzt nicht so 
ganz mitgekommen...

Aber egal, wie das jetzt gemacht wird - ne RCA Buchse für das S/PDIF 
Signal benötige ich sicher. Kann ich das so einfach wie hier machen? -> 
http://reza.net/cms/index.php?page=spidf-adaptor
Oder soll ich einen Übertrager (wie im Datenblatt des CS8406 empfohlen) 
verwenden?

MfG Domi

von Martin S. (strubi)


Lesenswert?

Ich hab hier übrigens noch CS8402A S/PDIF-Wandler im DIL-24 package 
rumliegen. Sind lange abgekündigt worden (Vorgänger vom 8406). Haben? -> 
Melden.
PS:
An der Software für den DSP braucht man ansich nur drehen, wenn man den 
Chip konfigurieren will/muss. Oder gerne eigene Firmware aufspielt (wie 
Rockbox, o.ä.)

von Dominik S. (x-domi-x)


Angehängte Dateien:

Lesenswert?

@Martin:
Danke. Ist zwar sehr nett, aber soweit ich das mitbekommen habe, 
unterstützt der CS8402A keinen Hardwaremodus...

Die Bilder von der unbestückten Stiftleiste sind im Anhang. Dürften die 
richtigen Pinns sein.

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Trotz mehrmaligen lesen der entsprechenden Stellen im Datenblatt 
verstehe ich das mit dem V und U Pin vom CS8406 nicht :(
Hier werden die Pinns einfach an GND angeschlossen: 
http://gamesx.com/wiki/doku.php?id=av:dreamcastda
Laut Datenblatt die Pinns irgend welche Eingänge, die man mit 47k gegen 
GND verbinden soll.
Kann man die trozdem einfach mit GND verbinden (so wie im link zu 
sehen)?

Zur Einschaltverzögerung (!RST Pin):
Laut Datenblatt werden Pegel ab 2,75V als high erkannt. Ich schätze mal 
eine Sekunde verzögerung sollte reichen. Diese Verzögerung müsste ich 
erreichen, wenn ich einen 47k R zwischen den !RST Pin und 5V gebe und 
einen 300nF C zwischen !RST Pin und GND. Würde das so klappen? Ich weiß 
nicht sicher, ob ich das richtig berechnet habe.

Passen 47k Widertände als Pulldown zwischen IC Pinns und DIP-Schaltern?

PS: kann das sein, das der IC bei den Inputs nur 0,5µA zieht? Mir kommt 
das ziemlich wenig vor. Oder hab ich mir da die falsche Angabe aus dem 
Datenblatt herausgesucht?

MfG Domi

von Dominik S. (x-domi-x)



Lesenswert?

Ich hab V und U jetzt einfach mal so wie im obigen Link zu sehen 
angeschlossen.

Nachdem die Platine maximal 5x5,5cm groß sein darf und ich mich 
entschlossen habe, dass so eine platine den vollständigen benötigten 
Funktionsumfang beinhalten soll, habe ich kleine Platz- und 
Routingprobleme gehabt.
Aber mit 5 Drahtbrücken und einer Bedrahteten Diode, die 
leiterbahnseitig montiert wird hab ich es dann doch geschaft :)

Neben dem CS8406 (den ich durch DIP-Schalter vollständig konfigurieren 
kann), sind auf der Platine auch ein 74HC4017 für die Frequenzteilung. 
Der Teiler ist frei zwischen 1 und 10 wählbar (in dem man den Reset-Pin 
und den entsprechenden Zähler-Pin miteinander verbindet). Und ein 7400 
habe ich für die Negierung des negierten De-Emphasis auch noch 
untergebracht.

Nun bin ich mit der Platine ziemlich flexibel. Sollte sich eigentlich in 
den meisten Geräten anwenden lassen.


Nun würde mich nurnoch interessieren, ob das RC-Glied mit C=300nF und 
R=47kOhm für die Einschaltverzögerung bei !RST passt,
und ob 47k Pullupwiderstände an den Konfigurationspinns passen.

PS: CX.1 und CX.2 sind die beiden Anschlüsse eines Kondensators. Dessen 
beinchen werde ich da wohl etwas auseinanderspreizen müssen :D
Das sind am Print die einzelnen Lötstifte, zwischen denen zwei Leitungen 
durchgehen und zwischen den beiden oberen IC's sind.

MfG Domi

von Jobst M. (jobstens-de)


Lesenswert?

Dominik S. schrieb:
> Ich hab V und U jetzt einfach mal so wie im obigen Link zu sehen
> angeschlossen.

Ich denke, das ist okay so. Die Eingänge werden ja sowieso nicht 
benutzt, da in diesem Modus (siehe CEN) U und V intern erzeugt werden. 
;-)


> Nachdem die Platine maximal 5x5,5cm groß sein darf und ich mich
> entschlossen habe, dass so eine platine den vollständigen benötigten
> Funktionsumfang beinhalten soll, habe ich kleine Platz- und
> Routingprobleme gehabt.

Wieso hast Du die beiden anderen ICs dann nicht auch in SMD genommen?


> ein 74HC4017 für die Frequenzteilung.
> Der Teiler ist frei zwischen 1 und 10 wählbar (in dem man den Reset-Pin
> und den entsprechenden Zähler-Pin miteinander verbindet).

Vermutlich wirst Du damit nur mit Glück durch 1 teilen können. Die oben 
angesprochene Duty-Cycle ist dann jedenfalls recht undefiniert. Ich 
würde da dann lieber den Eingangstakt übernehmen.
Ausserdem muß Deine Beschriftung um einen Pin nach oben gesetzt werden.
Reset an Ausgang 0 hält den Zähler immer im Reset.
Erst am Ausgang 2 ist sinnvolles Teilen möglich.
Teilen durch 10 erreichst Du ohne Reset. Allerdings hast Du dann ein 
Duty-Cycle von 10%. Ab 1:7 würde ich dann den Ausgang /CT<5 benutzen.


> Und ein 7400
> habe ich für die Negierung des negierten De-Emphasis auch noch
> untergebracht.

Warum benutzt Du nicht einen einfachen Transistor + Pullup? Spart Platz! 
;-)


> Nun würde mich nurnoch interessieren, ob das RC-Glied mit C=300nF und
> R=47kOhm für die Einschaltverzögerung bei !RST passt,

Probier es einfach aus! :-)


> und ob 47k Pullupwiderstände an den Konfigurationspinns passen.

ja.


> PS: CX.1 und CX.2 sind die beiden Anschlüsse eines Kondensators. Dessen
> beinchen werde ich da wohl etwas auseinanderspreizen müssen :D

Mach doch mehrere Lötpads:  ===ooo o==o===


Gruß

Jobst

von Dominik S. (x-domi-x)



Lesenswert?

Danke für deine ausführliche Antwort ;)

Bedrahtet ist einfacher, schneller und nervenschohnender zum löten ;)

Das mit dem Frequenzteiler habe ich behoben.
Auf dem Board habe ich jetzt zwei Lötstifte für den Masterclock. Einer 
ist direkt mit dem CS8406 verbunden, der andere direkt mit dem 
Dezimalzähler.
So kann ich den Masterclock entweder direkt übernehmen, oder ihn zum 
Dezimalzähler geben. Den Zähler konfiguriere ich mittels Drahtbrücke 
zwischen den entsprechenden Lötstiften. Die Dezimale 1 und den CT<5 
Ausgang des Zählers habe ich auch zu einem Lötstift geführt - so kann 
ich je nach bedarf den dafür am besten geeigneten Ausgang zum OMCK des 
CS8406 führen.

Negierung mit Transistor und Pullup... ja das währ auch ne Idee. Ist 
jetzt aber auch schon egal. Habs mit dem Platz hinbekommen und ich 
glaube, ich habe mehr 7400 als irgend welche Transistoren zuhause :D
(Ich hab ein ziemlich komisches und auch nicht besonders großes 
Bauteilsortiment zuhause - also nicht wundern ;-) )

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Ich hab noch kurz ne frage, die nur indirekt mit dem Thema zu tun hat:

Kennt jemand einen günstigen Steckverbinder für durchsteckmontage auf 
der Platine und mit 2 Kontakten und Verpolschutz? Im idealfall um 90° 
abgewinkelt (so dass man den Stecker sozusagen seitlich rein steckt).

Gibt es bei den Steckverbindern so ein Standardprodukt, wie bei den 
Dioden die 1N4148?

Ich möchte die Kabel der RCA Buchse nicht direkt auf der Platine anlöten 
sondern eben mit einem Steckverbinder verbinden.

MfG Domi

von Jobst M. (jobstens-de)


Lesenswert?

Dominik S. schrieb:
> Bedrahtet ist einfacher, schneller und nervenschohnender zum löten ;)

Empfinde ich genau umgekehrt.


Dominik S. schrieb:
> Kennt jemand einen günstigen Steckverbinder für durchsteckmontage auf
> der Platine und mit 2 Kontakten und Verpolschutz?

Die standard Molex Dinger

Dominik S. schrieb:
> Im idealfall um 90° abgewinkelt

gibt es auch in 90° Version


Dominik S. schrieb:
> Ich möchte die Kabel der RCA Buchse nicht direkt auf der Platine anlöten
> sondern eben mit einem Steckverbinder verbinden.

Prinzipiell ist dem Signal die Polung egal. Würde ich jedoch nur mit dem 
Übertrager wagen.


Gruß

Jobst

von Dominik S. (x-domi-x)


Lesenswert?

Weiß jemand, ob da die Metalldinger, an denen man die Kabel Ancrimpt 
auch dabei sind? -> 
http://at.rs-online.com/web/p/steckverbinder-hauben-gehaeuse/2799156/?origin=PSF_348498|acc
Für mich sieht das irgendwie nicht so aus, finde ich aber unlogisch?!

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Bauteile Sind bestellt, Platinen sind schon gefräst. :)
Nächstes Wochenende werd ich mal einen "I²S to S/PDIF Converter" (oder 
wie auch immer man das Teil nennen kann) bauen.
Da werd ich mich nochmal melden. Bilder gibt's natürlich auch ;)


Ich möchte mich an dieser Stelle mal bei allen herzlichst bedanken, die 
mir hier so toll geholfen haben!
Ohne euch hätte ich das definitiv (noch) nicht geschafft. Freut mich 
echt, dass man hier so tolle unterstützung bekommt ;)


Eine Frage hab ich aber bezüglich dem DSP (siehe Bild im 7. Post):
Kommt der direkt an die mp3 Dateien der Speicherkarte ran? Oder werden 
die zuvor irgendwo irgendwie umgewandelt? Oder kann man das nicht so 
pauschal sagen?
Sofern das irgendwie machbar währe, währe warscheinlich nächstes Jahr 
ein weiteres "Pimp my SDJ1"-Projekt ne m4a unterstützung. :D
Auf dem gedanken bin ich gekommen, als ihr JTAG erwähnt habt...

MfG Domi

von Strubi (Gast)


Lesenswert?

Hi Dominik,

> Eine Frage hab ich aber bezüglich dem DSP (siehe Bild im 7. Post):
> Kommt der direkt an die mp3 Dateien der Speicherkarte ran? Oder werden
> die zuvor irgendwo irgendwie umgewandelt? Oder kann man das nicht so
> pauschal sagen?

Müsste man sich die Code-Module mal anschauen, aber gibt ansich keinen 
Grund, warum die umgewandelt werden sollten.

> Sofern das irgendwie machbar währe, währe warscheinlich nächstes Jahr
> ein weiteres "Pimp my SDJ1"-Projekt ne m4a unterstützung. :D
> Auf dem gedanken bin ich gekommen, als ihr JTAG erwähnt habt...

Siehe oben auch Stichwort "Rockbox", Du musst nur die Peripherie am 
Blackfin etwas "entschlüsseln". Das kniffligste wird womöglich die 
Display-Ansteuerung sein, der Rest eher "piece of cake". Wenn das Ding 
ein paar MB RAM hat, läuft vielleicht sogar Linux drauf...

- Strubi

von Dominik S. (x-domi-x)


Lesenswert?

Danke für die Info ;)

Heute hab ich die Schaltung aufgebaut. Und siehe da - funktioniert! :)
Aber leider nicht so, wie es soll... :(

Soweit ich das mitbekommen habe, kommt es zu Problemen, wenn größere 
Datenmengen übertragen werden.
Besonders aufgefallen ist es mir bei "Get Shaky" von "The Ian Carey 
Project". Das Intro (nur Gitarre) wird einwandfrei abgespielt, aber 
sobald Gesang dazu kommz, sind sekündlich kurze unterbrechungen. Und 
wenn dann der Bass auch noch kommt ist es ganz vorbei - da höhrt man 
nurnoch bruchteile der Musik (z.B. 1sec nichts, 0,5 sec Musik).

Weiß jemand, woran das Problem liegen könnte?

Zurzeit ist das alles noch eher ein Versuchsaufbau... je 50cm lange 
Leitungen für Versorgung, Clock, Bitclock, Datenleitung, usw...
Zwischen RCA Buchse und Platine sind auch zwei 50cm lange Kabel - nicht 
coaxial.
Meint ihr, kann das das beeinflussen?

Ich währe euch über Schnelle Hilfe echt sehr dankbar.

MfG Domi

von Jobst M. (jobstens-de)


Lesenswert?

Was hast Du in den 'Pausen'? Rauschen oder Ruhe?


Gruß

Jobst

von Dominik S. (x-domi-x)


Lesenswert?

Ruhe. Es liegt einfach kein S/PDIF Signal an. Oder zumindest ein 
undefinierbares Signal.
Es flackert auch passend zu den Aussetzern der Schriftzug "PCM" auf 
meinem AV-Receiver.

von Rene B. (themason) Benutzerseite


Lesenswert?

Ich frag mal blöd.

Liegen während der Pausen MCLK, BCLK, LRCLK, SDIN/SDOUT an (also aufm 
Scope) ?
Hört man die pausen im "Standard Ausgang" auch ?

von Jobst M. (jobstens-de)


Lesenswert?

Ohne Scope kommst Du an dieser Stelle vermutlich nicht so einfach 
weiter.

- Versuch mal alles so sauber wie möglich und mit möglichst kurzen 
Verbindungen aufzubauen.

- Probiere einen Übertrager. Den kannst Du Dir recht einfach mit einem 
Entstörringkern z.B. aus einem PC selber wickeln. 20:4 Windungen ist 
perfekt.
Ausgang vom IC über 10nF an die 20 Windungen, 4 Windungen in Reihe mit 
75Ω zum Receiver.

- Hast Du noch einen anderen S/P-DIF Empfänger?
Wenn ja, wie verhält der sich?


Gruß

Jobst

von Dominik S. (x-domi-x)


Lesenswert?

Oszi hab ich leider keines. Die im Player verbauten DACs arbeiten 
einwandfrei. Nur meine I²S to S/PDIF Schaltung zickt.

Was mir allerdings etwas eigenartig vorkommt: Bei beiden DACs liegt an 
Pin 27 (Emphasis control) 2,5V an?! Das ist mir beim herummessen soeben 
aufgefallen... Ich bin mir nicht mehr ganz sicher, aber da lagen meines 
Wissens mal 0V an, jedoch kein so undefinierbarer Pegel zwischen L und 
H...

//EDIT:
@jobst:
Ne, nen anderen S/PDIF empfänger hab ich leider nicht...

PS: Wie groß sollte der Kondensator nach dem Ausgang des ICs ohne 
Übertrager sein?

von Dominik S. (x-domi-x)


Lesenswert?

Mir ist soeben noch eine mögliche Fehlerquelle eingefallen:

Soweit ich das richtig mitbekommen habe (messe morgen - ne - heute in 
ein paar Stunden mal nach) arbeitet der DSP mit 3,3V. Also wird er 
warscheinlich auch nicht mehr als 3,3V an den Ausgängen liefern. Die 
DACs sind direkt mit dem DSP verbunden - werden also auch nicht mehr als 
3,3V Signale bekommen.
Vieleicht reicht diese Spannung für die DACs, aber der CS8406 kann sich 
nicht so recht zwischen 1 und 0 entscheiden? Währe das ne Möglichkeit?

Weiters ist mir folgendes aufgefallen:
Wenn ich zwischen GND und ISCLK mit meinem Multimeter Frequenz messe, 
wird der Ton Leiser und die aussetzer werden deutlich weniger. Dafür 
klingt dann der Ton verzerrt/kratzend.
Das verstärkt meinen oben beschriebenen Verdacht (denn mein MM wird die 
Spannung warscheinlich noch ein kleinwenig einbrechen lassen).


MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Hab den Fehler gefunden! :)
Konnte ihn auch provisorisch beseitigen, weiß aber nicht wodurch er 
zustande kommt...

Ich habe mir die De-Emphasis Leitung nochmals genauer angesehen. Die hat 
mich ja gestern schon so gewundert, mit so einem undefinierbaren 
Spannungspegel. Und genau der hatte schuld! Ich habe jetzt den EMPH 
Eingang (das ist ein aktive low Eingang) mit +UB verbunden, also 
De-Emphasis fix ausgeschaltet. Und siehe da - alles funzt einwandfrei!
Aber woher kommen diese blöden 2,5V auf der EMPH leitung?!?! Vor einigen 
Tagen als ich gemessen habe, waren das definitiv 0V bei allen Liedern!!
Ich finde da irgendwie nirgens einen Fehler...

MfG Domi

von Dominik S. (x-domi-x)


Lesenswert?

Jetzt klappt alles einwandfrei.
Ich hab nen ganz blöden Fehler gemacht - die Emphasis Leitung war am 
falschen Pin vom DAC angelötet.

Vielen Dank nochmals für eure Unterstützung!! Ihr wart mir echt eine 
große Hilfe!!

Den Umständen entsprechend klingt der Player jetzt ganz gut. Fehlt nur 
noch die AAC und flac Unterstützung. Aber das kommt erst nächstes Jahr 
drann.

PS: Kann man über JTAG die Firmware des Blackfin DSP auslesen, 
modifizieren und wieder zurückspielen? Oder müsste ich da die gesammte 
Firmware neu schreiben um ein paar Codecs hinzuzufügen?

MfG Domi

von Dominik S. (x-domi-x)


Angehängte Dateien:

Lesenswert?

Ein paar Bilder...

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Glückwunsch zum erfolgreich beendeten Projekt!

von Jobst M. (jobstens-de)


Lesenswert?

Dominik S. schrieb:
> Jetzt klappt alles einwandfrei.

Herzlichen Glückwunsch! Prima!


> Ich hab nen ganz blöden Fehler gemacht - die Emphasis Leitung war am
> falschen Pin vom DAC angelötet.

Das kann schon mal passieren.


> PS: Kann man über JTAG die Firmware des Blackfin DSP auslesen,
> modifizieren und wieder zurückspielen? Oder müsste ich da die gesammte
> Firmware neu schreiben um ein paar Codecs hinzuzufügen?

Du solltest versuchen, die Quellen zu besorgen, damit diese dann 
modifiziert/erweitert werden. Vielleicht findest Du ja auch ein Update 
im Netz?
Den vorhandenen Code zu modifizieren stelle ich mir recht schwer vor, da 
es sich nur um die vom Prozessor zu interpretierten Daten handelt. Keine 
Kommentare etc. Da wird es schon etwas schwer, sich darin zurecht zu 
finden.


Gruß

Jobst

von Dominik S. (x-domi-x)


Lesenswert?

Hier kann man ein  Update downloaden: 
http://www.adjaudio.com/ProductDetails.aspx?ItemNumber=1358&MainId=1&Category=23
(rechte Spalte mit den roten Pfeilen)
Ist allerdings nur eine Binärdatei. Ich weiß nicht ob man damit etwas 
anfangen kann. Decompilieren soll meines Wissens nach nicht unbedingt 
das gelbe vom Ei sein, sofern es je nach Programmiersprache überhaupt 
möglich ist...

Ich wollte nur wissen, ob ich den AmericanAudio Support weiter quählen 
muss, bis die mit dem Sourcecode raus rücken, oder ob ich mir das sparen 
kann :D

Wenn's dann wirklich ans Firmware modding geht, denke ich ist ein neuer 
Thread angebracht - hat ja mit nem S/PDIF mod nicht wirklich was zu 
tun...

MfG Domi

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
Noch kein Account? Hier anmelden.