D/A-Converter MCP4922 -E/P

  • Moin,


    ich benötige Hilfe bei der Verschaltung und Ansteuerung eines DACs.


    Es handelt sich um den MCP4922 http://cdn-reichelt.de/documen…0/MCP4921_MCP4922_MIC.pdf


    Die Verschaltung sieht wie folgt aus:


    1 V_DD = 5V
    2 NC
    3 CS = CE1
    4 SCK = SCLK
    5 SDI = MOSI
    6 NC
    7 NC
    8 LDAC = GND
    9 SHND = 3,3V
    10 V_OUT B
    11 V_REF B = 3,3V
    12 AVSS = GND
    13 V_REF A = 3,3V
    14 V_OUT A


    Gerne würde ich die Spannung V_REF A und V_REFF B mit einem Vorwiderstand auf 2,041 V senken, dazu benötige ich aber den Strom um den Vorwiderstand zu berechnen.


    Das Test-Programm für Kanal 1 auf maximal Spannung sieht so aus:


    Code
    import spidev
    import time
    
    
    spi = spidev.SpiDev()
    spi.open (0,1)
    spi.xfer2 ([95, 255])




    Ich möchte die Ausgangsspannung des DACs zwischen 0...5V regeln und diese dann mit zwei Operationsverstärkern auf Einheitssignal-Niveau (0...10V) bringen.


    Kann mir jemand helfen? :helpnew: :helpnew: :helpnew:


    Beste Grüße

    Edited once, last by Murphy. ().

  • Hallo Murphy,
    wo ist jetzt genau das Problem?


    Zum Vorwiderstand sollte dir die "Input Impedance" helfen, wobei ich da eher für einen Spannungsteiler plädieren würde.


    Gruß
    Chris


    PS: Dein BB-Code für die URL ist falsch

  • Hallo Murphy,



    Das Problem ist, dass ich keine Spannung am Ausgang messen kann...


    kannst Du keine Spannung messen, weil die Schaltung das nicht zulässt? Beliebter Fehler: Gemeinsame Masse fehlt.


    Kannst Du keine Schaltung messen, weil das Programm dies nicht richtig macht?


    Wir kennen weder Deine Schalte noch das Programm, weshalb sich hier eine Hilfestellung nur unter erschwerten Umständen geben lässt.


    Normalerweise sind im Datenblatt des D/A-Wandlers hilfreiche Informationen enthalten, wie die Schaltung aussehen kann / soll. Weiterhin ist meistens auch ein Protokoll / Zeitverlauf von Pegelwechseln enthalten, die man in seinem Programm abfragt oder ansteuert. Meistens muss auf einem Pin ein Pegelwechel getriggert werden, damit der D/A-Wandler seine Bits raushustet. Die musst Du dann nur auslesen.


    Weiterhin sollte die Suche nach jemandem, der das schon mal gemacht und publiziert hat, zum Erfolg führen.



    Beste Grüße


    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    • Icon-Tutorials (IDE: Geany) - GPIO-Library - µController-Programmierung in Icon! - ser. Devices - kein Support per PM / Konversation

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    Edited once, last by Andreas ().



  • Da ich wirklich nicht schön zeichnen kann, hab mal meine Paint-Skills ausgepackt.


    Ich hoffe man kann alles erkennen.





    Inwischen bin ich soweit das ich lineare Werte am Ausgang erhalte, allerdings nur 0...3,3V. Ich benötige für meine OP-Schaltung aber 0...5V.


    Im moment benutze ich die 3,3V als V_REF und die "5V" vom Raspberry als VDD, bei mir liegen aber nur 4,8V an. Ich denke, dass wenn ich die richtige Spannungsquelle nutze, also 5V und V_REF auf 2,5V einstelle sollte die Ausgabe von 0...5V funktionieren.


    Oder?