www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik DAC AD7808 wie register setzen


Autor: Maddin (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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

Autor: Maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat denn niemand eine Idee?
Schafft der Mega32 das überhaupt?

Gruß Martin

Autor: Maddin (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: A. F. (artur-f) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wiso soll er sich mit I2C auseinander setzen? Der DAC hat SPI...

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: M. Beffa (m_beffa)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Martin (Gast)
Datum:

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

gruß Martin

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo. Und vergiss in diesem Zusammenhang bitte die Begriffe "SCL" und 
"SDA".

Autor: Martin (Gast)
Datum:

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

Autor: Magnus Müller (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.