Hallo zusammen, ich möchte das Prinzip eines R2R DA Wandler verstehen. Daher habe ich mir gedacht, ich bastel mir eine Platine. Da dies Neuland für mich ist, wollte ich mal hier in der Runde fragen, ob mein Schaltplan soweit ok ist. PS: Mir ist klar das ich kein OP verwende, das ist mir auch in diesem Fall egal. Ich möchte nur über eine Steckbuchse eine 12V Spannung vorgeben, die dann auf eine 5V Spannung runter geregelt wird. Über eine weitere 2-Polige Steckbuchse möchte ich das Analogsignal mittels Oszilloskop prüfen. Über den 6-Poligen Wannenstecker möchte ich den ATTiny Programmieren. Danke im Vorraus
R-2R heißt so, weil der eine R den Wert x hat, der andere R den Wert 2x. 22k und 10k passen da nicht so recht. Zudem könnte es je nach Samplefrequenz schlechte Effekte haben, das du 2 Ports benutzt, denn die kannst du ja nicht gleichzeitig aktualisieren. Beim Wechsel von A nach B bekommst du dann A Lo/Hi -> A Lo/B Hi -> B Lo/Hi. Ich würde das daher auf 8 bit beschränken. Das sind beides so Posten, die mir auf Anhieb aufgefallen sind, aber ob das auch reell Auswirkungen hat, weiß ich nicht. Forsche und berichte, bitte...
Naja, da liegen wenige CPU Takte dazwischen. Zum Verstehen ok, professioniell nicht ok. Nimm 10k und 20k als Werte. Eingangsseitig des U-Reglers 47-100uF, ausgangsseitig 10-20uF inkl. jeweils 100nF Keramik
Dummy schrieb: > Hallo zusammen, > > ich möchte das Prinzip eines R2R DA Wandler verstehen. Dafür reichen 4-8 Bit. 10 Bit sind sowieso eine Illusion, dafür müssen deine Widerstände DEUTLICH genauer sein. Daher habe ich > mir gedacht, ich bastel mir eine Platine. Da dies Neuland für mich ist, > wollte ich mal hier in der Runde fragen, ob mein Schaltplan soweit ok > ist. Nö, wurde ja schon gesagt. Nimm WIRKLICH R und 2xR, dann hast du die kleinsten Probleme mit den Toleranzen. Also 2x10k in Reihe. Meine Empfehlung. Beschränke dich auf 6 Bit, das reicht zum Verstehen des Prinzips. Natürlich alle an einem Port, sinnvollerweise PA0-PA5. > PS: Mir ist klar das ich kein OP verwende, das ist mir auch in diesem > Fall egal. Ich möchte nur über eine Steckbuchse eine 12V Spannung > vorgeben, die dann auf eine 5V Spannung runter geregelt wird. ??? Was hat das mit dem R2R DAC zu tun? Ach soo, du meinst die Stromversorgung des AVRs! Ohje, kann man das nicht NOCH umständlicher ausdrücken? >Über den 6-Poligen Wannenstecker möchte ich den ATTiny Programmieren. Die Pinbelegung scheint nicht zu stimmen, außerdem ist das Symbol maximal irritierend. So einen Wannenstecker zeichnet man wie in der Realität mit 2 Kontaktreihen. https://www.mikrocontroller.net/articles/AVR_In_System_Programmer#ISP Solche Miniknicke wie an R11 und R12 macht man nicht! Schaltplan richtig zeichnen
Ingo Less schrieb: > Eingangsseitig des U-Reglers 47-100uF, ausgangsseitig 10-20uF inkl. > jeweils 100nF Keramik Nö, das reicht so aus. Mehr braucht der 7805 nicht.
Pin 14 des Tiny sollte nicht nur mit C2, sondern natürlich auch mit dem GND-Netz verbunden werden.
Falk B. schrieb: >> PS: Mir ist klar das ich kein OP verwende, das ist mir auch in diesem >> Fall egal. Ich möchte nur über eine Steckbuchse eine 12V Spannung >> vorgeben, die dann auf eine 5V Spannung runter geregelt wird. > > ??? > Was hat das mit dem R2R DAC zu tun? Ach soo, du meinst die > Stromversorgung des AVRs! Ohje, kann man das nicht NOCH umständlicher > ausdrücken? Denke er meint einen OP am Ausgang des R2R zur Entlastung des Netzwerkes.
Dummy schrieb: > ich möchte das Prinzip eines R2R DA Wandler verstehen. Daher habe ich > mir gedacht, ich bastel mir eine Platine. Da dies Neuland für mich ist, > wollte ich mal hier in der Runde fragen, ob mein Schaltplan soweit ok > ist. Ich sehe da mindestens zwei Probleme. 1. Deine Widerstände haben nicht das Verhältnis 2:1, sondern 2.2:1. Es ist also ein R-2R2 Wandler. Das ergibt einen heftigen Fehler von 10%. Einen 10-Bit Wandler kannst du damit komplett vergessen. 3 Bit würden gehen. Korrekt baut man das so, daß man Widerstände eines Wertes mit geringer Toleranz verwendet und entweder immer zwei in Reihe für den 2R Part verwendet. Oder einen für 2R und zwei parallel für R. Durch Ausmessen kann man das noch verbessern; dazu sortiert man die Widerstände nach Größe und verwendet immer den jeweils kleinsten und größten für eine Reihen- (oder Parallel-) Kombination. Die aus der Mitte dann einzeln. 2. da es 10 Bit sind, kann der ATTiny gar nicht alle Bits auf einmal setzen. Es gibt beim Wechsel von einem Wert zum nächsten also immer einen illegalen Zwischenzustand. Ganz vermeiden kann man das, indem man die Bits mit einem Latch synchronisiert. Bzw, weil mehr als 8 Bit mit diskreten Widerständen ohnehin keinen Sinn ergeben, wird man 8 Bits von einem Port verwenden, die man dann auch alle auf einmal setzen kann. Früher gab es auch Widerstands-Netzwerke für diesen Zweck. Mittlerweile sind DAC-IC aber so preiswert, daß sich das nicht mehr lohnt.
Hallo, kennst Du diese Seite schon? https://www.tobiaspaul.net/dokuwiki/doku.php?id=elektronik:mikrocontroller:attiny26_dac
Dummy schrieb: > ich möchte das Prinzip eines R2R DA Wandler verstehen. Und warum nimmst Du dann R2,2R?
Jens M. schrieb: > R-2R heißt so, weil der eine R den Wert x hat, der andere R den Wert 2x. > 22k und 10k passen da nicht so recht. Statt den 10k kannst man jeweils 2 22k parallel schalten. Dann stimmt das Verhältnis der Widerstandswerte :-)
Alexander S. schrieb: > kennst Du diese Seite schon? > https://www.tobiaspaul.net/dokuwiki/doku.php?id=elektronik:mikrocontroller:attiny26_dac Ach guck. Noch einer, der Jespers DDS in schlechter nachgebaut hat. Hier das Original, nutzbar als "Funktionsgenerator des armen Mannes" mit 4 Wellenformen und einstellbarer Frequenz: http://www.radanpro.com/Radan2400/mikrokontroleri/Jesper%27s%20AVR%20pages%20-%20MiniDDS.htm
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.