DIP Schalter mit ADC auswerten

OP #1591154
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ß
Gast #1591183
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
OP #1591417
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?
Gast #1591432
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).
Gast #1591447
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.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.