Schalter monitoren

OP #2918040
Lesenswert?

Hi,
ich suche nach einem möglichst stromsparenden und simplen Weg den 
Zustand eines einfachen Schalters zu monitoren und dabei nur ein I/O-Pin 
meines MCU (MSP430F1611) zu verbrauchen. In 99,9% der Zeit wird der 
Schalter geschlossen sein. Wie würdet ihr das machen?
HighZ hin oder her, ich weiß nicht so recht wie große ich Pullup/downs 
ich verwenden kann, ohne Gefahr zu laufen, dass der Pegel am I/O mehr 
von internen Abläufen gestört wird als vom Pullup. Irgendwann muss da ja 
Schluss sein. Im Datenblatt finde ich da nix zu.
VG
Chrishen
#2918916
Lesenswert?

> Der Schalter ist nur dafür da vom µC überwacht zu werden

Dann ist das hier

> In 99,9% der Zeit wird der Schalter geschlossen sein.

aber eine reine Definitionssache.
Ob der Schalter dann tatsächlich physikalisch geschlossen oder geöffnet 
ist, ist eine reine Frage der softwaremässigen Auswertung. Und da nimmt 
man dann eben die Stellung, in der der wenigste Strom verbraucht wird.

Da man wohl davon ausgehen kann, dass der µC Eingang hochohmig genug 
ist, dass über ihn kein nennenswerter Strom fliesst, würde ich das so 
anschliessen

                        + 5V
                        |
                      Pullup   10k
                        |
         µC <-----------+
                        |
                          /
                         /
                        |
             -----------+------ GND


Ist der Schalter offen, dann liegt am µC-Pin über die 10k das 5V 
Potential an. Es fliesst praktisch gesehen kaum Strom.

Die Normalstellung des Schalters ist es, dass er eben nicht geschlossen, 
sondern offen ist. Und in den wenigen Fällen, in denen er dann 
tatsächlich mal geschlossen wird, rinnt eben ein bischen Strom durch den 
10k und Schalter nach GND. Da das aber nur in 0.1% der Zeit der Fall 
ist, ist es praktisch gesehen zu vergessen.
Gast #2919155
Lesenswert?

Karl Heinz Buchegger schrieb:
> Da das aber nur in 0.1% der Zeit der Fall
> ist, ist es praktisch gesehen zu vergessen.

Nicht unbedingt, 0,1% von einem Jahr sind auch schon 9 Stunden und damit 
4,5 mAh, die unnötig aus der Batterie entnommen werden. Ich würde 
entweder einen Pullup von 100k aufwärts benutzen oder noch besser einen 
Umschalter zwischen 0 und VCC benutzen. Vorausgesetzt allerdings, dass 
der Eingangspin nicht schon einen Pullup hat, den sollte man wenn 
möglich abschalten (per Software).

Gruss Reinhard
Persönliche Seite #2919282
Lesenswert?

Chrishen R. schrieb:
> Hi,
> ich suche nach einem möglichst stromsparenden und simplen Weg den
> Zustand eines einfachen Schalters zu monitoren


zu WAS?

vermute Du meinst "zu ueberwachen".......


> und dabei nur ein I/O-Pin
> meines MCU (MSP430F1611) zu verbrauchen. In 99,9% der Zeit wird der
> Schalter geschlossen sein. Wie würdet ihr das machen?


Dann wuerde ich keinen Pullup nehmen:

Schalte den Pin immer bei einer Abfrage auf AUSGANG und lade ueber einen 
Widerstand kurz einen Kondensator.
Der Kondensaor wird vom Taster/Schalter gebrueckt.
Schalte dann zurueck auf EINGANG und teste die Spannung am Kondensator 
auf H oder L.
Wenn L dann war Schalter geschlossen.
Wenn H dann war Schalter offen.
Schalte Pin wieder auf Ausgang und gebe L aus.
Ende


Stromverbrauch nur waehrend Abfrage!

Gruss

Michael

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren