DAC 5156 einstellen

Gast #207392
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?");
Gast #207393
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

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.