Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller - Verhalten beim Ausschalten


von Rainer Hallbach (Gast)


Lesenswert?

Guten Tag!

Ich habe mal eine Frage bezüglich des Verhaltens beim Ausschalten des 
Mikrocontrollers. Ich arbeite mit Texas-Controllern.

An meinem Controller hängt eine H-Brücke. Beim Einschalten sind ja alle 
Pins als Eingänge geschaltet. Dann schreibe ich ERST ein LOW an den Pin 
und deklariere ihn DANN als OUT. So sollte ich beim Einschalten keine 
Probleme bekommen.

Liege ich da richtig?

Was passiert nun beim Abklemmen der Versorgung? Wenn die Spannung sinkt 
- der Controller sollte dann ja in den Brownout gehen. Setzt er die Pins 
dann automatisch wieder SOFORT als Eingänge? Oder laufe ich Gefahr, dass 
er mir durch undefinierte Zustände die Brücke kurzschließt?

von Thilo M. (Gast)


Lesenswert?

Ich kann nur für AVRs sprechen, dort werden die Portpins beim Brownout 
hochohmig.
Evtl. nochmal das Datenblatt durchforsten? ;-)
Zur Sicherheit verriegele ich H-Brücken mit einem Flipflop gegen 
verbotene Zustände.

von Rainer Hallbach (Gast)


Lesenswert?

Thilo M. schrieb:
> Zur Sicherheit verriegele ich H-Brücken mit einem Flipflop gegen
> verbotene Zustände.

Gibt es dazu irgendwo im Netz eine Application Note auf die du dich 
beziehst? Das würde mich interessieren.

von Falk B. (falk)


Lesenswert?

@  Rainer Hallbach (Gast)

>Pins als Eingänge geschaltet. Dann schreibe ich ERST ein LOW an den Pin
>und deklariere ihn DANN als OUT. So sollte ich beim Einschalten keine
>Probleme bekommen.

Reicht nicht. Du braucht Pull-Down Widerstände, die die Pins sicher auf 
LOW halten, solange der uC im Reset ist.

>Was passiert nun beim Abklemmen der Versorgung? Wenn die Spannung sinkt
>- der Controller sollte dann ja in den Brownout gehen.

Ja. Un der macht einen Reset.

> Setzt er die Pins
>dann automatisch wieder SOFORT als Eingänge?

Ja.

> Oder laufe ich Gefahr, dass
> er mir durch undefinierte Zustände die Brücke kurzschließt?

Wenn die Pins Eingänge sind OHNE Pull-Down, kann das passieren.

MfG
Falk

von Иван S. (ivan)


Lesenswert?

Brownout -> POR.
After a POR, the initial MSP430 conditions are [auszugsweise]:
"I/O pins are switched to input mode as described in the Digital I/O 
chapter.
Other peripheral modules and registers are initialized as described in 
their
respective chapters in this manual."
MSP430x2xx Family User's Guide (Rev. E)

Gruß, Iwan

von Rainer Hallbach (Gast)


Lesenswert?

Falk Brunner schrieb:
> Wenn die Pins Eingänge sind OHNE Pull-Down, kann das passieren.

Ich habe sowieso noch ein paar Transistoren eines Arrays frei 
(ULN-Baustein) - der hat die Pull-Downs ja integriert, reicht das?

von Falk B. (falk)


Lesenswert?

@  Rainer Hallbach (Gast)

>Ich habe sowieso noch ein paar Transistoren eines Arrays frei
>(ULN-Baustein) - der hat die Pull-Downs ja integriert, reicht das?

Ja, aber wieso willst du noch einen (eher langsamen) ULN zwischen 
Controller und H-Brücke schalten? Ausserdem invertiert der, d.h. bei LOW 
am Eingang hast du dann HIGH am Ausgang, welche in die H-brücke geht . . 
.
Nicht so doll ;-)
Nimm einfache Pull-Down Widerstände und fertig.

MFG
Falk

von Purzel H. (hacky)


Lesenswert?

Man sollte das Thema richtig durchdenken. Es gibt auch den Zeitpunkt, wo 
der Controller noch nicht programmiert ist, und trotzdem die Peripherie 
ansteuern sollte.

von Thilo M. (Gast)


Lesenswert?


von Falk B. (falk)


Lesenswert?

@  Hey noch Was (Firma: Mumpitz) (hacky)

>Man sollte das Thema richtig durchdenken. Es gibt auch den Zeitpunkt, wo
>der Controller noch nicht programmiert ist, und trotzdem die Peripherie
>ansteuern sollte.

Das wird eher schwierig . . . ;-)

von Purzel H. (hacky)


Lesenswert?

Nein. Wird es nicht. Das System muss trotzdem immer in einem sicheren 
Zustand sein. Es soll Leute geben, die brauchen jeweils etwas Zeit bis 
der Code laeuft, die debuggen ihr System, nehmen Subsysteme in Betrieb, 
und dabei sollte die Peripherie ein definiertes Verhalten aufweisen.

FPGAs zB moegen keine floatenden Eingaenge. Dann zieht ein FPGA Strom, 
soviel dass man dabei die Speisung einreissen kann. Also pullups und 
pulldowns vorsehen.

von Иван S. (ivan)


Lesenswert?

Hey noch Was schrieb:
> Nein. Wird es nicht. Das System muss trotzdem immer in einem sicheren
> Zustand sein. Es soll Leute geben, die brauchen jeweils etwas Zeit bis
> der Code laeuft, die debuggen ihr System, nehmen Subsysteme in Betrieb,
> und dabei sollte die Peripherie ein definiertes Verhalten aufweisen.

Gruß Iwan,
der gerade an Lötbrücken, Dioden und Jumper denkt.

von Purzel H. (hacky)


Lesenswert?

Naja. Der erste Schritt der Inbetriebnahme ist ja auch nachzusehen, ob 
die vom Controller noch nicht angesteuerte Peripherie in einem 
vernuenftigen Zustand ist und bleibt. Dh langsames hochfahren der 
Speisung mit Strombegrenzung und so.

von Rainer Hallbach (Gast)


Lesenswert?

Thilo M. schrieb:
> Ist ein einfaches Flipflop.

Ja Flipflop is klar, nur wie implementierst du das in deine Brücke?

von Falk B. (falk)


Lesenswert?

@  Hey noch Was (Firma: Mumpitz) (hacky)

>Nein. Wird es nicht. Das System muss trotzdem immer in einem sicheren
>Zustand sein.

Das hat keiner bezweifelt. Aber der CONTROLLER steurt im 
unprogrammierten Zustand GAR NICHTS an. Nur weil die Pins am Signal 
hängen passiert da nicht vom Controller aus. Also sorgen die Pull 
Up/Down für sichere Verhältnisse.

MFG
Falk

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.