| Jürgen 10.05.2006, 12:27 |
D-A-Wandler mit PIC, Stabilität von Spannungspegeln an Pins |
Hallo alle zusammen,ich möchte mir mit Hilfe eines PICs einen Funktionsgenerator bauen, der - in gewissen Grenzen - analoge Ausgangsspannungen und Spannungsverläufe erzeugen kann. Dies möchte ich jedoch nicht mit Hilfe der PWM realisieren, sondern ich möchte \"echte\" Spannungen produzieren.Ich habe mir das so vorgestellt, dass ich dafür 8 Ausgangspins verwende und an die Pins 0 bis 7 unterschiedliche Widerstände dranhänge. Dabei muss gelten, dass der Widerstand am Pin (i+1) halb so groß sein muss wie der Widerstand am Pin i (für 0 <= i <= 6).Diese Widerstände werden am Schluss irgendwie miteinander verschaltet, so dass man hinterher eine Abstufung des Gesamtstroms in 256 Stufen erhalten kann. Natürlich müssen die Widerstände so gewählt sein, dass der Gesamtstrom einen Wert von - glaub\' ich - 100 mA nicht überschreitet, wenn alle 8 Ausgangspins auf \'1\' stehen. Wegen des genauen Wertes müsste ich nochmal ins Datenblatt schauen.Jetzt meine Frage:Ist der an einem Ausgangspin eines PICs gelieferte Spannungspegel unabhängig vom Pegel der anderen Ausgangspins oder schwankt der, je nachdem wie der PIC strommäßig gerade ausgelastet ist?????Greets, JürgenPS: Ja, ich weiß, dass es auch fertige ICs mit einem DA-Wandler gibt. Meine Frage ist auch mehr \'akademischer\' Natur. |
| kalledom 10.05.2006, 13:23 @ Jürgen |
D-A-Wandler mit PIC, Stabilität von Spannungspegeln an Pins |
Hallo Jürgen,ein PIC schaltet standardmäßig bei logisch 0 den GND an die Ausgangs-Pins. Bei logisch 1 sind sie offen (Open Collektor Ausgänge).Einige Pins haben intern einen PullUp-Widerstand, die per Software aktiviert werden müssen.An den übrigen Ausgangs-Pins sind externe PullUp-Widerstände erforderlich.Damit ist die Frage der \'Schwankungen\' eigentlich beantwortet, sie sind abhängig von der Versorgungsspannung, wenn Stromspitzen / Spices des PIC ausreichend durch geeignete Maßnahmen kompensiert werden.Wenn Du Genauigkeiten von 0,1% erwartest, bekommst Du die ersten Probleme bereits bei den Widerständen des R2R-Netzwerks. Gleichzeitig mußt Du die PullUp-Widerstände beim R2R-Netztwerk berücksichtigen. |
| Posti 10.05.2006, 19:32 @ kalledom |
D-A-Wandler mit PIC, Stabilität von Spannungspegeln an Pins |
HiWie sieht es aus, wenn man die Widerstände mit Transistoren zuschaltet? |
| el-haber Catania, 11.05.2006, 09:33 @ Posti |
D-A-Wandler mit PIC, Stabilität von Spannungspegeln an Pins |
Hi,auch ich würde Dir zu einem Push-Pull Betrieb eines R2R-Netzwerkes raten.Dazu brauchst Du für 8 Bit 23 gleiche Widerstände, die Du aus einer normalen 1-2%Reihe nehmen kannst. Da sich der Fehler auf alle Bits gleichmäßig über je 3 Widerstände (bis auf das Low-Bit mit nur 2 Widerständen) verteilt, gleicht sich das recht schön aus. Als Treiber kannst Du einen L74HC244 mit echter Masse und annähernd +5V am Ausgang einsetzen. Die Werte der Einzelwiderstände kannst Du bei 4,7kOhm ansiedeln und am Ausgang einen Power-OpAmp zur impedanzwandlung anschließen.Deine Idee mit den gewichteten Widerständen wird zwar in D/A-Bausteinen der DAC8001er-Serie genutzt, bedürfen aber extrem genauem Abgleich, da jeder Widerstand für sich das Ergebnis verfälscht.Wikipedia mit R2R und DA-Converter oder DA-Wandler durchsuchen.CuStefano |
Thread-Ansicht
Jeder Ausgang, der LOW-Pegel hat, schaltet seinen Widerstand mit in die Parallelschaltung.Je mehr es werden, destor kleiner ist der Gesamt-Widerstand, bzw größer ist der Gesamt-Leitwert.An die Basen der Transistoren gehören noch Widerstände (1K)!So brauchst Du Dir keine Gedanken über den Maximalstrom bei mehreren genutzten Ausgängen machen.MfGPosti