mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik DAC 5156 einstellen


Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo habe mal eine Frage zum DAC 5156 (12 Bit DAC). Wie kann ich hier
die Max- und Min-Spannung einstellen. Habe mal folgendes gefunden, weis
aber nicht ob das so stimmt. Die Daten sende ich per SPI mit Hilfe eines
Atmega32.

void SendSPIData(unsigned int spi_data)
{
  SPCR = 0xD2;  //Schnell für DAC Teiler (fosc / 16 = 1 Mhz)

  delay_us(10);
  spiROk = 0;
  SPDR = ((spi_data & 0xFF00)>>8); //8Höherwertige Bit über SPI senden
  while (spiROk ==0);//spiRok = 1 wenn übertragung abgeschlossen
  spiROk = 0;
  SPDR = (spi_data & 0x00FF); //8 Niederwertige Bit über SPI senden
  while (spiROk ==0); //spiRok = 1 wenn übertragung abgeschlossen
  delay_us(10);
  delay_us(10);
}

void SetDAC(unsigned char channel, unsigned int voltage)
{
  unsigned int x = 0;
  unsigned int spannung0;
  unsigned int spannung1;

  if (channel==1)
  {
    spannung1 = voltage;   //***********für was wird das benötigt
    voltage = (voltage / 7.25);
    voltage = (voltage & 0x0FFF);
    x = 0x8000;           //Channel Bit A0 setzen
    x = (x | 0x4000);     //Input Registers(DAC) load and update
    x = (x | (voltage<<1));
    SendSPIData(x);
  }

  if (channel==0)
  {
    spannung0 = voltage;
    voltage = (voltage / 7.25);
    voltage = (voltage & 0x0FFF);
    x = 0x4000;   //Input Registers(DAC) load and update
    x = (x | (voltage<<1));
    SendSPIData(x);
  }
}

Jetzt möchte ich den DAC setzen, stimmt das so:
SetDAC(0,Oberwert_0);
SetDAC(1,Unterwert_0);
printf("Spannungen sind gesetzt?");

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gibt es denn niemanden der so etwas schon mal gemacht hat oder hat
jemand eine Anleitung auf deutsch da mein Englisch nicht so toll ist.
Und ich im Datenblatt des DACs nichts brauchbares finden kann.

Gruß Tim

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.