Forum: Mikrocontroller und Digitale Elektronik Ein-Taster + Bedientaster


von Uhu U. (uhu)


Angehängte Dateien:

Lesenswert?

Die Schaltung soll ein Einschalter für eine kleine µC-Schaltung mit 
einem ATMEGA328P werden. Der Taster soll zwei Funktionen haben:

1. Einschalten der Versorgungsspannung für den µC
   Wenn der µC PwrPort auf Low gezogen hat, hält er "sich selbst am
   Leben" und kann sich auch selbst wieder abschalten.
2. Wenn der Taster bei eingeschalteter Vcc gedrückt wird, soll der µC
   das über den TestSwPort mitbekommen.

Die eigentliche Einschaltmiemik (alles außer R5/C1) habe ich simuliert - 
das scheint zu funktionieren, zumindest theoretisch.

Die Spannung an allen Pins des 328P außer Reset darf maximal 0,5 V 
größer als Vcc sein - das könnte ein Problem an beiden Ports werden, 
denn im Moment des Einschaltens ist Vcc noch 0.

R5/C1 soll den Anstieg der Spannung am TestSwPort des µC verzögern und 
so die 0,5 V - Bedingung einhalten. (Ob die Zeitkonstante ausreicht, 
habe ich noch nicht nachgerechnet.)

Für den PwrPort ist mir noch nichts eingefallen, wie ich die 0,5 V - 
Bedingung einhalten kann - der liegt im abgeschalteten Zustand permanent 
auf Versorgungsspannung.

Wie bekommt man das in den Griff?

: Bearbeitet durch User
von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

Guten Morgen,

Uhu U. schrieb:
> R5/C1 soll den Anstieg der Spannung am TestSwPort des µC verzögern und
> so die 0,5 V - Bedingung einhalten. (Ob die Zeitkonstante ausreicht,
> habe ich noch nicht nachgerechnet.)
>

Ich würde mir da, um ehrlich zu sein, nicht so große Sorgen machen. Die 
Pins haben sicherlich interne Dioden zu Vcc. Über den Widerstand R5 
begrenzt du den Strom, der in den MCU hineinfließt. Die (interne) Diode 
begrenzt wiederum die Spannung. Wenn du "auf Nummer Sicher" gehen 
möchtest, dann schalte doch noch eine externe Diode davor (z.B. 
BAT64-04).

> Für den PwrPort ist mir noch nichts eingefallen, wie ich die 0,5 V -
> Bedingung einhalten kann - der liegt im abgeschalteten Zustand permanent
> auf Versorgungsspannung.
>

Hier gilt das gleiche wie oben. Vielmehr stören würde mich ggf. der 
permanente "Leckstrom" (besonders bei Batterieanwendung).

> Wie bekommt man das in den Griff?

Habe leider gerade keine Zeit dir das aufzuzeichnen. Du könntest über 
ein "Wired-Or" (z.B. BAT64-05) sowohl mit deinem Taster, als auch mit 
deinem "PwrPort" auf die Basis von Q1 gehen. Dann wäre die "keep-alive" 
umgekehrt, der MCU müsste ein HIGH-Signal ausgeben, damit die Schaltung 
an bleibt.

Im Übrigen: Ein Pin ist ein einzelner "Anschluss" eines MCUs, ein Port 
ist eine Gruppe von Pins (z.B. "die acht Pins PA0 bis PA7 sind PORTA").

Viele Grüße,
Alex

von Matthias L. (Gast)


Lesenswert?

Warum willst Du den uC abschalten, anstatt das sleep zu verwenden? So 
könntest Du ihn immer unter Spannung halten, den Schalter an einem Pin 
mit LevelInt anschliessen, und den Schalttransistor die Pheripherie 
abschalten.


