Warum Widerstände bei Drucktastern und Schaltern mit dem Arduino verwenden
Dieses Tutorial erklärt, warum die Verwendung eines Widerstands bei an ein Arduino angeschlossenen Drucktastern und Schaltern für einen zuverlässigen Betrieb entscheidend ist. Das Verständnis dieses Konzepts ist grundlegend für jedes Arduino-Projekt, das Benutzereingaben umfasst. Dieses Wissen verhindert unerwartetes Verhalten und sorgt dafür, dass Ihre Projekte korrekt funktionieren. Hier sind einige Projektideen, bei denen dieses Wissen unerlässlich ist:
- Einfacher Ein-/Aus-Schalter für eine LED
- Interaktiver Spielcontroller
- Fernbedienung für Haushaltsgeräte
- Sicherheitssystem mit Drucktastenaktivierung
Lassen Sie uns die Gründe untersuchen, warum in diesen Schaltungen Widerstände verwendet werden.

Hardware/Komponenten
Die Kernkomponenten, die für dieses Projekt benötigt werden, sind minimal: ein Arduino-Board, ein Drucktaster und ein Widerstand (größer als 300 Ohm). Der Widerstandswert ist nicht kritisch; Werte wie 1kΩ, 10kΩ oder sogar 100kΩ funktionieren in der Regel gut (im Video bei 00:41).
Verdrahtungsanleitung
Es gibt zwei primäre Verdrahtungskonfigurationen (im Video bei 00:30):
- Konfiguration 1:Verbinden Sie den Drucktaster zwischen dem Arduino-Pin und +5V. Die andere Seite des Drucktasters ist über einen Widerstand mit Masse verbunden. Wenn der Taster gedrückt ist, liest der Pin HIGH; wenn er losgelassen ist, liest er LOW.
- Konfiguration 2:Verbinde den Drucktaster zwischen dem Arduino-Pin und Masse. Die andere Seite des Drucktasters ist über einen Widerstand mit +5V verbunden. Wenn der Drucktaster gedrückt wird, liest der Pin LOW; wenn er losgelassen wird, liest er HIGH.

Ein visuelles Verdrahtungsdiagramm wäre hier von Vorteil.
Erklärung des Codes
Der Arduino-Code verwendet diepinMode()Funktion, um den Pin als Eingang zu konfigurieren. Der entscheidende Teil ist die Verwendung vonINPUT_PULLUP(im Video bei 04:06, 04:23). Dieser interne Pull-up-Widerstand macht in bestimmten Konfigurationen einen externen Widerstand überflüssig und vereinfacht so die Verdrahtung. DerdigitalRead()Die Funktion liest den Zustand des Pins und ein einfachesif-elseDie Anweisung bestimmt, ob die Taste gedrückt ist (LOW) oder nicht (HIGH) (im Video bei 08:34).
pinMode(2, INPUT_PULLUP); // Configures pin 2 as input with internal pull-up resistor
int pushButton = digitalRead(2); // Reads the state of pin 2
if (pushButton == LOW) {
// Button is pressed
} else {
// Button is not pressed
}
Live-Projekt/Demonstration
Das Video zeigt beide Verdrahtungskonfigurationen und deren jeweiliges Verhalten. Es hebt die Probleme hervor, die auftreten können, wenn der Widerstand weggelassen wird, wie etwa sprunghafte Messwerte durch Rauschen und kapazitive Kopplung (im Video bei 06:18, 06:39, 07:21). Die Demonstration zeigt deutlich den stabilen und zuverlässigen Betrieb, der mit eingesetztem Widerstand erreicht wird (im Video bei 08:08).
Kapitel
- [00:00] Einleitung
- [00:30] Verdrahtungskonfigurationen
- [04:12] Erklärung des Codes unter Verwendung von INPUT_PULLUP
- [05:36] Entfernen des Widerstands: Praktische Demonstration
- [08:33] Code-Erklärung
Bilder
Dinge, die Sie vielleicht brauchen
-
AmazonKaufe Drucktasten bei Amazon.amzn.to
Ressourcen & Referenzen
Noch keine Ressourcen vorhanden.
Dateien📁
Keine Dateien verfügbar.
