Forum: Mikrocontroller und Digitale Elektronik Geregeltes Einschalten von 74er Schaltungen


von A. G. (grtu)


Lesenswert?

Hallo zusammen,

angenommen ich habe eine Schaltung aus einem uC und mehreren 74er 
Bausteinen, beispielsweise zwei uC-Pins die an einem 74* AND-Gatter 
angeschlossen sind, dessen Ausgang dann mit einem weiteren uC-Pin an 
einem 74* OR-Gatter hängt, und eventuell noch mehrere Bausteine 
dahinter. (Ja, ja, ich weiß, dass das in der Form quatsch ist. Es ist 
eine prinzipielle Frage.)
1
uC -\
2
     74*
3
uC -/   \
4
         74* --- Ausgang
5
uc -----/

Ich will nun verhindern, dass beim Einschalten irgendwelche 
undefinierten Zustände bei den Ausgängen auftreten. Wie macht man sowas? 
Den letzten der Bausteine in der Kette durch einen Transistor/FET 
verzögert einschalten?

Schöne Grüße,
grtu

Edit: Ganz vergessen, beim Einschalten werden alle uC-Pins so 
geschaltet, dass der Ausgang der 74er-Kette Low ist. Ich will speziell 
verhindern, dass beim Einschalten der Ausgang kurz High wird.

: Bearbeitet durch User
von Schlumpf (Gast)


Lesenswert?

Was wäre denn z.B. ein undefinierter Zustand?
Das musst du anhand deiner konkreten Applikation entscheiden und kann 
m.E. nicht so pauschal beantwortet werden.

von Max M. (jens2001)


Lesenswert?

A. G. schrieb:
> Wie macht man sowas

Man guckt ins DB des uC was nach einem Reset mit den I/O-Pins ist!

von (prx) A. K. (prx)


Lesenswert?

TTLs lassen sich unabhängig voneinander einschalten, da die Eingänge 
auch ohne Vcc 5,5V verkraften. Auf CMOS trifft das nicht zu, die müssen 
also gemeinsam eingeschaltet werden.

Im Verlauf des Einschaltens sind die Ausgänge undefiniert, egal ob TTL 
oder CMOS. Folglich gilt es, den Ausgang selbst bis zu einem stabilen 
Zustand abzutrennen, nicht die Versorgung des Bausteins.

von Thomas M. (langhaarrocker)


Lesenswert?

Spricht etwas gegen Pullup/-down Widerstände? Die können die Eingänge 
der Logik ICs auf definierte Pegel bringen bis die Initialiserung des 
µCs die Portpins auf Ausgang geschaltet hat und das Ansteuern übernimmt.

von Stefan S. (chiefeinherjar)


Lesenswert?

A. G. schrieb:
> Ich will nun verhindern, dass beim Einschalten irgendwelche
> undefinierten Zustände bei den Ausgängen auftreten. Wie macht man sowas?

Da - in den meisten Fällen - die Reset-Zustände der MCU-Pins hochohmig 
sind bzw. als (floatende) Eingang geschaltet werden wird dort ein 
einfacher PullUp bzw. Pulldown (abhängig vom gewünschten 
"Default"-Verhalten) ausreichen.

von A. G. (grtu)


Lesenswert?

Max M. schrieb:
> A. G. schrieb:
>> Wie macht man sowas
>
> Man guckt ins DB des uC was nach einem Reset mit den I/O-Pins ist!

Es geht ja nicht nur um die uC Pins. Angenommen man hat eine verkettete 
Schaltung von vielen Bausteinen, teils invertierend. Ich würde erwarten, 
dass je nach Einschaltdauer der verschiedenen Bausteine kurzzeitig 
zufällige Signale am Ausgang landen können.

von Schlumpf (Gast)


Lesenswert?

A. G. schrieb:
> Edit: Ganz vergessen, beim Einschalten werden alle uC-Pins so
> geschaltet, dass der Ausgang der 74er-Kette Low ist. Ich will speziell
> verhindern, dass beim Einschalten der Ausgang kurz High wird.

Wills du also die Zeit "überbrücken", die der uC benötigt, um seine 
Ports richtig einzustellen?
Dann mache es über Pull-Widerstände, wie bereits beschrieben.

Oder willst du Glitches vermeiden, die aufgrund der Gatterlaufzeiten in 
den 74ern entstehen können?

von Schlumpf (Gast)


Lesenswert?

A. G. schrieb:
> Es geht ja nicht nur um die uC Pins. Angenommen man hat eine verkettete
> Schaltung von vielen Bausteinen, teils invertierend. Ich würde erwarten,
> dass je nach Einschaltdauer der verschiedenen Bausteine kurzzeitig
> zufällige Signale am Ausgang landen können.

Ahh zu spät gelesen..
es geht dir also um die Glitches.

Da musst du deine konkrete Logik anschauen, ob diese überhaupt Glitches 
erzeugen kann.
Falls ja, dann könntest du am Ende der Logikkette den Ausgang nochmal 
über ein AND mit einem uC Pin verknüpfen, der dann erst später den 
Ausgang frei gibt...

Eventuell reicht aber auch ein kleiner Kondensator am Ausgang (wenn 
deine Ausgangssignale nicht sehr schnell sein müssen)

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Ich würde es so versuchen, daß ein Schaltungsteil ein Reset-Signal 
erzeugt, welches beim Einschalten der Betriebsspannung auch definitiv 
"low" bleibt und diesen Zustand nicht ohne eine bestimmte Abfolge von 
"Kommandos" verlässt.

Damit kann man die gesamte Schaltung in einem definierten Zustand und 
falls erforderlich Ausgänge von z.B. Treiberschaltkreisen gesperrt 
halten.

Die Schaltung läuft dann erst an, wenn dieser Reset (mit stabilisierter 
Betriebsspannung) gelöst wird. Könnte man z.B. einfach mit einer 
bestimmten Kombination aus µC-Pins machen (die sich ohne angelaufenes 
Programm alle gleich verhalten) und Zeitverzögerung, die den Anlauf des 
µCs überbrückt.

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.