Hallo, ich bin gerade am basteln an einer Schaltung mit dem ATMega8. Ich müsste nun am Anfang des Programms noch den Status eines 10poligen DIP Schalters auswerten. Leider habe ich nicht mehr genügend port pins für die 1:1 auswertung frei. Ein Schieberegister ginge zur Not, dann wirds aber ganzschön eng auf der Platine. Da ich aber noch 2 ADC Eingänge habe und den internen adc sowieso bisher nicht nutze, kam mir die Idee, die DIPS mit einem R/2R Netzwerk auszuwerten. Ich hab sowas noch nie gemacht, geht das überhaupt vernünftig bei 10 bits? Wie müsste ich das dann machen? hat jemand ein Beispiel? Gruß
Hallo, R2R setzt Umschalter voraus (du hast nur Einschalter). Ansonsten sollte es schon gehen 32 verschiedene Spannungswerte (5 Bit je ADC-Kanal) sicher zu unterscheiden. Gruß Anja
Das setzt zwei Dinge voraus: daß a) die Wandlerauflösung mehr als 10 Bit beträgt und b) Du ausreichend präzise Widerstände verwendest (genauer als 0.1%). Keine gute Voraussetzung. [Nachtrag] Wenn zwei ADC-Kanäle genutzt werden, sieht die Angelegenheit natürlich anders aus.
ja, deshalb dachte ich ja schon an zwei Kanäle. Wie darf in dem Fall die Toleranz sein? Was für werte sind dafür so allgemein üblich? und das Umschalterproblem: kann ich das durch pullups am Mäuseklavier lösen?
Oft lassen sich Pins mehrfach verwenden, beispielsweise meisten Pins einer Text- oder Grafik-LCD Ansteuerung.
ich hätte noch 8 Ausgangspins, die 230V TRIACs schalten. Die könnt ich am Anfang zum Einlesen kurz umfunktionieren, das stimmt. Aber wie verhindere ich, das die TRIACs dann währenddessen von meinem Mäuseklavier gesteuert werden?
Ephraim Hahn schrieb: > und das Umschalterproblem: kann ich das durch pullups am Mäuseklavier > lösen? Eher durch Konstantstromquellen bzw. durch Konstantstrombetrieb. (Erfordert aber einen Operationsverstärker). Wenn Du +/- 8 Digits bei 1024 Counts Auflösung haben willst braucht Du immer noch Widerstände besser als 0,5% (einschließlich Temperaturgang).
Verwende doch einfach ein Schieberegister. Da du die Werte wohl nur zum Programmstart brauchst, kannst du die Daten auch einfach per Software-SPI reinklappern und danach die Pins abschalten. Alternativ könntest du noch mit einem Latch zwischen Schaltern und Triacs umschalten, das wäre mir aber zu fehleranfällig.
Hallo, @Ephi 4 Dipschalter pro ADC Kanal ist doch kein Problem über einen Messwiderstand. Die ASCII Zeichnung sollte ausreichen. Beitrag "Taster mit ADC einlesen"
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.