Wäre das nicht einfacher?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Uhu U. schrieb:
> Für den PwrPort ist mir noch nichts eingefallen, wie ich die 0,5 V -
> Bedingung einhalten kann - der liegt im abgeschalteten Zustand permanent
> auf Versorgungsspannung.
Das Problem hier ist nicht diese "0,5V-Bedingung", sondern eher, dass 
bei ausgeschaltetem uC, also im spannungsfreien Zustand dieser Pin 
eben diese 0,5V haben wird (hierzu einfach mal die Innenbeschaltung 
eines solchen Portpins mitsamt den Schutzdioden ansehen und in die 
Schaltung einzeichnen) und damit den Mosfet einschaltet, denn
> Wenn der µC PwrPort auf Low gezogen hat, hält er "sich selbst am
>    Leben" und kann sich auch selbst wieder abschalten.
Du solltest für die Selbsthaltung eher am anderen TestSWPort Pin ein 
"high" ausgeben, denn das kann ein ausgeschalteter und spannungsloser uC 
sicher nicht mehr...

von Peter D. (peda)


Lesenswert?

Uhu U. schrieb:
> Wenn der µC PwrPort auf Low gezogen hat, hält er "sich selbst am
>    Leben" und kann sich auch selbst wieder abschalten.

Das kann er eben nicht, da jeder Pin ohne VCC auf low geht.

Nimm Power-Down und häng die Taste an nen Pin-Change-Interrupt.

von Alex22 (Gast)


Lesenswert?

Peter D. schrieb:
> Nimm Power-Down und häng die Taste an nen Pin-Change-Interrupt.

In der Tat, nach einem Blick ins Datenblatt sieht das mit < 0,6 uA 
Verbrauch im Power-Down bei 3,3 V und < 85 °C T_Amb doch recht sparsam 
aus...

von Rolf M. (rmagnus)


Lesenswert?

Peter D. schrieb:
> Nimm Power-Down und häng die Taste an nen Pin-Change-Interrupt.

Geht das mit Pin-Change? Ich dachte, das funktioniert nur mit den 
INT-Eingängen, und dann auch nur, wenn man sie auf Level-getriggert 
einstellt.

von msx (Gast)


Lesenswert?


von Crazy Harry (crazy_h)


Lesenswert?

Dein Taster (einseitig an GND; andere Seite mit 2 Schottky-Dioden 
Kathoden nach GND) zieht das Gate des FET auf GND (über eine der 
genannten Dioden). Parallel Gate nach GND ein NPN (der hält deine 
Schaltung eingeschaltet). Die andere Diode (mit Pullup) geht an deinen 
uC. Sorry aber der Schaltplan ist momentan nicht erreichbar ;o)

von Uhu U. (uhu)


Angehängte Dateien:

Lesenswert?

Matthias L. schrieb:
> Wäre das nicht einfacher?

Doch, das ist wohl einfacher und ohne den bipolaren Transistor unter 
Spannung ist der Leckstrom wohl auch nochmal deutlich kleiner.

Peter D. schrieb:
> Das kann er eben nicht, da jeder Pin ohne VCC auf low geht.

Er müsste max. 30 µA schlucken, um den Pin auf Low zu bekommen. Ob er 
das kann, muss wohl Spekulation bleiben, da der Pin mit einer angelegten 
Spannung von 3,3 V und Vcc = 0 sowieso weit außerhalb der Spezifikation 
betrieben würde.

Was verbirgt sich hinter dem rot markierten Symbol im Schaltbild im 
Anhang?

von Uhu U. (uhu)


Lesenswert?

Crazy H. schrieb:
> Dein Taster (einseitig an GND; andere Seite mit 2 Schottky-Dioden
> Kathoden nach GND) zieht das Gate des FET auf GND (über eine der
> genannten Dioden).

Da ist wohl ein Tippfehler drin...

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Uhu U. schrieb:
> Was verbirgt sich hinter dem rot markierten Symbol im Schaltbild im
> Anhang?

Kenne ich als Schaltzeichen für einen Analogschalter - da es hier nur um 
digitale Signale geht, wird das ein Schalter für den Digital Input sein. 
Im Falle des 'Sleep' Signals wird das PIN Signal also abgetrennt und 
durch den MOSFet auf Masse gezogen.

