Arduino - Schalter

Der EIN/AUS-Schalter, auch als Kippschalter bezeichnet, hat zwei Zustände: EIN (geschlossen) und AUS (offen). Der Zustand des EIN/AUS-Schalters wird bei jeder Betätigung zwischen EIN und AUS umgeschaltet, und der Zustand wird auch beim Loslassen beibehalten. In diesem Tutorial lernen wir, wie man den EIN/AUS-Schalter mit Arduino verwendet.

Arduino Ein/Aus-Schalter

Bitte nicht mit dem Folgenden verwechseln:

Erforderliche Hardware

1×Arduino Uno R3
1×USB 2.0 Kabel Typ A/B (für USB-A PC)
1×USB 2.0 Kabel Typ C/B (für USB-C PC)
1×Wires
1×ON/OFF Square Schalter
1×(Alternativ) ON/OFF Round Schalter
1×(Optional) Schrumpfschlauch-Set
1×(Optional) Lötkolben
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V3 Starter-Kit (Arduino enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über ON/OFF-Schalter

Ein An-Aus-Schalter ist ein Schalter, der seinen Zustand (AN zu AUS oder AUS zu AN) beim ersten Drücken ändert und diesen Zustand auch nach dem Loslassen beibehält. Um den Zustand zu ändern, müssen wir ihn erneut drücken.

Pinbelegung

Der Ein/Aus-Schalter hat im Wesentlichen zwei Typen: Zwei-Pin-Schalter und Drei-Pin-Schalter.

In diesem Tutorial verwenden wir einen Schalter mit zwei Pins. In diesem Typ ist es nicht nötig, zwischen den beiden Pins zu unterscheiden.

Pinbelegung des Ein-/Aus-Schalters

Wie es funktioniert

Es gibt zwei Möglichkeiten, einen Ein/Aus-Schalter zu verwenden. Nachfolgend finden Sie die Verdrahtungstabelle für den Ein/Aus-Schalter und den Auslesestatus am Arduino in beiden Varianten:

pin 1 pin 2 Arduino Input Pin's State
1 GND Arduino Input Pin (with pull-up) HIGH OFF, LOW ON
2 VCC Arduino Input Pin (with pull-down) HIGH ON, LOW OFF

Wir müssen nur eine der beiden oben genannten Möglichkeiten auswählen. Der Rest des Tutorials wird die erste Methode verwenden.

Verdrahtungsdiagramm

Arduino Ein/Aus-Schalter Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Um die Verdrahtungsverbindung stabil und fest zu machen, empfehlen wir die Verwendung eines Lötkolbens, um Drähte und den Pin des Ein-/Aus-Schalters zusammen zu löten, und verwenden Sie anschließend Schrumpfschlauch, um es sicher zu machen.

Arduino-Code - Ein/Aus-Schalter

Wie ein Knopf muss auch ein ON/OFF-Schalter entprellt werden (Weitere Informationen unter Warum braucht man Entprellung für den Knopf, ON/OFF-Schalter?). Die Entprellung macht den Code kompliziert. Glücklicherweise unterstützt die ezButton-Bibliothek die Entprellungsfunktion. Die Bibliothek verwendet außerdem interne Pull-up-Widerstände. Dies erleichtert das Programmieren.

※ Notiz:

Es gibt zwei weit verbreitete Anwendungsfälle:

  • Der erste: Wenn der Zustand des Schalters AN ist, tu etwas. Wenn der Eingangsstatus AUS ist, tu etwas anderes, und zwar umgekehrt.
  • Der zweite: Wenn sich der Zustand des Schalters von AN nach AUS (oder AUS nach AN) ändert, tu etwas.
/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino/arduino-switch */ #include <ezButton.h> ezButton toggleSwitch(7); // create ezButton object that attach to pin 7; void setup() { Serial.begin(9600); toggleSwitch.setDebounceTime(50); // set debounce time to 50 milliseconds } void loop() { toggleSwitch.loop(); // MUST call the loop() function first if (toggleSwitch.isPressed()) Serial.println("The switch: OFF -> ON"); if (toggleSwitch.isReleased()) Serial.println("The switch: ON -> OFF"); int state = toggleSwitch.getState(); if (state == HIGH) Serial.println("The switch: OFF"); else Serial.println("The switch: ON"); }

Schnelle Schritte

  • Verkabeln Sie gemäß dem oben gezeigten Verdrahtungsdiagramm.
  • Verbinden Sie den Arduino über ein USB-Kabel mit dem PC.
  • Öffnen Sie die Arduino-IDE.
  • Installieren Sie die ezButton-Bibliothek. Siehe Anleitung
  • Wählen Sie das richtige Board und den richtigen Port aus.
  • Klicken Sie in der Arduino-IDE auf die Hochladen-Schaltfläche, um den Code auf den Arduino hochzuladen.
  • Stellen Sie den Schalter auf EIN.
  • Sehen Sie das Ergebnis im seriellen Monitor.
  • Dann stellen Sie den Schalter auf AUS.
  • Sehen Sie das Ergebnis im seriellen Monitor.
COM6
Send
The switch: OFF The switch: OFF The switch: OFF The switch: OFF -> ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON The switch: ON -> OFF The switch: OFF The switch: OFF The switch: OFF
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!