www.mikrocontroller.net

Forum: Compiler & IDEs Mega16 und MAX525 mit SPI-Programmierung


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

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen.

Ich versuche einen MAX525 DAC mit einem Mega16 über SPI zu steuern.
Ich kann zwar die einzelnen Kanäle ansprechen, jedoch ist die Ausgabe
des MAX525 stets 0V wenn die DAC Datenbits alle 0 sind (soweit
richtig), jedoch 4,7V für Datenbits !=0. Hängt das unter umständen mit
der SPI Taktung zusammen? Aus dem Datenblatt des MAX525 geht der SCL
Takt nicht hervor. Ist der bei SPI unkritisch? Engestellt ist zur Zeit
SCKL=F_CPU/128 bei 16Mhz. Gibts irgendwo Quellcode zur SPI
Programmierung mit nem Mega16?

Grüße

Markus

Autor: Jörg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Hängt das unter umständen mit der SPI Taktung zusammen?

Unwahrscheinlich.

> Aus dem Datenblatt des MAX525 geht der SCL
> Takt nicht hervor.

Doch.  Tabelle "TIMING CHARACTERISTICS" auf Seite 4 benennt Werte
für
die minimale SCL clock period und pulse width low/high. Effektiv
darfst du also maximal mit 10 MHz takten.

> Ist der bei SPI unkritisch?

Nach oben nicht, s.o., nach unten schon.  Ist halt ein bitserielles
Schieberegister, das mit jeder Flanke ein Bit weiterschiebt.  Selbst
maximale Flankenzeiten werden ja im Datenblatt nicht gefordert.

> Engestellt ist zur Zeit
> SCKL=F_CPU/128 bei 16Mhz.

Das sollte den Bedingungen natürlich allemal genügen.

> Gibts irgendwo Quellcode zur SPI Programmierung mit nem Mega16?

Bei dir auf dem Computer? ;-)

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

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Info.
Ist ja eigentlich auch logisch dass das SPI funktioniert, wenn ich die
einzelnen Kanäle ein/aus schalten kann. Problem ist die
Ausgangsspannung die ja laut datenblatt VRef*(Datenbits/4096) sein
soll. Bei mir scheint nur "Alles oder Nichts" zu funktionieren (0
oder VREF).
Hab ich vielleicht im Layout was vergessen? Habs mal angehangen.

Gruß

Markus

Autor: WuKo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Hab ich vielleicht im Layout was vergessen? Habs mal angehangen.

Das klingt ja erst einmal wie offene FBx-Eingänge. Aber die
sind laut Schaltbild korrekt mit den OUTs verbunden.

Vielleicht liegt es an der direkten Verbindung VREF-VDD?
Im Datenblatt steht dazu:
The reference input voltage range is 0V to (VDD - 1.4V)
Das Maximum für VREF ist also 3,6V. Typisch werden 2,5V verwendet.

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.