: Bearbeitet durch User
von Alex22 (Gast)


Lesenswert?

Auszug aus dem Datenblatt des ATMEGA 328P:
Kapitel 9.10.6 "Port Pins":
1
When entering a sleep mode, all port pins should be configured to use minimum power. The most important is then to ensure that no pins drive resistive loads. In sleep modes where both the I/O clock (clkI/O) and the ADC clock (clkADC) are stopped, the input buffers of the device will
2
be disabled. This ensures that no power is consumed by the input logic when not needed. In some cases, the input logic is needed for detecting wake-up conditions, and it will then be enabled. Refer to the section ”Digital Input Enable and Sleep Modes” on page 79 for details on
3
which pins are enabled. If the input buffer is enabled and the input signal is left floating or have an analog signal level close to VCC/2, the input buffer will use excessive power.

Kapitel 13.2.5 "Digital Input Enable and Sleep Modes":
1
As shown in Figure 13-2, the digital input signal can be clamped to ground at the input of the Schmitt Trigger. The signal denoted SLEEP in the figure, is set by the MCU Sleep Controller in Power-down mode, Power-save mode, and Standby mode to avoid high power consumption if some input signals are left floating, or have an analog signal level close to VCC/2.
2
SLEEP is overridden for port pins enabled as external interrupt pins. If the external interrupt request is not enabled, SLEEP is active also for these pins. SLEEP is also overridden by various other alternate functions as described in ”Alternate Port Functions” on page 80. If a logic high level (“one”) is present on an asynchronous external interrupt pin configured as “Interrupt on Rising Edge, Falling Edge, or Any Logic Change on Pin” while the external interrupt is not enabled, the corresponding External Interrupt Flag will be set when resuming from the above mentioned Sleep mode, as the clamping in these sleep mode produces the requested
3
logic change.

von Dirk M. (dirkm)


Angehängte Dateien:

Lesenswert?

Hi,

habe es mal so gelöst. Läuft seit Jahren zuverlässig...

Gruß
Dirk

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Uhu U. schrieb:
> Peter D. schrieb:
>> Das kann er eben nicht, da jeder Pin ohne VCC auf low geht.
> Er müsste max. 30 µA schlucken, um den Pin auf Low zu bekommen. Ob er
> das kann, muss wohl Spekulation bleiben
Du kannst ganz problemlos über die nicht im angehängten Schaltplan zu 
sehende Schutzdiode nach Vcc den kompletten Controller mit Spannung 
versorgen:
Beitrag "Re: Bosch E-Bike Antrieb Geschwindigkeitssensor"

> Was verbirgt sich hinter dem rot markierten Symbol im Schaltbild im
> Anhang?
Das ist ein Analogschalter.

von Uhu U. (uhu)


Lesenswert?

Dirk M. schrieb:
> habe es mal so gelöst. Läuft seit Jahren zuverlässig...

Interessant. Weißt du, was die Schaltung für einen Leckstrom hat?

von Uhu U. (uhu)


Lesenswert?

Lothar M. schrieb:
> Du kannst ganz problemlos über die nicht im angehängten Schaltplan zu
> sehende Schutzdiode nach Vcc den kompletten Controller mit Spannung
> versorgen:

Das erklärt die Vcc + 0,5 V... Dass die Diode im Schaltbild des Pins 
fehlt, ist natürlich weniger schön.

von Crazy Harry (crazy_h)


Lesenswert?

Uhu U. schrieb:
> Crazy H. schrieb:
> Dein Taster (einseitig an GND; andere Seite mit 2 Schottky-Dioden
> Kathoden nach GND) zieht das Gate des FET auf GND (über eine der
> genannten Dioden).
>
> Da ist wohl ein Tippfehler drin...

nö eigentlich nicht. hätte besser "Kathoden Richtung Taster" schreiben 
sollen.

..... aber so wie Dirks Schaltplan es zeigt.

: Bearbeitet durch User
von LostInMusic (Gast)


Lesenswert?

