-         

Ergebnis 1 bis 5 von 5

Thema: ADC & DAC

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    13.12.2005
    Alter
    30
    Beiträge
    5

    ADC & DAC

    Anzeige

    Hallo!

    Habe ein Problem eine analoge Spannung mit dem µC (PSOC) von Cypress einzulesen! Besser gesagt, ich weis nicht genau was eingelesen wird! Verwende einen 12bit ADC und möchte diesen eingelesen Wert dann mittels einen 8 Bit DAC wieder ausgeben! (hat zwar keinen sinn, aber ich möchte gerne verstehe wie das funktioniert!)
    Kann mit da jemand weiterhelfen?

    danke

    mfg
    Stefan

  2. #2
    Erfahrener Benutzer Begeisterter Techniker Avatar von H.A.R.R.Y.
    Registriert seit
    15.09.2005
    Beiträge
    306
    Im Prinzip möchtest Du von einem 12-Bit ADC die Werte zum 8-Bit DAC durchreichen. Dummerweise fehlen am DAC 4 bit. Üblicherweise nimmt man dann die 8 höchstwertigen Bit vom ADC (läßt die unteren 4 Bit unter den Tisch fallen) und gibt sie zum DAC aus. Das war's dann. Naja, fast. Da 4bit für den DAC fehlen, ändert sich sein Ausgang erst, wenn sich der ADC-Wert um mindestens 16 geändert hat. Faktisch erreichst Du am DAC die gleiche Spannung wie am ADC, nur um einen Faktor 16 gröber.

    Was Du vom ADC bekommst ist die digitale Repräsentation einer analogen Eingangsspannung. Typischerweise gehört dazu noch eine Refrenzspannung die zum Beispiel den Wert bei 100% festlegt. Dein 12-bit-ADC würde dann 0x0FFF als Wert ausgeben, wenn die Eingangsspannung die Referenzspannung erreicht (oder überschreitet). Legst Du 0V an den Eingang, dann liest Du normalerweise 0x0000 aus dem ADC. Bei halber Referenzspannung am Eingang siehst Du 0x07FF als digitalen Wert nach dem ADC.

    Es gibt auch Wandler, bei denen die Referenzspannung den halben Wert des Eingangsbereiches darstellt. Da hilft nur ein Blick ins Datenblatt und ein bißchen ausprobieren.

    Der DAC macht die Wandlung von digitalem Zahlenwert in analoge Größe (Spannung oder Strom). Einfach einen digitalen Wert reinschreiben und je nach Referenzspannung erhältst Du einen entsprechenden Anteil von der Referenz. Im Prinzip ist es Bruchrechnung:

    Ausgangswert = Referenzspannung * digitaler Wert / 2^Bitzahl

    Für 8 Bit DAC mit Spannungsausgang:

    Ua = Uref * n / 256

    n ist der digitale Wert (0..255) der reingeschrieben wird.
    a) Es gibt keine dummen Fragen, nur dumme Antworten
    b) Fehler macht man um aus ihnen zu lernen
    c) Jeder IO-Port kennt drei mögliche Zustände: Input, Output, Kaputt

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    13.12.2005
    Alter
    30
    Beiträge
    5
    Danke für deine Erklärung, aber weist du auch wie man das Softwaremäßig mit dem PSoC realisiert? Weil ich hab bei diesem µC meine Probleme dieses Wissen umszusetzen!!

    mfg
    Stefan

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.09.2004
    Ort
    Düsseldorf
    Beiträge
    3.948
    Du bekommst 12 Bit vom ADC
    Shifte 4 Stellen Rechts.
    Nimm die untersten 8 Bit und schick se an den DAC
    Fertig.

    DIe Befehle dafür kennste ja sicher.
    Gruß
    Ratber

  5. #5
    Erfahrener Benutzer Begeisterter Techniker Avatar von H.A.R.R.Y.
    Registriert seit
    15.09.2005
    Beiträge
    306
    Für den PSoC speziell muß ich passen.

    Allgemein wird zuerst der ADC, der DAC und vielleicht noch was anderes Initialisiert - damit die Peripherie weiß, was sie zu hat. Danach kannst Du in einer Endlosschleife den ADC mit einer Wandlung beauftragen, warten bis die Fertig ist und dann das Ergebnis (entsprechend verschoben halt - siehe Vorredner) zum DAC geben. Die Feinheiten stehen im Datenblatt/Datenbuch hier wohl schon eher. Zum Programmieren eignet sich alles (Assembler, C, ...).
    a) Es gibt keine dummen Fragen, nur dumme Antworten
    b) Fehler macht man um aus ihnen zu lernen
    c) Jeder IO-Port kennt drei mögliche Zustände: Input, Output, Kaputt

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •