Forum: Mikrocontroller und Digitale Elektronik Ein- und Ausschalten einer µC-Schaltung per Software.


von Gerhard (Gast)


Lesenswert?

Hallo,

ich denke gerade über folgendes Problem nach: Ich habe eine 
µC-Schaltung, die von einem Schaltregler gespeist wird. Der Schaltregler 
hat einen "Enable"-Eingang, über den er ein- und ausgeschaltet werden 
kann.

Die Ausgangsspannung des Schaltreglers ist 3,3 Volt, die 
Eingangsspannung liegt im Bereich von 8 bis 40 Volt.

Ich habe ein paar Tasten, die an den µC angeschlossen sind. Eine davon 
würde ich nun gerne dafür nutzen, den Schaltregler und die µC-Schaltung 
einzuschalten. Ausschalten soll dann per Tastendruck oder Software 
gehen. Die Einschalt-Taste sollte aber auch normale Funktionen während 
des Programmlaufs erfüllen können.

Ich muss nun einen Weg finden, die bis zu 40 Volt irgendwie über diese 
Taste an den Enable-Eingang des Schaltreglers zu legen, so dass dieser 
startet. Der µC kann dann über einen Portpin und eine entsprechende 
Schaltung den Enable-Eingang "festhalten", bis man per Software den 
Portpin wieder freigibt und die Schaltung dadurch ausschaltet. Wichtig 
wäre natürlich, dass die Schaltung im ausgeschalteten Zustand "so gut 
wie keinen" Strom verbraucht.

Ich denke, dass so etwas ähnliches in jedem mobilen Computer 
verwirklicht ist. Auch da hat man ja keinen "mechanischen Ein- 
Ausschalter", sondern eine Taste, und das Ausschalten erfolgt per 
Software. Muss also irgendwie gehen :)

Ach ja, der Schaltregler ist ein LM3150. Das Datenblatt sagt über den 
Enable-Pin, dass mehr als 1,26 Volt den Schaltregler einschalten und zum 
Ausschalten möglichst weniger als 0,4 Volt anliegen sollten. (Das 
interne Blockschaltbild des LM3150 zeigt einen Pull-Up von 1 MOhm zur 
Eingangsspannung und eine Zenerdiode von 6V am Enable-Eingang).

Meine Gedanken sind wie folgt: MOSFET an den Enable-Eingang und mit 
Pull-Up und Zenerdiode am Gate den Schaltregler im Normalzustand 
ausschalten. Mit dem Portpin kann ich dann das Gate runterziehen und den 
Schaltregler damit einschalten. Richtig? Wie schließe ich am besten die 
Taste an?

von Karl H. (kbuchegg)


Lesenswert?

Gerhard schrieb:


> ausschalten. Mit dem Portpin kann ich dann das Gate runterziehen und den
> Schaltregler damit einschalten.

Wie zieht ein nicht laufender µC mit einem Portpin der nicht versorgt 
ist, den Pegel runter?


Ich denke du machst das zu kompliziert

                           GND
                            |
                          Pulldown-R
                            |
                            | A
   Vcc -------  Taster   ---+---  Diode ----+---   Enable Eingang
                                            |
                                            |
    Portpin --------------------  Diode ----+


Durch das Wired-Or (realisiert mit Dioden) und den Pulldown-Widerstand 
kannst du am Punkt A den Taster noch als normalen Taster benutzen.

von Gerhard (Gast)


Lesenswert?

> Wie zieht ein nicht laufender µC mit einem Portpin der nicht versorgt
> ist, den Pegel runter?

Man drückt und hält die Taste, der Schaltregler startet, der µC läuft an 
und zieht als erste Aktion den Portpin auf GND. Man muss die Taste halt 
ein paar ms festhalten, was man in der Praxis wohl tut.

>                            GND
>                             |
>                           Pulldown-R
>                             |
>                             | A
>    Vcc -------  Taster   ---+---  Diode ----+---   Enable Eingang
>                                             |
>                                             |
>     Portpin --------------------  Diode ----+
>

Hmmm. Problem ist halt, dass VCC bis zu 40 Volt betragen kann, also 
sollte man an Punkt A tunlichst keinen µC-Port anschließen.

Für den unteren Zweig: Welche Spannung liegt an der Kathode einer Diode 
an, wenn die Anode an 6 Volt liegt und die Kathode "in der Luft hängt" - 
weil der µC-Portpin hochohmig ist?

Ich bin mir nicht sicher, ob das so funktioniert. Trotzdem natürlich 
danke für deine Mühen. Ich glaube, ich werde das mal in einem 
Simulationsprogramm durchspielen...

von Karl H. (kbuchegg)


Lesenswert?

