Forum: Mikrocontroller und Digitale Elektronik AD8934 - DDS SPI Ansteuerung


von Jürgen (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Community,

ich habe bisher wenig Erfahrung mit SPI und der Programmierung von ICs 
gesammelt. Theoretisch ist das ziemlich einfach.

Nun will ich den obigen DDS programmieren und bekomme es nicht hin.
Ich verwende einen MSp430F2013. Damit kann ich wunderbar SPI Daten 
senden (am Oszi gut zu sehen), aber die DDS rührt sich nicht und 
reagiert nicht darauf.

Ich versuche zur Zeit herauszufinden warum.

Es ist höchstwahrscheinlich ein Softwareproblem. Ich kann mir nicht 
vorstellen den DDS-IC beim Löten zerstört zu haben, da die Stromaufnahme 
"normal" ist.

Die Ansteuerung im Datenblatt (Anhang) ist aber auch verwirrend 
beschrieben.

Man kann die Control Bits mittels Pins (extern) oder mittels Bits im SPI 
Datenstrom einstellen. Das Befehlswort hat 16Bit und wird an zwei 
vorangestellten '0' erkannt. Wenn man nun das Control Bit PIN/SW=0 
setzt, sollten alle Control Bits per Software (durch SPI Kommunikation) 
verändert werden können.

Aber wie sehen die Befehlsworte aus, wenn mam mehrere Befehle 
nacheinander hat.
z.B.

1.) IC Reset - Reset Bit=1 im Datenstrom
2.) Frequenzeinstellung - Reset Bit wieder 1 setzen oder 0, weil es ein 
Schreibefehl in das Frequenzregister ist ? Der Baustein soll ja 
weiterhin im Reset bleiben.

usw.

Das heißt: Muss ich bei allen folgenden Befehlen immer wieder das Reset 
Bit setzen, um auch im Reset Zustand zu bleiben ? Oder verlasse ich 
diesen, wenn ich in einem Schreibbefehl das Reset-Bit = 0 setze ? Im 
Datenblatt ist ein Beispiel zur Frequenzeinstellung (S.20))- da ist das 
Reset Bit 0, aber im Text steht ausdrücklich, es soll 1 während der 
Initialisierung sein (siehe auch Abb. 31).

Noch eine Frage zu SPI.

SPI scheint mit diesem Baustein bis zu 40MHz SCLK zu gehen. Ich betreibe 
es mit ca. 70kHz. Das sollte doch kein Problem sein, oder ? Die Timings 
sind ja nur zu höheren Frequenzen begrenzt ?

Ich stelle all diese vielleicht dummen Fragen, um überhaupt einen Ansatz 
zur Fehlersuche zu bekommen. Ich weiß zur Zeit überhaupt nicht woran es 
liegt.

Danke für eure Mühe !

Jürgen

von Mensch Z (Gast)


Lesenswert?

;----------------------------------------------------------------------- 
--
;               AD9833  Waveform generator word manual tuning values:-

;//                     2100 46DC 400D 8000 8000 C000 E000 2000  = 20khz
;//                     2100 449C 4083 8000 8000 C000 E000 2000  = 
200khz
;       bei 25MHz Quarz
;----------------------------------------------------------------------- 
--

dieser chip ist aehnlich....da siehst du wie mit dem Reset umgegangen 
wurde

von Jürgen (Gast)


Lesenswert?

Hallo,

danke, ich schaue es mir mal an.

Jürgen

von Jürgen (Gast)


Lesenswert?

Hallo,

so ähnlich hab ich das auch gemacht.
Allerdings habe ich die Phasenregister und das zweite Frequenzregister 
(FREQ1) nicht beschrieben, sondern nur FREQ0.

Und das funktioniert bei dir ?

Welchen SPI Takt verwendest du ?

Danke.

Jürgen

von Jürgen (Gast)


Lesenswert?

Hallo,

ich kann an dem DDS-IC nach Einschaltung der Versorgungsspannung an den 
Ausgängen REFOUT und COMP keine Spannung messen.

Ist das normal ?

Eigentlich sollten doch da 1,2V und 2,5V anliegen ?

Hoffentlich kann mir da jemand helfen.

Jürgen

von Peter (Gast)


Lesenswert?

Hallo,


bei COMP messe ich ungefährt 2,4V.
Das ist schonmal gut.

Kann es sein, dass die Referenz erst nach der Initialisierung 
zugeschalten wird ?

von Peter (Gast)


Lesenswert?

Entschuldigung, ich meine an dem Pin CAP/2.5V messe ich 2,4V.
An Comp und REFOUT messe ich 0V.

von I_ H. (i_h)


Lesenswert?

Beim AD9851 wird die Referenz erst nach dem Init eingeschaltet, das wird 
bei dir wohl genauso sein.

von Peter (Gast)


Lesenswert?

Hallo,

das klingt schon gut.

Ich habe nähmlich eben die zweite Platine bestückt und dort habe ich an 
der Referenz ebenfalls 0V.

Wie sieht es denn bei den anderen Ausgängen aus ?

Ich habe am COMP 3,5V und am CAP/2,5 2,5V nach Einschalten der 
Betriebsspannungen.

Danke für eure Hilfe.

von Jürgen (Gast)


Lesenswert?

Hallo,

DDS funktioniert.

Der andere IC war einfach defekt !

Danke an alle.

MfG
Jürgen

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.