Forum: Mikrocontroller und Digitale Elektronik Pull-Down Widerstand nötig 74er Reihe


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Mikka (Gast)


Lesenswert?

Habe nur eine kurze Frage zu Pull-Down Widerständen!

So zur Frage:

Ich will mit einem Decoder 74HC238 ein paar FlipFlop's 74HC273 ansteuern
über einen uC, kann ich die Ausgänge des uC direkt an die Eingänge der 
Bausteine hängen oder muss ich da noch einen Pull-Down Widerstand davor 
geben damit er ein Low Signal bekommt?

von Mikka (Gast)


Lesenswert?

Also einen definierten Zustand, sonst würde er ja in der "Luft" hängen!

von Hmm (Gast)


Lesenswert?

>sonst würde er ja in der "Luft" hängen!

Was genau lässt Dich das annehmen?

Schau Dir im Datenblatt die Ausgangsschaltung an oder sonst im Internet.
Die Dinger haben Push-Pull-Ausgänge.

von Mine Fields (Gast)


Lesenswert?

Solange der uC nicht konfiguriert ist, sind die Ausgänge normalerweise 
in Tristate. Also lieber Pull-Downs hinmachen, wenn das Verhalten beim 
Start definiert sein muss.

von Peter D. (peda)


Lesenswert?

Ja, ein Pulldown ist nötig am Reset des 273, sonst ist dessen Zustand 
beim Power-On unbestimmt.

Peter

von Harald W. (wilhelms)


Lesenswert?

Mikka schrieb:
> Habe nur eine kurze Frage zu Pull-Down Widerständen!

Wenn Du 74HC verwendest, solltest Du das auch so in die Überschrift
schreiben. die 74HC-Reihe verhält sich nämlich völlig anders wie
die 74er Reihe.
Gruss
Harald

von Hmm (Gast)


Lesenswert?

Au weia. Da hab ich nicht aufgepasst und die Überschrift hat mich 
irregeführt. Die HC brauchen keinen Pull-Up.

Aber der uC könnte welche brauchen. Kommt darauf an, welcher uC es denn 
ist.

von Mikka (Gast)


Lesenswert?

Oh okay sry!

Habe die 74HC Reihe und benutze einen ATMEGA 2560 als uC.

Also benötigt nur der 74HC273 beim Reset einen Pull-Down aber nicht bei 
den Dateeingängen.

Danke schon mal für die Antworten.

von Werner (Gast)


Lesenswert?

Harald Wilhelms schrieb:
> Wenn Du 74HC verwendest, solltest Du das auch so in die Überschrift
> schreiben.

Zum Glück steht's gleich im Eröffnungs-Post

Mikka schrieb:
> ... Decoder 74HC238 ... FlipFlop's 74HC273 ...

von Harald W. (wilhelms)


Lesenswert?

Mikka schrieb:

> Habe die 74HC Reihe und benutze einen ATMEGA 2560 als uC.

Wenn Du innerhalb einer Logikfamilie arbeitest, also 74er Ausgänge
auf 74er Eingänge oder 74HC Ausgänge auf 74HC Eingänge, brauchst Du
keine zusätzlichen Widerstände. Wenn Du aber unterschiedliche Logik-
familien oder Logik mit Transistoren oder Tastern verbinden willst,
brauchst Du zusätzliche Beschaltung.
Gruss
Harald

von Mikka (Gast)


Lesenswert?

Okay,

Meine Frage war ob ich zwischen uC (Ausgang) und 74HC Eingang einen 
Pull-Down Widerstand benötige.

von Georg G. (df2au)


Lesenswert?

Mikka schrieb:
> Meine Frage war ob ich zwischen uC (Ausgang) und 74HC Eingang einen
> Pull-Down Widerstand benötige.

Definitiv geht es ohne irgendeine Pullerei.

von Werner (Gast)


Lesenswert?

Mikka schrieb:
> Meine Frage war ob ich zwischen uC (Ausgang) und 74HC Eingang einen
> Pull-Down Widerstand benötige.

Nach Einschalten und Power-On Reset sind die µC Ausgänge erstmal 
Eingänge und hängen dann zusammen mit den angeschlossenen Eingängen der 
74HCxx über irgendwelche gespeicherten Ladungen an Gnd, bis das ganze 
über Leckströme irgendwo hingedriftet ist oder der µC die Pins auf 
Ausgang schaltet - kann also klappen.

von Gregor B. (Gast)


Lesenswert?

Wenn Du beim Einschalten einen definierten Zustand haben möchtest, der 
nicht von den Leckströmen der Eingangspins abhängt, würde ich Dir eine 
Beschaltung der Pins empfehlen.
Ansonsten heißt es:
Kann klappen, muss aber nicht.

von Georg G. (df2au)


Lesenswert?

Zwischen Reset und setzen der Ausgänge vergehen bei einem ordentlich 
geschriebenen Programm wenige Mikrosekunden. Wenn ein undefinierter 
Zustand für diese kurze Zeit stört, ist die Schaltung falsch ausgelegt.