Gerhard schrieb:
>> Wie zieht ein nicht laufender µC mit einem Portpin der nicht versorgt
>> ist, den Pegel runter?
>
> Man drückt und hält die Taste, der Schaltregler startet, der µC läuft an
> und zieht als erste Aktion den Portpin auf GND. Man muss die Taste halt
> ein paar ms festhalten, was man in der Praxis wohl tut.
>
>>                            GND
>>                             |
>>                           Pulldown-R
>>                             |
>>                             | A
>>    Vcc -------  Taster   ---+---  Diode ----+---   Enable Eingang
>>                                             |
>>                                             |
>>     Portpin --------------------  Diode ----+
>>
>
> Hmmm. Problem ist halt, dass VCC bis zu 40 Volt betragen kann, also
> sollte man an Punkt A tunlichst keinen µC-Port anschließen.

Ah. Darauf hab ich vergessen. Widerstand und Zenerdiode lösen das 
Problem. Am Enable Eingang brauchst du, wieviel war das nochmal, 
1.5Volt? Mit einer 4.7 Zener sollte das also kein Problem mehr sein.

>
> Für den unteren Zweig: Welche Spannung liegt an der Kathode einer Diode
> an, wenn die Anode an 6 Volt liegt und die Kathode "in der Luft hängt" -
> weil der µC-Portpin hochohmig ist?

Moment. Der Portpin muss natürlich auf Ausgang und 1 geschaltet werden, 
damit der µC den Enable Eingang auf High zieht. Daran ändert sich ja 
nichts. Mit dem Taster wird eingeschaltet und danach muss der µC selbst 
für seine Versorgung sorgen.

Oder meinst du den anderen Portpin, der an A angeschlossen wird?
Der ist auf Eingang geschaltet und wird durch den Pulldown bei nicht 
gedrücktem Taster auf GND gezogen.

von Jobst M. (jobstens-de)


Lesenswert?

1
8-40V
2
    |
3
    +---T----10K--,
4
    |             |
5
    |             |
6
 .-----.          |
7
 | Vin |          |
8
 |     |  ,--|<------------<
9
 |     |  |       |           Ports
10
 |   EN|--+--|<---+-------->
11
 |     |          |
12
 |     |          |
13
 | Vout|-->3.3V   +----,
14
 |     |          |    |
15
                 ZD   10K
16
                 3V3   |
17
                  |    |
18
                  +----'
19
                 GND

So ...


Gruß

Jobst

von Gerhard (Gast)


Lesenswert?

Super, probiere ich mal aus. Danke!

von Marsupilami (Gast)


Lesenswert?

Die untere Diode verhindert, dass der Schaltregler abgeschaltet wird. 
Funktioniert so nicht.

von Purzel H. (hacky)


Lesenswert?

Was spricht dagegen den Schaltregler durchlaufen zu lassen ? Ein 
vernuenftiger Lowpower Regler sollte mit ein paar Mikroamps durchkommen. 
Der Controller ebenso.

von Steffen H. (avrsteffen)


Lesenswert?

Marsupilami schrieb:
> Die untere Diode verhindert, dass der Schaltregler abgeschaltet wird.
> Funktioniert so nicht.

Warum? Ist nicht noch die Taste "T" die es verhindert, dass die Z-Diode 
mit Strom versorgt wird?

von Marsupilami (Gast)


Lesenswert?

> Warum?

Der EN-Eingang hat einen internen Pull-Up von 1 MOhm nach Vin, das steht 
irgendwo oben. Das heißt, "default" ist an. Wir möchten aber im 
Ruhezustand (keine Taste gedrückt, Portpins des µC alle tristate) den 
Schaltregler abschalten. Daher der Pull-Down-Widerstand von 10k unten 
neben der Zenerdiode. Der ist auch richtig dimensioniert, allerdings 
verhindert die Diode in Sperrichtung das "down-pullen".

Untere Diode weglassen, dann sollte es gehen.

von Jobst M. (jobstens-de)


Lesenswert?

Marsupilami schrieb:
> Untere Diode weglassen, dann sollte es gehen.

Nö. Dann kann er die Taste nicht mehr benutzen.

Ich würde den 10K neben der ZD dann an den EN verfrachten.

Ich habe mir auch nochmal Gedanken über den Einschaltmoment, in dem der 
uC noch keine Spannung hat, gemacht. Damit der uC über seine 
Schutzdioden nicht die Spannung über der ZD weglutscht und damit das 
Einschalten verhindert, kommen nochmal 10K in Reihe zum Port.

1
8-40V
2
    |
3
    +---T----10K--,
4
    |             |
5
    |             |
6
 .-----.          |
7
 | Vin |          |
8
 |     |  ,--|<-------------<
9
 |     |  |       |           Ports
10
 |   EN|--+--|<---+---10K--->
11
 |     |  |       |
12
 |     | 10K     ZD
13
 |     |  |      3V3
14
 |     | GND      |
15
 |     |         GND
16
 |     |
17
 | Vout|-->3.3V   
18
 |     |


Gruß

Jobst

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.