Ich versuche, eine Schaltung herzustellen, bei der das Schließen eines Schalters einen GPIO von niedrig auf hoch ändert, und ich möchte den Strom so weit wie möglich minimieren, um die Batterielebensdauer zu verlängern. Der Chip, den ich verwenden werde, ist Nordic Semiconductors nRF51422 ( https://www.nordicsemi.com/eng/Products/ANT/nRF51422 ).
Mein Verständnis von Pull-up- und Pull-down-Widerständen ist, dass sie den Strom begrenzen, den Chip schützen und den Stromverbrauch verringern, während der GPIO weiterhin entweder hochgezogen oder heruntergezogen bleibt. Ein zu großer Pull-Up/Down-Widerstand erhöht die Zeitkonstante der Schaltung, wodurch die Übergänge von hoch nach niedrig langsamer werden, und „schiebt“ den GPIO aus dem Bereich, in dem er als hoch oder niedrig erkannt wird.
Die genaue Anordnung, die ich mir vorgestellt hatte, war diese. Ich verwende einen sehr großen Pulldown-Widerstand (in der Größenordnung von Megaohm). Der Spannungsabfall an diesem Widerstand ist so groß, dass er sich im Wesentlichen wie ein Pull-up-Widerstand verhält, mit dem zusätzlichen Vorteil eines außergewöhnlich geringen Stromverbrauchs. Ich habe dann einen Schalter, der im geschlossenen Zustand den GPIO über den Widerstand der empfohlenen Größe (13 kOhm) mit Masse verbindet. Der Schaltplan würde dann einem GPIO ähneln, das über zwei parallele Widerstände mit Masse verbunden ist, einen sehr großen und einen viel kleineren, der sich wie ein einzelner kleinerer Widerstand verhält. Wenn der Schalter also geschlossen ist, ändert sich der digitale Wert des GPIO von hoch nach niedrig , und im geöffneten Zustand gibt es nur ein kleines Rinnsal Strom, was die Batterielebensdauer immens spart.
Funktioniert das? Macht insbesondere meine Idee mit dem großen Widerstand überhaupt Sinn?
BEARBEITEN:
Ich werde meine Frage umformulieren und einen Schaltplan hinzufügen.
Mein Verständnis ist also, dass GPIOs eine hohe Eingangsimpedanz haben, daher einen sehr kleinen Leckstrom, wenn sie mit Masse verbunden sind. Wenn ich einen Widerstand mit einer Impedanz von beispielsweise dem 10-fachen der Eingangsimpedanz des GPIO zwischen dem Pin des GPIO und Masse anschließen würde, würde der GPIO-Pin bei 0,9 * VDD liegen? Ich gehe davon aus, dass die Eingangsimpedanz des GPIO unabhängig davon ist, was daran angeschlossen ist.
Ich habe einen Schaltplan erstellt, der veranschaulicht, was ich denke, indem ich den GPIO als Black-Box-Widerstand vereinfache. Schema
Würde das funktionieren? Ist mein Schaltplan einfach falsch?
Wenn also der Schalter geschlossen ist, ändert sich der digitale Wert des GPIO von hoch nach niedrig, und wenn er geöffnet ist, fließt nur ein kleiner Strom, was die Batterielebensdauer erheblich verlängert.
Sie haben die falsche Vorstellung. Ein Hochziehen sollte abgesehen vom Leckstrom des GPIO nicht zu viel Strom führen
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Im ersten Bild zieht ein Hochziehen den GPIO IN hoch. Der einzige Strom ist der Leckstrom, der zum Messen des Spannungseingangspegels erforderlich ist. Das sind wenige nA, ein Bruchteil eines Milliampere. Dies kann meistens als Input Logic High/Low (ILH, ILL) in einem Datenblatt überprüft werden, aber ich kann es in Ihrem Produkt nicht finden. Gehen Sie von durchschnittlich 10 nA oder weniger aus.
Nur im zweiten Bild ist ein nennenswerter Strom zu erkennen. Wenn die Taste gedrückt wird, gibt es einen geraden Weg von V+ zu Gnd durch R2. Unter der Annahme von 3,3 V sind das 3.3V / 47000Ω = 0.00007A
70000 nA. Was im Vergleich groß aussieht, aber das sind immer noch nur 0,07 mA oder 70 µA.
Die signifikante Stromaufnahme erfolgt nur , wenn die Taste gedrückt wird. Entwerfen Sie Ihre Schaltung also einfach so, dass der Standardzustand der Schaltfläche dort ist, wo die Schaltfläche geöffnet ist.
Die genaue Anordnung, die ich mir vorgestellt hatte, war diese. Ich verwende einen sehr großen Pulldown-Widerstand (in der Größenordnung von Megaohm). Der Spannungsabfall an diesem Widerstand ist so groß, dass er sich im Wesentlichen wie ein Pull-up-Widerstand verhält
Das macht nicht viel Sinn. Wenn Sie den Widerstand vom Pin an Masse anschließen, ist dies ein Pulldown. Die Spannung am Pin ist die gleiche wie gnd. Nach dem Ohmschen Gesetz fällt am Widerstand nur sehr wenig Spannung ab, da so wenig Strom fließt.
Eine typische Konfiguration ist unten dargestellt.
Ehrlich gesagt verstehe ich deine Idee nicht ganz. Es hört sich so an, als würden Sie versuchen, einen großen Widerstand zu haben, der sowohl ein Pull-Up als auch ein Pull-Down ist, und dann eine kleinere Parallele mit einem Schalter verbinden? Ich bräuchte einen Schaltplan, um weiter zu kommentieren, aber Sie brauchen wirklich nur die Standard-Pull-Up- oder Pull-Down-Konfiguration. Vertauschen Sie für einen Pull-Up die Position des Widerstands und der Taste.
Simulieren Sie diese Schaltung – Mit CircuitLab erstellter Schaltplan
Ignacio Vazquez-Abrams
Alex