Ich bin neu in der "Elektrotechnik" und arbeite an einem kleinen Arduino-Projekt. Ich möchte, dass ein SPST-Schalter als digitaler Eingang auf der Platine verwendet wird.
Ich habe eine der Schalterleitungen mit Positiv und die andere mit dem Digitaleingang verbunden. Das Problem dabei ist, dass ich beim Ausschalten nicht sicher sein kann, dass der Eingang geerdet ist. Wie kann ich sicherstellen, dass der Eingang geerdet ist, wenn der Schalter ausgeschaltet ist?
Würde es funktionieren, wenn ich den Digitaleingang an einen Widerstand anschließen würde, der mit Masse verbunden ist, sodass er geerdet ist, wenn der Schalter ausgeschaltet ist, aber wenn der Schalter eingeschaltet ist, wird er nicht kurzgeschlossen - würde das funktionieren?
Die herkömmlichste Lösung wäre, eine Seite des Schalters mit Masse zu verbinden. Verbinden Sie den anderen mit dem digitalen Eingang und auch mit einem Widerstand zwischen 1 und 10 kOhm, der zur positiven Versorgung führt.
Der umgekehrte Weg mit einem Pulldown-Widerstand, wie Bruno es beschreibt, ist möglich, aber weniger bevorzugt. Viele Eingänge haben bereits ein gewisses Maß an implizitem Pull-up und lesen eine „1“, wenn sie nicht verbunden sind, wenn auch nicht ganz zuverlässig. Wenn Ihr Schalter jedoch bereits mit der positiven Schiene verbunden ist, ist ein Pulldown eine gute Lösung, obwohl viele es vorziehen, einen kleinen Widerstand zu verwenden, wenn sie Logikeingänge mit der positiven Schiene verbinden.
Viele Mikrocontroller haben auch interne Pullup- und/oder Pulldown-Widerstände an GPIO-Pins, die durch Schreiben in ein Konfigurationsregister aktiviert werden können. Wenn Sie einen Eingang eines solchen Mikrocontrollers ansteuern, benötigen Sie möglicherweise überhaupt keinen externen Pull-Up / Down-Widerstand, obwohl nicht jeder Mikrocontroller über einen solchen verfügt.
Ja, so wie du es beschrieben hast, würde es funktionieren. Das nennt man Pull-Down-Widerstand, weil er dafür sorgt, dass der Digitaleingang bei geöffnetem Kontakt den logischen Zustand 0 (Low) hat. Normalerweise können Sie zu diesem Zweck einen 10-kΩ-Widerstand verwenden.
Das funktioniert und gibt Ihnen eine positive Logik: einen hohen Pegel (logisch "1"), wenn der Schalter geschlossen ist.
Aber wie Chris sagt, ist das Umgekehrte häufiger: Schalter mit Masse verbunden und ein Pull-Up-Widerstand (anstelle eines Pull-Down-Widerstands) zur Stromversorgung. Ihre Logik wird invertiert: Eine logische "1" entspricht einem offenen Schalter.
Ein guter Grund für die Pull-up-Version ist, dass die meisten Mikrocontroller sie integriert haben und Sie sie je nach Bedarf aktivieren/deaktivieren können. Einige Mikrocontroller haben auch konfigurierbare Pulldowns, aber diese sind weniger verbreitet.
Wenn Sie einen externen Pull-up wünschen, können 10 kΩ ein guter Wert sein. Der Eingang eines Mikrocontrollers kann einen Leckstrom von bis zu 1 µA haben, und dann fallen 10 kΩ um vernachlässigbare 10 mV ab. Niedrigere Werte sind sicherlich möglich, aber bedenken Sie, dass sie einen größeren Strom gegen Masse haben, wenn der Schalter geschlossen ist. Ein 1-kΩ-Widerstand zieht 5 mA bei einer 5-V-Versorgung, was wirklich eine Energieverschwendung ist. Für die 10 kΩ sind das nur 500 µA. Für Anwendungen mit sehr geringer Leistung können Sie den Wert auf 100 kΩ erhöhen, aber denken Sie an den Leckstrom; 1 µA ergibt einen Abfall von 100 mV!
Matt Jung
SpongeBob
gbarry
SpongeBob
Chris Stratton