Von diesen Selbsthalteschaltungen scheint eine ganz besondere 
Faszination auszugehen... Aber wozu man diesen Aufwand bei µCs, die über 
einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir 
nicht. Weil solche µCs eine Schaltung mit eben jener Funktionalität ja 
schon eingebaut haben.

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

LostInMusic schrieb:
> Von diesen Selbsthalteschaltungen scheint eine ganz besondere
> Faszination auszugehen... Aber wozu man diesen Aufwand bei µCs, die über
> einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir
> nicht. Weil solche µCs eine Schaltung mit eben jener Funktionalität ja
> schon eingebaut haben.

Da hast du zugegebenermaßen Recht. Bevor ich, im Zuge dieses Threads, 
mal die Ruhestromaufnahme eines ATMEGA328P betrachtet habe, habe ich das 
auch nie als Möglichkeit erwogen.

Auch in fertigen Steuergeräten ist mir eine solche Lösung noch nicht 
begegnet. Ich muss mir mal ein paar Gedanken dazu machen, welche Vor- 
und Nachteile man sich damit einhandelt...

von Crazy Harry (crazy_h)


Lesenswert?

LostInMusic schrieb:
> Von diesen Selbsthalteschaltungen scheint eine ganz besondere
> Faszination auszugehen... Aber wozu man diesen Aufwand bei µCs, die über
> einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir
> nicht. Weil solche µCs eine Schaltung mit eben jener Funktionalität ja
> schon eingebaut haben.

Außer man schaltet damit zusätzlich stromhungrige Peripherie mit ein

von Paul B. (paul_baumann)


Lesenswert?

LostInMusic schrieb:
> Aber wozu man diesen Aufwand bei µCs, die über
> einen "Power Down"-Mode verfügen, treiben will, erschließt sich mir
> nicht.

Es ist ja möglich, daß der Kontroller nicht allein auf der Welt ist 
-sprich:
Es ist z.B. ein Display dran, was auch gleich mit abgeschaltet werden 
kann.
Ein gutes Beispiel dafür ist z.B. der gut bekannte Transistortester.

mfG Paul

von Uhu U. (uhu)


Lesenswert?

Ich habe ein paar Geräte mit solchen Einschaltfunktionen. Die einen 
scheinen überhaupt keinen Strom im abgeschalteten Zustand zu brauchen, 
die anderen suckeln die Batterien innerhalb 6 Wochen leer.

Über den Unterschied darf man sich schon mal Gedanken machen und wie 
Paul richtig feststellt, soll es ja µC-Schaltungen geben, die auch noch 
Peripherie haben. Selbst wenn jedes Teil davon einen guten 
Power-off-Modus hat, addieren sich dann diese Ströme und nicht wenige 
sind weit vom guten Power-off-Modus.

Es kann sich also durchaus lohnen, einen "Generalausschalter" 
einzubauen...

von chris (Gast)


Lesenswert?

Uhu U. schrieb:
> soll es ja µC-Schaltungen geben, die auch noch
> Peripherie haben.


Klar, aber die kann der µC ja auch selber abschalten, bevor er in Sleep 
geht.

Wo so eine Selbsthaltung aber durchaus sinnvoll ist, ist wenn auch noch 
ein Spannungsregler vor dem µC sitzt (z.B. Step-Up aus einer 
Batteriezelle).
Der würde sonst ja dauernd Strom verbrauchen.

von Dirk M. (dirkm)


Lesenswert?

Uhu U. schrieb:
> Dirk M. schrieb:
>> habe es mal so gelöst. Läuft seit Jahren zuverlässig...
>
> Interessant. Weißt du, was die Schaltung für einen Leckstrom hat?

Konnte in der uA Range von meinem Multimeter nichts messen.. Läuft schon 
gut 5 Jahre an einer CR2032.. Es wird bei Tastendruck kurz ein pollin 
funkmodul aktiviert und gesendet.

von Uhu U. (uhu)


Lesenswert?

Hat es einen speziellen Grund, dass R2 nur 10 k hat?

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.