PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : DAC AD5343 und timingparameter



Ceos
18.02.2009, 11:51
ich hätte da mal ne frage an euch, und zwar verstehe ich das timingdiagramm auf der 3ten seite von dem datenblatt

http://www.analog.com/static/imported-files/data_sheets/AD5332_5333_5342_5343.pdf

NICHT.

offenbar soll ich die daten schreiben, nachdem ich den /WR gezogen habe, aber das ergibt für mich wenig sinn, besser wäre es doch wenn die daten stabil sind bevor ich den strobe mache ?! mehrere versuche bei AD in den support zu kommen scheiterten leider bisher

auch wird mir nicht klar, wie ich effektiv low und highbyte hintereinander schreibe und dann den LDAC ziehen soll damit die daten vollständig ankommen.


EDIT: Nachtrag

ich habs jetzt soweit verstanden, dass er bei steigender flanke die daten schreibt, soll heissen bis 8ns vor der steigenden flanke auf /WR müssen die daten stabil sein und danach noch mind. 5ns lang ... soll heissen ich kann theoretisch einfach daten anlegen, einmal /CS und /WR pulsen , bei 16Mhz sind das 62.5ns als mehr als genug und dann anschliessend /LDAC ziehen .... oder versteh ich das datenblatt falsch ?

H.A.R.R.Y.
18.02.2009, 12:27
Sobald CS=0 und WR=0 ist der Baustein selektiert. Sobald WR auf 1 geht, wird das Datenwort (8/10 o. 12Bit) in das Input-Latch übernommen. Dabei entscheidet A0 welcher DAC ausgewählt ist. Die Daten sind jetzt im Baustein, aber noch nicht wirksam. Jetzt kannst Du - bei Bedarf - noch dem 2ten DAC ein Datenwort geben. Also A0 auf den anderen Pegel, CS=0, WR=0, das Datenwort anlegen und danach CS und WR wieder auf 1 (sicherheitshalber nimm zuerst WR auf 1, erst danach CS auf 1). Nun hat dieser Kanal auch seine neuen Daten gespeichert, sie sind aber immer noch nicht wirksam (im eigentlichen DAC-Register). Um nun die Daten in die DACs zu bekommen wird das LDAC auf 0 gelegt. Erst jetzt übernehmen beide DACs gleichzeitig die gewünschten Daten. Diese Art des Interface wird gerne gemacht, damit mehrere DACs ihren Ausgang GLEICHZEITIG umschalten. Ansonsten hättest Du immer einen zeitlichen Versatz zwischen den DACs und es gibt Anwendungen die genau das nicht vertragen. Es ist damit möglich noch weitere DACs ins System zu nehmen und sie alle an eine gemeinsame LDAC-Leitung zu hängen.

Für die Auswahl von High- und Low-Byte ist das Signal HBEN zuständig. So wie A0 den DAC auswählt, wählt HBEN aus, ob das MSB oder das LSB eingespeichert wird. Das ist übrigens im Timing-Diagramm auch referenziert.

Für den AD5343 mußt Du also zwei Bytes schreiben und danach LDAC den Impuls geben, damit der gewünschte Kanal seinen neuen Ausgangswert annimmt. Du kannst natürlich auch erst einmal alle 4Bytes schreiben und danach LDAC geben, erst damit übernehmen beide DACs zeitgleich den neuen Wert.

Du kannst natürlich auch LDAC dauerhaft auf 0 legen, dann ist der DAC immer sofort auf dem neuesten Stand, hast aber Probleme mit unerwünschten Zwischenstufen beim AD5343, da dort MSB und LSB in zwei Happen zeitlich nacheinander kommen.

Du solltest den Absatz "PARALLEL INTERFACE" auf Seite 14 studieren. Da ist eigentlich alles dies gesagt - nur halt auf Englisch. Falls das ein Problem sein sollte, dann schau mal ins Wörterbuch
http://dict.leo.org/ oder bitte jemanden Dir beim Übersetzen zu helfen.

Gruß H.A.R.R.Y.

Ceos
18.02.2009, 14:34
ja danke, die zusammenhänge und so waren mir vollends bewusst, dem englisch bin cih auch mächtig, nur hat mich das diagramm ein wenig irritiert und die eigentliche frage ist ob es etwas ausmachen würde wenn ich ERST die daten anlege und DANN den strobe gebe!

naja ich werd das dann jetzt mal ausprobieren, konnte bis eben leider noch nicht an die technik ran

H.A.R.R.Y.
19.02.2009, 11:04
Oh, da hatte ich etwas mißverstanden, sorry. Normalerwies ist die Reihenfolge erst Daten anlegen, dann den Strobe geben die sicherste Variante - wenn dieDaten erst wieder verändert werden nachdem der Strobe weg ist. Dann ist auch das Timing unkritisch.

Gruß H.A.R.R.Y.