von Peter D. (peda)


Lesenswert?

Georg G. schrieb:
> Zwischen Reset und setzen der Ausgänge vergehen bei einem ordentlich
> geschriebenen Programm wenige Mikrosekunden.

Ein Quarz brauch schon viele ms, um stabil zu schwingen. Das liegt an 
seiner hohen Güte. Auch Netzteile sind nicht in Null auf voll. Deshalb 
sind Resetzeiten von 50..500ms üblich. Da kann schon ein Relais anziehen 
und einen Fahrstuhlmotor eine Person zerquetschen lassen.

Georg G. schrieb:
> Wenn ein undefinierter
> Zustand für diese kurze Zeit stört, ist die Schaltung falsch ausgelegt.

Liest hier überhaupt einer, bevor er postet?
Wie gesagt, einfach nen Pulldown an Reset des 273 und die Sache ist 
gegessen. Nichts ist undefiniert. Und erst der MC zieht Reset auf high, 
wenn er bereit ist.


Peter

von Reinhard Kern (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Ja, ein Pulldown ist nötig am Reset des 273, sonst ist dessen Zustand
> beim Power-On unbestimmt.

Deshalb ist der /Reset-Eingang des 273 mit dem Systemreset zu verbinden 
- das ist der normale und logische Weg. Ich vermute mal, zu dem Zweck 
wurde er überhaupt eingebaut. Wie auch alle anderen solchen Pins im 
System. Sehr seltsame Diskussion.

Gruss Reinhard

von Georg G. (df2au)


Lesenswert?

Peter Dannegger schrieb:
> Liest hier überhaupt einer, bevor er postet?

Guter Beitrag. Wer sich für sicherheitskritische Anwendungen auf den 
internen Reset oder Brown Out Detection verlässt, hat den falschen 
Beruf.

Es ist wirklich erstaunlich, was für tolle Wahrheiten hier im Forum 
verbreitet werden.

von Peter D. (peda)


Lesenswert?

Reinhard Kern schrieb:
> Deshalb ist der /Reset-Eingang des 273 mit dem Systemreset zu verbinden

Was ist denn ein Systemreset?

Nach dem Ende des CPU-Reset sind die IOs immer noch ne Weile tristate 
und somit kann Unsinnn in die Latches geschrieben werden.
Der Reset des 273 muß also einen Pulldown haben und erst die CPU darf 
ihn auf high ziehen.


Peter

von Reinhard Kern (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Der Reset des 273 muß also einen Pulldown haben und erst die CPU darf
> ihn auf high ziehen.

Also sind alle irgendwo verbauten Resetschaltungen reiner Blödsinn, und 
die Reseteingänge aller ICs auch. Hat halt mancher so seinen ganz 
eigenen Stil. Völlig sinnlos noch irgendwas dazu zu sagen. Nur seltsam, 
dass allein bei Farnell einige hundert Typen ICs zur Reseterzeugung 
gelistet sind, aber die bei Maxim, TI usw. sind ja auch alle zu doof um 
zu begreifen, dass man sowas nicht benutzen kann.

Gruss Reinhard

von Peter D. (peda)


Lesenswert?

Du begreifst den Fehler in Deiner Logik nicht.

Der Peripherie-Reset muß immer länger anliegen, als der CPU-Reset!
Sonst sind ja die CPU-Pins immer noch tristate und die Peripherie fängt 
sich irgendwas ein und mancht Blödsinn.

Ein externer Reset-IC kann also keine Lösung sein!
Der Pulldown dagegen schon. Er hält die Peripherie in Reset, bis die CPU 
sich initialisiert hat. Bzw. er setzt die Peripherie auch wieder in 
Reset, wenn in der CPU z.B. das Brownout oder der Watchdog zuschlägt.


Peter

von Reinhard Kern (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Du begreifst den Fehler in Deiner Logik nicht.

Ich weiss wohl was da abläuft, nur geht man das normalerweise anders an: 
Reset kommt an Reset, und Signale wie /WR und ev. /CSs haben einen 
Pullup. Das funktioniert so nicht erst seit gestern, sondern schon seit 
Jahrzehnten.

Gruss Reinhard

von (prx) A. K. (prx)


Lesenswert?

Und das macht man auch deshalb seit Jahrzehnten so, weil man bei den 
ollen TTLs als Pulldown offiziell einen Widerstand von maximal 470 Ohm 
gebraucht hätte. Den ein normaler Logikausgang nicht hochgewuchtet 
bekommen hätte. Pulldowns sind nur in MOS-Technik praktikabel.

von Peter D. (peda)


Lesenswert?

A. K. schrieb:
> Pulldowns sind nur in MOS-Technik praktikabel.

Und worüber reden wir hier die ganze Zeit?

74HC238, 74HC273

Standard TTL war nie das Thema, also braucht man keine ollen Kamellen 
aufzuwärmen.


Peter

von Reinhard Kern (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Standard TTL war nie das Thema, also braucht man keine ollen Kamellen
> aufzuwärmen.

Das ist ja auch nicht der einzige Grund, warum man das so macht, aber 
offensichtlich muss ich dir den Ablauf erklären - hätte ich nicht 
gedacht.

1. Es wird ein Resetsignal erzeugt, das zuverlässig erst dann endet, 
wenn die Spannung bzw. alle relevanten Spannungen ihren Sollwert 
erreicht haben und das Clk-Signal garantiert ist. Das ist eigentlich 
eine bare Selbstverständlichkeit, denn sonst gibt es kein vorhersagbares 
Verhalten, ausser eben bei speziellen Reset-ICs, die müssen von 
annähernd 0V an funktionieren (Aber die existieren deiner Meinung nach 
ja garnicht oder jedenfalls nicht zu Recht).

2. Das Resetsignal setzt alles im System zurück, was einen Reseteingang 
hat. Dazu ist er nämlich da.

3. Hat der Prozessor einen Bus und damit ein /WR-Pin, gibt es nichts 
weiter zu tun - das Signal ist durch Reset inaktiv, und ev. vorhandene 
Dekodierlogik arbeitet bei Resetende stabil laut Punkt 1. Erzeugt man 
das WR-Signal per I/O selbst, kann man es mit einem Pullup oder Pulldown 
versehen.

4. So oder so, ein aktives WR-Signal kann nur unter Mitwirkung des 
Programmierers zustandekommen - noch ist es nicht so, dass Prozessoren 
einfach tun was ihnen gerade einfällt. Ganz besonders nicht nach einem 
Reset.

Ich bitte um genaue Erläuterung, was nach deiner Überzeugung daran 
falsch ist.

Reset durch den Prozessor per I/O zu erzeugen, erfordert nicht nur einen 
I/O-Pin für diesen Zweck, den man anderweitig womöglich brauchen könnte, 
es dürfte auch in sicherheitsrelevanten Schaltungen ebensowenig 
genehmigungsfähig sein wie ein Nothalt per Software.

Gruss Reinhard

von Peter D. (peda)


Lesenswert?

Reinhard Kern schrieb:
> in sicherheitsrelevanten Schaltungen ebensowenig
> genehmigungsfähig sein wie ein Nothalt per Software.

Warum sollte Software unzuverlässiger sein, als andere Realisierungen?
Es gibt z.B. Nottaster über CAN-Bus. Die Zulassung ist natürlich 
aufwendiger, als z.B. für einen MP3-Player.
Und auch in Flugzeugen erfüllt Software zunehmend Sicherheitsaufgaben.

Vorbehalte aus den Anfängen der Rechentechnik muß man irgendwann mal 
über Bord werfen, wenn sie nicht mehr gültig sind.
Die Zeiten, wo die Bedienerdamen in ihren Nylonstrümpfen die Computer 
zum Absturz brachten, sind schon lange vorbei.


Peter

von (prx) A. K. (prx)


Lesenswert?

Peter Dannegger schrieb:
> Standard TTL war nie das Thema, also braucht man keine ollen Kamellen
> aufzuwärmen.

Und warum ist heute falsch, was früher aus den beschriebenen Gründen der 
sinnvollste Weg war? Ich sehe bis jetzt nicht, wo der Vorteil deiner 
Methode liegt. Einen Nachteil sehe ich jedoch: Stromverbrauch.

von Peter D. (peda)


Lesenswert?

A. K. schrieb:
> Und warum ist heute falsch, was früher aus den beschriebenen Gründen der
> sinnvollste Weg war?

Hat das jemand behauptet? Nein.

Es wird doch genau der umgekehrten Eindruck vermittelt: "Wir haben das 
immer schon so gemacht, also darf man es mit modernen Bauelementen nicht 
anders machen."


Peter

von (prx) A. K. (prx)


Lesenswert?

Peter Dannegger schrieb:
> Es wird doch genau der umgekehrten Eindruck vermittelt: "Wir haben das
> immer schon so gemacht, also darf man es mit modernen Bauelementen nicht
> anders machen."

Das war nicht meine Intention. Von dir wurde allerdings der Eindruck 
vermittelt, dass man es heute mehr nicht so machen sollte, weil es nun 
auch anders geht. ;-)

von Peter D. (peda)


Lesenswert?

A. K. schrieb:
> Von dir wurde allerdings der Eindruck
> vermittelt, dass man es heute mehr nicht so machen sollte

Nö.
Ich habe nur gesagt, daß das CPU-Reset nicht ausreicht.
Die zusätzlich nötigen Pullups kamen erst viele Beiträge später und 
damit geht es wieder. Das habe ich dann nicht nochmal explizit 
bestätigt.


Peter

von Reinhard Kern (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Und auch in Flugzeugen erfüllt Software zunehmend Sicherheitsaufgaben.

Bei dreifacher Redundanz mit Mehrheitsentscheidung. Absolut 
repräsentativ für µC-Systeme und entspricht genau deiner Beschreibung 
einer modernen Resetschaltung.

Gruss Reinhard

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.