Forum: Mikrocontroller und Digitale Elektronik MTS103 3 definierte Zustände


von Tobias B. (time-bandit)


Lesenswert?

Hallo zusammen,
ich stehe vor folgendem Problem, was mich als Nicht-Elektroniker derzeit 
irgendwie überfordert :-)
Ich möchte 8 MTS103 (Miniaturschalter, gibt es recht günstig bei Pollin) 
als Eingang in einen AVR (Tiny461) einlesen.
Dabei nur 2 definierte Zustände abzufragen ist recht einfach, da jeweils 
die Aussenpins auf den mittleren Pin geschalten werden. Mit 5V und 0V 
auf den Aussenpins lässt sich das eindeutig detektieren.

Nun muss ich aber auch die Mittelstellung eindeutig erkennen.
Meine Idee war an die jeweils mittleren Pins über einen Spannungsteiler 
aus 2 Widerständen á 10k 2,5V zu legen, und dann per ADC auszulesen.

Funktioniert das ohne dass es da Kurzschlüsse gibt oder hat noch jemand 
eine bessere Idee?

von Mike (Gast)


Lesenswert?

Tobias B. schrieb:
> Funktioniert das ohne dass es da Kurzschlüsse gibt oder hat noch jemand
> eine bessere Idee?

Wo soll da ein Kurzschluss auftreten? Mal die mal den Schaltplan auf.
Einen 10-Bit ADC dafür zu verwenden, ist großzügig, aber Perlen vor die 
Säue. Funktionieren wird es und wenn du die Eingänge sowieso frei hast, 
spricht nichts dagegen.

Du kannst natürlich auch mehr als einen Schalter über passende 
Widerstände an einen EIngang hängen und mehr Spannungspegel auswerten.

von Tobias B. (time-bandit)


Lesenswert?

Die ADC Pins sind so oder so alle frei.
Insofern Perlen vor die Säue ja, aber nicht so schlimm :-)

Ich versuch mal morgen einen Schaltplan zu skizzieren.

von Tobias B. (time-bandit)


Angehängte Dateien:

Lesenswert?

Ich hab jetzt mal einen provisorischen Schaltplan gemalt.
Die Schalter haben einen dritten Zustand (Schalter Mitte) wo nichts mit 
den ADC Pins verbunden ist.
Da wirkt dann praktisch der Pullupwiderstand.

Funktioniert das so?

von Karl H. (kbuchegg)


Lesenswert?

Schalte gedanklich mal deine beiden Schalter auf die 3-Position und 
zeichne dir getrennt alle Widerstände auf, die dann wirksam werden.

Du wirst merken, dass mit jedem zusätzlichen Schalter, der in der 
'3'-Position ist, der 'obere' Widerstand des Spannungsteilers immer 
größer wird.

OK. Da es dir auf den exakten Spannungswert nicht ankommt und du im 
Prinzip nur wissen willst, ob der Eingang auf Vcc, auf GND oder irgendwo 
dazwischen liegt (natürlich mit einer kleinen Fehlertoleranz) wird das 
durchaus funktionieren, wenn du in der Programmierung nicht darauf 
bestehst, dass bei einem Schalter in '3'-Stellung die gemessene Spannung 
nicht Vcc/2 sein muss.


PS: Man kann auch auf einem ADC Eingang die eingebauten Pullup 
Widerstände gezielt zu bzw. weg schalten.

von Tobias B. (time-bandit)


Lesenswert?

Danke für das Feedback und ich muss doch nochmal ganz doof nachfragen.

Es waren schon die internen Pullup Widerstände gedanklich angenommen, 
nur die lassen sich so schlecht in den Schaltplan malen :-)

Also wenn ich das richtig verstanden habe, wirken die Widerstände R1 und 
R2 parallel zu R3.
Um den Einfluss der Pullupwiderstände auf die resultierende Spannung am 
Spannungsteiler möglichst gering zu halten, müssten also R3 und R4 
möglichst klein sein (z.B. nur 1k), richtig?

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
Noch kein Account? Hier anmelden.