Forum: Mikrocontroller und Digitale Elektronik DAC AD7808 wie register setzen


von Maddin (Gast)


Angehängte Dateien:

Lesenswert?

Moin habe mir einen DAC gekauft. genauer AD7808 (Conrad). Dieser soll 
mir analog Werte ausgeben, die ich ihm über einen ATMega32 vorschreibe 
(eingelesene Werte durch UART). Ich habe mir das Datenblatt des DAC 
schon genauer angeschaut und soweit ich das verstanden habe, kann ich 
über den Pin SDIN den DAC schreiben (das ich des Weiteren andere PIN's 
auf High/LOW schalten muss ist klar). Ich würde den DAC gern mit 8-bit 
Registern betreiben, die ich einzeln ansprechen kann (geht auch soweit 
ich gelesen hab). Hier meine Frage:

Bevor ich binäre Zahlen in die entsprechenden Register schieben kann, 
muss ich (glaube ich so gelesen zu haben) andere Register setzen damit 
der DAC "versteht" was er machen soll. (MD0 MD1 usw.) Habe natürlich die 
Programmbeispiele im Datenblatt gefunden, leider bin ich zu neu in der 
Materie um das auf mein Problem umsetzen zu können. Kann mir vielleicht 
jemand weiter helfen?

Datenblatt im Anhang

Danke im vorraus Martin

von Maddin (Gast)


Lesenswert?

Hat denn niemand eine Idee?
Schafft der Mega32 das überhaupt?

Gruß Martin

von Maddin (Gast)


Lesenswert?

Habemal ein wenig im Datenblatt des Mega32 gestöbert und den SDA und SCL 
Pin gefunden. Wenn ich das richtig verstanden habe, wäre SCL die Clock 
und SDA der Pin für die Daten. (Sprich ein Bus). Ich bin leider durch 
die Programmbeispiele nicht ganz durchgestiegen. Wie ich die Clock 
richtig setze ist denke ich einfach (muss auch nicht genau sein ist 
relativ egal wie schnell die Übertragung geht), ich hab bloß nicht 
verstanden wie ich Daten über den SDA sende. mit SDA = .. wird das ja 
nicht gehen oder?

bin über jede Hilfe Dankbar..

Gruß Martin

von A. F. (artur-f) Benutzerseite


Lesenswert?

Also Zeit musst du schon investieren, um zum Ziel zu kommen.
Setzt dich erst mit dem I2C Interface auseinander. Kenn den DAC zwar 
zwar nicht, aber das I2C Interface der Atmegas kann 100 bzw 400kHz 
schaffen.

von Benedikt K. (benedikt)


Lesenswert?

Wiso soll er sich mit I2C auseinander setzen? Der DAC hat SPI...

von Martin (Gast)


Lesenswert?

Ist vielleicht etwas dämlich die frage aber, kannst du/ihr mir 
vielleicht erklären was ISP dann heißt oder ist?

Gruß Martin

von Martin (Gast)


Lesenswert?

kleine Ergänzung vielleicht noch, funktioniert das überhaupt was ich da 
vor habe?
Also per Mega32 die analogen Spannungswerte des DAC steuern?! Wie gesagt 
dachte, SCL als Taktgeber (Clock) SDA zum Datensenden. Die Frage ist nur 
wie?

Gruß Martin

von M. B. (m_beffa)


Lesenswert?

Natürlich funktioniert das.

Also dein DAC hat eine SPI Schnittstelle. SPI ist eine synchrone 
serielle Übertragung d.h. du hast Daten und Clock, welche beide synchron 
übertragen werden. Im Gegensatz zu einer aynchroner Übertragung wie 
RS232.

Du musst also deinen AVR so konfigurieren damit du über die SPI 
Schnittstelle deine Datenbits an den DAC senden kannst...

Wie du das machst, steht im Datenblatt deines AVR sicher genau 
beschrieben. Diese Schnittstelle kannst du sicherlich umschalten 
zwischen asynchron und synchron. d.h. du must die Schnittstelle deines 
AVR richtig konfigurieren und dann sollte das ohne Probleme 
funktioniern.

von Martin (Gast)


Lesenswert?

alles klar.. das ist schonmal ein guter hinweis... werde das mal testen 
und mich dann gegebenenfalls nochmal melden..

gruß Martin

von Magnus Müller (Gast)


Lesenswert?

Jo. Und vergiss in diesem Zusammenhang bitte die Begriffe "SCL" und 
"SDA".

von Martin (Gast)


Lesenswert?

warum sollte ich die vergessen? ich dachte über die bei Pins 
funktioniert das ganze... hatte da was von Twin - Bus gelesen...

von Magnus Müller (Gast)


Lesenswert?

SDA und SCL gehören zum IIC-Interface (Atmel nennt es aus 
Lizenz-/Kostengründen "TWI"-Interface). Für die Ansteuerung des AD7808 
benötigst du aber das SPI-Interface, welches die Signale SCK, MOSI, MISO 
und SS verwendet.

Gruß,
Magnetus

von Martin (Gast)


Lesenswert?

Ahh.. ok.. auf die bin ich auch schon gestoßen hatte aber das mit dem 
TWI für irgendwie logischer empfunden. Aber ok. danke für dei Info werde 
mir das mal anschauen und mich bei aufkommenden Fragen nochmal melden 
danke.

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.