Guten Tag, irgendwie versteh ich die Funktion von Pull-Up und Pull-Down Widerständen nicht, egal, wieviel ich darüber lese und es mir versuche vorzustellen. Nehmen wir mal einen Schalter an, der Low-Aktiv sein soll. Wenn der Schalter geöffnet ist, verbinde ich nun direkt meinen Mikrocontroller am Input mit der Versorgungsspannung. Wieso lese ich ständig, dass der Mikrocontroller jetzt am floaten wäre? Oder Störspannungseinkopplungen für High oder Low sorgen könnten? Ich komme da nicht hinter. Wenn ich nun zwischen der Versorgungsspannung und dem Input einen Widerstand schalte, dann teilt sich doch lediglich die Spannung. Nehmen wir an, ich bin elektrostatisch aufgeladen und komme an den Mikrocontroller und es findet eine kleine Entladung statt, oder ein elektromagnetisches Feld induziert an dem Eingang des Mikrocontrollers eine Spannung und verursacht einen Strom. Auch dann, müsste der Mikrocontroller doch Fehlersignale ausgeben, egal, ob der Pull-Up Widerstand geschaltet ist, oder nicht. Vielleicht kann mir das jemand mal erklären ..
Was für mich natürlich einleuchtend ist, dass dem "Pull-Up Widerstand" die Aufgabe einer Strombegrenzung zukommt, wenn der Schalter geschlossen ist.
Der PULLUP sorgt bei offenen SSchalter für einen definierten Zustand, nämlich +5V = "1". Dieser Zustand ist unempfindlich gegen Störungen, je nach Wert des Widerstandes. Wird der Schalter gegen GND geschlossen, dann fließt durch den PULLUP halt Strom, aber der Pegel ist "0".
Ein offener Micorocontrollereingang hat keinen definierten Pegel. Je nach Umfeld kann sein aktueller Pegel zwischen GND und VCC hin- und herschwanken. Um nun den Pegel auf einen definierten Zustand zu bringen, verbindet man ihn entweder mit GND oder VCC. Problem: wenn du nun einen Taster der bspw. nach GND. schaltet anschließt und zusätzlich den Ausgang mit VCC verbindest, um den "Ruhezustand" des Pins zu definieren, gäbe es bei betätigen des Tasters einen Kurzschluss. Also verbindest du den Pin nicht direkt mit VCC, sondern über einen Widerstand, der den Strom begrenzt. Das ist dann die Strombegrenzung von der du sprichst.
:
Bearbeitet durch User
Henry22 schrieb: > Nehmen wir mal einen Schalter an, der Low-Aktiv sein soll. Wenn der > Schalter geöffnet ist, verbinde ich nun direkt meinen Mikrocontroller am > Input mit der Versorgungsspannung. Wer macht den soetwas. Das würde doch in dem Moment, wo der Schalter geschlossen wird, einen Kurzschluss geben - vorausgesetzt du verstehst unter "Versorgungsspannung" VCC. > Wieso lese ich ständig, dass der Mikrocontroller jetzt am floaten wäre? Weil er, ohne Pull-Up, bei geöffnetem Schalter in der Luft hängt. > Nehmen wir an, ich bin elektrostatisch aufgeladen und komme an den > Mikrocontroller und es findet eine kleine Entladung statt Das ist eine ganz schlechte Idee, weil du "klein" nur sehr schlecht µC-verträglich dosieren kannst und die Eingangsschutzdioden sooh viel nun auch nicht vertragen.
Da die Eingänge sehr hochohmig sind, können elektrostatische Aufladungen (keine Induktion!) Störungen am Eingang verursachen. Ein PULLUP erfordert dann schon einen höheren Strom, der durch elektrostatische Aufladungen nicht entstehen kann.
Hallo Nils, genau so habe ich das ja auch verstanden. Das dieser Widerstand lediglich für die Strombegrenzung gilt. Wenn ich den Eingang an die Versorgungsspannung angeschlossen habe, liegt ja direkt am Eingang des Mikrocontrollers die Versorgungsspannung. Daher ist die Spannung am Mikrocontroller-Eingang fest die der Versorgungsspannung. Wenn der Eingang an die Versorgungsspannung angeschlossen ist, ist der Mikrocontroller doch nicht im floatenden "offenen" Zustand. Er ist ja mit U_BAT (V_CC) verbunden. Was soll denn der Pull-Up Widerstand "hochziehen"? Der Eingang ist doch schon mit der Versorgungsspannung verbunden.
Aber wieso hängt der Mikrocontroller denn in der Luft wenn er direkt mit der Versorgungsspannung verbunden ist und nicht in der Luft, wenn er über einen Widerstand mit VCC verbunden ist? Ich glaube das hier mein Verständnisproblem liegt ...
Henry22 schrieb: > Was soll denn der Pull-Up Widerstand "hochziehen"? Der Eingang ist doch > schon mit der Versorgungsspannung verbunden. Der Taster ist doch auch am Eingang. Wenn du den drückst, verbindet er doch GND mit dem Eingang, an dem schon Vcc ist. Wenn nicht, bitte Zeichnung auf was du dich beziehst.
Es geht eben darum, wenn der EinGang noch mit nichts verbunden ist. Ein als Eingang konfigurierter uC-Eingang ist weder mit VCC noch mit GND verbunden. Man sagt dann, der Eingang hängt in der Luft oder "floatet". Wenn du nun zyklisch den Eingang abfrägst, um zu wissen ob ein angeschlossener Taster gedrückt ist oder nicht passiert folgendes (Taster ist low active): Bei gedrücktem Taster ist alles in Ordnung, der PIN ist mit GND verbunden, PIN lesen gibt 0 bzw low. Bei nicht gedrücktem Taster floatet er (s.o.). Er schwankt andauernd zwischen 0 und 1 und jedesmal wenn du den Eingang ausliest kannst du nicht sicher sein, ob der gelsene Wert überhaupt stimmt. Und jetzt kommt die Erklärung aus meinem ersten Post ins Spiel.
Henry22 schrieb: > Aber wieso hängt der Mikrocontroller denn in der Luft wenn er direkt mit > der Versorgungsspannung verbunden ist Niemand verbindet einen Eingang, an dem ein Taster hängt, direkt mit der Versorgungsspannung.
Anscheinend überseh ich etwas, oder man sieht es nicht direkt. http://www.u-thews.de/Pull-R1.JPG <- zum Beispiel hier. Wäre der Pull-Up Widerstand nicht da, wieso floatet er denn dann? Tut mir leid, dass ich das nochmal frage, aber ich verstehe das einfach nicht. Der Eingang ist ja jetzt mit V_CC verbunden.
Wenn du den Widerstand weg läßt, hängt der Pin in der Luft und foated, wenn der Schalter offen ist. Ersetzt du den Widerstand durch eine Drahtbrücke, gibts einen Kurzschluss, wenn der Schalter geschlossen ist. Beide Zustände sind unerwünscht.
Hallo, ich nehme an das dir nicht ganz klar ist das der Eingang des IC bzw. des µC sehr hochohmig ist. Hochohmig bedeutet das eine Eingangsspannung nur sehr gering belastet wird, oder anders ausgedrückt das die Spannungsquelle am Eingang nur eine sehr geringe Leistung zur verfügung stellen muss um den Eingang eine Spannung, welche als "1" ausgewertet wird, anzubieten. Elektromagnetische Felder erzeugen an jeden Stück Draht ("Antenne") eine Spannung. Da wir immer und überall von Elektromagnetischen Felder umgeben sind steht also immer eine Spannung am hochohmigen Eingang an welche je nach zufälliger augenblicklicher höhe als "1" oder "0" interpretiert wird. Der Pull Down oder Pull Up Widerstand sorgt nun dafür das diese Spannung "zusammenbricht" und gleichzeitig über den relativ großen Stromfluss durch den Widerstand eine saubere und eindeutige "1" (z.B 5V) oder "0" (z.B. 0V) Spannung ansteht. Durch eine geschickte Wahl versucht man den Strom, und damit den zusätzlichen Stromverbrauch der Schaltung durch den Pullup- Pulldownwiderstand möglichst gering zu halten, und andereseits die Störempfindlichkeit möglichst gering zu halten. Übliche Werte liegen bei 10 kOhm bis 100kOhm - können (müssen) manchmal aber auch leider deutlich darunter liegen. Praktikus
Hallo, wenn der pullup NICHT da ist, ist der Eingang NUR mit dem offenen Taster veerbunden. Der Eingang hat KEINEN definierten PEGEL. Kein pullup bedeutet : da ist NICHTS anderes, auch keine Brücke nach +UB. Ludger
Als Ergänzung: Wird jetzt der Taster geschlossen fällt über den Pullup- Pulldownwiderstand eine "hohe" Spannung ab und am Schalter (geschlossen - niederohmig) fällt keine Spannung ab - der Eingang ist jetzt direkt mit + (z.B. 5V) oder - (z.B. =v) verbunden. Es kann nicht Schaden wenn die dich mal über das Ohmsche Gesetz, den Widerstand, Spannung, Strom und Spannungsteiler informierst. Praktikus
Ich habe mal ein Bild gezeichnet, wie ich mir das vorstelle: Zustand 3 ist für meine Fragestellung interessant. Wenn der Eingang zur Versorgungsspannung "kurgezschlossen ist", wird doch trotzdem ein (kleiner) Strom, weil der Mikrocontroller einen hochimpedanten Eingang hat, in den Mikrocontroller reinfließen. Man könnte auch von einer "Spannungseinprägung" sprechen. Lieg ich nun falsch, dass Zustand 3 und 4 - HIGH sind? Es gibt hier nur ein Bild, wo der Eingangspin in der Luft hängt und das ist doch Bild 1, oder irre ich mich da?
> Zustand 3 ist für meine Fragestellung interessant.
Hmm, welches Potential liegt denn dort an dem Pin wenn der Schalter
geschlossen wird?
Hallo Besucher, und genau darauf wollte ich hinaus! Dieses Potential ist doch nicht richtig bestimmt. Je nach der Innenbeschaltung des Mikrocontrollers, würde er doch nun entweder High oder Low annehmen. Der Widerstand ist doch dafür notwendig, dass wenn der Schalter geschlossen wird, die Potentialdifferenz fest definiert ist, durch U - U_GND, wobei U_GND natürlich 0 V sind. Ich möchte wissen, ob ich das richtig verstanden habe: Zustand 3 und 4, würden jeweils HIGH liefern. Wenn bei Zustand 3 nun der Schalter geschlossen wird, würde der Mikrocontroller nach gut glück entweder LOW oder HIGH entstehen, oder der Mikrocontroller würde anfangen zwischen HIGH und LOW zu oszillieren. Wird bei Zustand 4 der Schalter geschlossen, dann ist die Potentialdifferenz am Widerstand fest definiert, da der Widerstand mit Masse verbunden ist und der LOW-Pegel ist sicher. Das meinte ich die ganze Zeit mit Float. Selbst wenn kein Widerstand in der Verbindungsleitung vom Input zur Versorgungsspannung vorhanden ist, muss bei geöffnetem Schalter HIGH anliegen.
Zustand 3 ist der Zustand, der den Herstellern von Batterien am liebsten ist. Denn mit ein wenig Aufmerksamkeit solltest Du "sehen" können, dass das schlicht und einfach ein Kurzschluss ist. Bei einem Kurzschluss aber geht alles in die Hose. Der µP hat null Volt Betriebsspannung, die Peripherie hat null Volt, nur eine eventuelle Sicherung hat - kurzzeitig - was zu tun. Einem Eingang ist es in diesem Moment egal, welcher Pegel anliegt.
Hallo Amateur, sicherlich will ich keinen Kurzschluss bauen! Allerdings möchte ich nur wissen, ob ich das oben richtig erklärt habe: Theoretisch gesehen, wird der Mikrocontroller doch mit der Versorgungsspannung gespeist. Praktisch gesehen ist das kompletter Unsinn.
Selbstverständlich fällt bei der idealen und theoretischen Betrachtung an der Leitung garkeine Spannung ab, aber: Das Potenzial am Input beträgt ja genau +U_BAT
Was soll der Blödsinn? Typischer möchtegern-Ing.
Es geht hier um "Verständnis" und nicht um "Möchtegern-Ingenieur-Sein" ...
Natürlich liegt bei Zustand 3 der Eingang auf HIGH und floatet nicht, solange der Schalter geöffnet bleibt. In dem Moment wo du den Schalter schließt entsteht ein Kurzschluß, was zum Zusammenbrechen der Versorgungsspannung und hoffentlich zum Ansprechen einer vorhandenen Sicherung führt. Und damit das nicht entsteht benötigst du den Pullup Widerstand.
>Praktisch gesehen ist das kompletter Unsinn.
Ubat direkt mit Masse verbunden ist, nach meinem Wissen, ein
Kurzschluss.
Du kannst Dir natürlich beliebig viele Spannungen denken, aber
üblicherweise sind die Spannungen, die in einen µP reingehen irgendwie
mit diesem verbunden. Üblicherweise kommen sie auch irgendwo her und
normalerer weise ist ein Kurzschluss in einem geschlossenen System,
etwas, was mächtig stört.
Henry22 schrieb: > Wenn bei Zustand 3 nun der Schalter geschlossen wird, würde der > Mikrocontroller nach gut glück entweder LOW oder HIGH entstehen, oder > der Mikrocontroller würde anfangen zwischen HIGH und LOW zu oszillieren. Sorry, aber das disqualifiziert Dich vollständig. Such Dir einen anderen Beruf.
Vielen Dank stepp64 für deine Antwort. Das wollte ich die ganze Zeit wissen weil mir die Erklärung "Der Widerstand soll die Spannung hochziehen" viel zu ungenau ist.
An Frage: Mit deiner Polemik hast du dich selber disqualifiziert. Ich habe nicht vor einen Mikrocontroller in dieser Anordnung einzurichten. Es geht mir lediglich ums Verständnis! Und wenn es falsch ist, korrigier mich bitte. Ich habe diesen Thread nicht aus Langeweile eröffnet. Welches Potential liegt denn bei Zustand 3 an dem Knoten an, wenn der Schalter geschlossen ist? Die Versorgungsspannung sowie der Bezugspunkt sind an Ein und dem selben Knoten angeschlossen.
Und außerdem bin ich kein Ingenieur (nur mal so nebenbei)
Henry22 schrieb: > Mit deiner Polemik hast du dich selber disqualifiziert. Ich habe nicht > vor einen Mikrocontroller in dieser Anordnung einzurichten. Es geht mir > lediglich ums Verständnis! Und wenn es falsch ist, korrigier mich bitte. > Ich habe diesen Thread nicht aus Langeweile eröffnet. Aber er tut das aus diesem Grund. Ist halt'n Troll. Einfach ignorieren!
Henry22 schrieb: > Theoretisch gesehen, wird > der Mikrocontroller doch mit der Versorgungsspannung gespeist. Praktisch > gesehen ist das kompletter Unsinn. Was? Es ist Unsinn, den µC mit Versorgungsspannung zu speisen????
Hier mal ein wenig, leider nur ein ganz kleiner Teil des internen Aufbaus von einem digitalem Gatter http://de.wikipedia.org/wiki/Transistor-Transistor-Logik In meiner Ausbildung zum EGS mussten wir diese Technik(diskret) auch aufbauen. Hat für mich ne ganze Menge Hintergrundwissen geschaffen wie did funzt. Hat mehr spass gemacht als die Reine Digtechnik :D
Henry22 schrieb: > Welches Potential liegt denn bei Zustand 3 an dem Knoten an, wenn der > Schalter geschlossen ist? Die Versorgungsspannung sowie der Bezugspunkt > sind an Ein und dem selben Knoten angeschlossen. Kann ich dir sagen, welches Potenzial da anliegt. U = Ubat * Rschalter / (Rschalter + Rdraht) Gilt aber nur unter der Bedingung, dass deine Spannungsquelle den nötigen Strom liefern kann, ohne einzubrechen. Also Ri_quelle << Rschalter + Rdraht
Henry22 schrieb: > Welches Potential liegt denn bei Zustand 3 an dem Knoten an, wenn der > Schalter geschlossen ist? Die Versorgungsspannung sowie der Bezugspunkt > sind an Ein und dem selben Knoten angeschlossen. Ein Potential kann man nur bestimmen, wenn man es mit etwas anderem vergleicht. Da jetzt aber alles verbunden ist, kann man das Potential nicht bestimmen (du sagst ja, daß der Bezugspunkt am gleichen Knoten ist).
@Henry22: Wenn dich die Widerstände "stören", dann nimm einfach in Gedanken einen Wechselschalter. NO (normally open) auf Vcc, NC (normally closed) auf GND und den mittleren Kontakt (COM, Common) an den Eingang. Dann ist in jedem Fall die Versorgung oder Masse "hart" am Eingang. Ist machbar, aber Wechselschalter/-taster sind nun mal teurer als Schließer/Öffner + Widerstand. Ein anderes Problem tritt auf, wenn man (gewollt oder aus Versehen) den Eingang auf Ausgang umschaltet. Wenn der Controller eine 0 ausgibt aber der Schalter auf VCC schaltet, dann geht der Kurzschluss über den Controller-Pin. Der ist dann hinüber (der = Pin oder ganzer Controller, je nach Typ). Um da vorzubeugen macht man häufig noch einen Serienwiderstand (z.B. 5V/20mA => 270 Ohm) in Reihe zum Schalter, der begrenzt dann im Fehlerfall den Strom in den Controller und mit einem Pull-Down von 4,7-10k Ohm bekommt man immer noch einen sauberen 1-Pegel hin.
:
Bearbeitet durch User
Bernhard Spitzer schrieb: > @Henry22: Wenn dich die Widerstände "stören", dann nimm einfach in > Gedanken einen Wechselschalter. NO (normally open) auf Vcc, NC (normally > closed) auf GND und den mittleren Kontakt (COM, Common) an den Eingang. > Dann ist in jedem Fall die Versorgung oder Masse "hart" am Eingang. Ist > machbar, aber Wechselschalter/-taster sind nun mal teurer als > Schließer/Öffner + Widerstand. Vor allen Dingen dann, wenn sie so präzise sind, dass während des Umschaltvorgangs der COM Ausgang keine Nanosekunde lang nicht doch wieder in der Luft hängt. Bei den üblichen Wippen hat man nun mal das 'Problem', dass das Umkippen der Wippe auch wieder Zeit kostet, währenddessen der Ausgang weder mit NO noch mit NC verbunden ist.
Henry22 schrieb: > Welches Potential liegt denn bei Zustand 3 an dem Knoten an, wenn der > Schalter geschlossen ist? Die Versorgungsspannung sowie der Bezugspunkt > sind an Ein und dem selben Knoten angeschlossen. Um das Potential würde ich mir in dem Fall ehrlich gesagt weniger Sorgen machen :-) Wenn deine Spannungsquelle eine Autobatterie ist und dein Kabel nicht all zu dick, dann wird die Isolierung verdampfen bzw. schön rot vor sich hinglühen ehe dann das Kabel ebenfalls verdampft. Sowas nennt man dann mehr oder weniger einen Kurzschluss. Und der ist selten gewollt.
Karl Heinz schrieb: > Vor allen Dingen dann, wenn sie so präzise sind, dass während des > Umschaltvorgangs der COM Ausgang keine Nanosekunde lang nicht doch > wieder in der Luft hängt. Na ja, die Kapazität am Portpin beträgt ja auch ein paar pF, die braucht auch "etwas Zeit" zum entladen. :-) In der Zeit dürfte sich der Portzustand daher eher nicht mehrfach ändern, sondern gegen Zustand hin tendieren. > Bei den üblichen Wippen hat man nun mal das 'Problem', dass das Umkippen > der Wippe auch wieder Zeit kostet, währenddessen der Ausgang weder mit > NO noch mit NC verbunden ist. Kenne ich, bei meinem Board mit USB-Controller und Kippschalter am Signaturwiderstand reicht die "Flugzeit" des Kontaktes, dass Windoof ein neues USB-Gerät erkennt. Die oben genannten Erklärungen waren erst mal als Gedankenmodell gedacht. Der OP hat ja so sein gespaltenes Verhältnis zu Spannungspegeln und Kurzschlüssen...
:
Bearbeitet durch User
Was für ein Geeiere! Wo liegt denn der Unterschied zwischen Zeichnung 3 und 4? Und was verstehst du nicht daran?
Ich glaub ich verstehe Deine Frage jetzt. Es geht darum warum da überhaupt ein Widerstand wenn eh nach VCC verbunden ist. Fangen wir am Anfang an. Wir stellen uns ma dumm und sagen, da is ein Eingang. Wenn der da jetzt mit nix verbunden ist, dann hat der irgendeinen Wert. Kann alles sein. Von 0 bis 1 und alles dazwischen. Weil halt, jo, hängt in der Luft und tut was er will. Wenn da jetzt 'ne Taste ran soll und die ist mit GND verbunden, dann ist der 0 wenn die Taste gedrückt wird. Das ist schön. Wenn die Taste nicht gedrückt wird, dann ist der "irgendwas". Das KANN auch 0 sein. Das ist nicht schön. Weil dann würd der µC ja glauben, Du drückst wennst gar nicht drückst. Also verbinden wir den Eingang mal mit VCC. Damit ist, wenn jetzt nicht gedrückt wird, der Eingang 1. Das ist schön. Vor allem schön definiert. Wenn die Taste jetzt gedrückt wird, dann verbindet das den Eingang AUCH mit 0. Das ist nicht schön. Weil das verbindet VCC mit GND ohne einen Verbraucher dazwischen. Das nennt man Kurzschluss. Deswegen hängt man den Eingang an einen hochohmigen Widerstand (den "Pullup"). Und das andere Ende von dem Widerstand hängt man dann an VCC. Der Eingang wird also nicht direkt, sondern über diesen hochohmitgen Widerstand mit VCC verbunden. Damit kriegt man das beste aus beiden Welten. Wenn die Taste nicht gedrückt ist, dann kommt da "ein bischen 1" über den Widerstand in den Eingang. Weil ja, Du hast mit der anfänglichen Beobachtung recht, eigentlich, streng genommen, hast Du damit einen Spannungsteiler. Aber wenn auf der einen Seite davon 1 reinkommt und auf der anderen Seite kommt NIX rein, weil der Schalter halt offen ist, dann teilt das auch nix. Schließen wir den Schalter jetzt, dann kommt von der geschlossenen Verbindung SO viel "0" dass das bischen Abfall (oder in dem Fall eben Anstieg) wegen der hochohmigen Verbindung richtung VCC nicht ins Gewicht fällt und der Input trotzdem logisch zuverlässig 0 wird (siehe dazu auch das Datenblatt Deines µC, 0 ist nicht "nur 0 Volt". Da ist ein paar Centivolt Spielraum). Ich hoffe ich habe Deine Frage richtig "erraten".
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.