Forum: Mikrocontroller und Digitale Elektronik Abfragen mehrere Schalter / Taster mit einem Portpin


von Uwe S. (us73)


Lesenswert?

Hallo und guten Abend,

im Rahmen meines (bzw. meiner Kinder) DCF-Lichtwecker und dessen 
Ungenauigkeit, wenn kein Funkempfang besteht (weil kein Quarz für den 
ATMEGA8 verbaut ist), will oder muss ich den Quarz nachrüsten.

Allerdings fehlt mir dafür nun ein Portpin.

Ich habe aber mehrere Schalter, die abgefragt werden, verbaut. Diese 
sind jeweils an einen separaten Pin verbschaltet.
Wenn ich nun also mehrere Schalter mit einem Pin abfragen könnte, hätte 
ich noch einen weiteren Pin frei, und damit mein Problem mit dem Quarz 
gelöst.

Also, einfache Frage:
wie frage ich 2 Schalter mit einem Pin ab ?#

Meine Lösung bzw. Überlegung ist, einen hochohmigen 1/3 zu 2/3 
Spannungsteiler zu nehmen, dessen Teilerabgriff auf einen ADC-Pin zu 
legen, und die Widerstände mit je einem Schalter überbrücken zu können. 
So könnte ich also bequem 2 Schalter mit einem Pin abfragen.

Hat jemand für mich eine andere oder bessere Idee ?

Oder ist das eine sinnvolle Lösung ?


Anmerkung: der Wecker funktioniert nur mit Netzteil, ein paar mA mehr im 
Verbrauch machen nichts aus.

Vielen Dank für Anmerkungen oder Vorschläge !

Gruß,
Uwe

von Falk B. (falk)


Lesenswert?

Das mit dem ADC ist der richtige Weg.

MG
Falk

von H.Joachim S. (crazyhorse)


Lesenswert?

Genau so kann man das machen, bis zu 8 Taster habe ich schon so an einen 
Pin gehängt. Bei geeigneter Widerstandswahl kann man sogar 
Mehrfachbetätigungen erkennen.
Gibt aber noch viele andere Möglichkeiten.

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Die Idee ist gut, die Ausführung hat Haken. Wenn beide Schalter 
betätigt werden, hast du einen Kurzschluss.

Stattdessen würde ich den Widerstand zwischen ADC-Abgriff und GND nicht 
überbrückbar machen und zwei (oder) mehr überbrückbare Widerstände als 
"oberen Widerstand" benutzen.

Deine Idee erinnert etwas an die Minidisc Remote Steuerungen
http://www.esrac.ele.tue.nl/~leon/minidisc/remote/

von tc (Gast)


Lesenswert?

Dein Vorschlag ist ok:

Ich mache das so: Ein Spannungsteiler mit >10k gegen VCC und einem 
beliebiegen Wert mit Schalter gegen GND. Die beliebigen Werte wählst du 
so, dass 2 gedrückte Schalter zusammen nie den Wert eines 3. ergeben 
können. So kannst du dann beliebig viele Taster an deinen PIN klemmen - 
gut du bist begrenzt durch die Auflösung des ADC ;)

von tc (Gast)


Lesenswert?

Edit:

So eine Kette wie: "10 33 100 330 1k 3k3" eignet sich wunderbar.
Du kannst so auch feststellen welche Zwei gedrückt sind.

von hans (Gast)


Lesenswert?

Wenn es wirklich nur ein Pin ist geht auch ein
Oszillator am Mega 8.

hans

von Falk B. (falk)


Lesenswert?


von Uwe S. (us73)


Lesenswert?

Das sind alles sehr gute Hinweise, vielen vielen Dank !

Mir scheint, ich bin auf dem richtigen Weg...

Es geht im Moment wirklich nur um einen einzigen Pin bzw. habe ich einen 
noch frei.

Nun werde ich also mal schauen, ob das Umbauen der bestehenden Platinen 
mit zusätzlichem Spannungsteiler oder doch mit einem externen Oszillator 
einfacher ist.
Für den Hinweis zum Oszillator nochmal einen extra-Dank, daran habe ich 
aber auch überhaupt nicht gedacht.

Vielen Dank !

Uwe

von Wayne M. (vibra)


Lesenswert?


von Peter D. (peda)


Lesenswert?

Manchmal sieht man, das Anfänger die 3 SPI-Pins ungenutzt lassen.
Diese sind ideal für Tasten geeignet.


Peter

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.