Zurück

Tastergesteuerte LED – Dein erstes Arduino-Eingangsprojekt

Einleitung

Willkommen zu deinem ersten Arduino-Eingangsprojekt! In diesem Tutorial baust du eine Schaltung, bei der ein Taster eine LED steuert. Drückst du den Taster, leuchtet die LED; lässt du ihn los, erlischt sie. Dieses einfache Projekt führt dich in das Auslesen digitaler Eingänge, die Verwendung interner Pull-up-Widerstände und das Schreiben sauberen Arduino-Codes ein.

Wir nutzen den Velxio-Browser-Simulator, der eine SPICE-genaue Umgebung bietet, sodass du deine Schaltung ohne Hardware testen kannst. Los geht’s!

Schaltungsaufbau

Schaltplan der Taster-LED auf der Velxio-Simulator-Leinwand

Die Schaltung besteht aus drei Hauptkomponenten:

Verdrahtungsdetails

  1. Taster zum Arduino:

    • Ein Bein des Tasters (Pin 1.l) verbindet sich über ein blaues Kabel (#00aaff) mit dem digitalen Pin 2 des Arduino.
    • Das andere Bein (Pin 2.l) verbindet sich über ein schwarzes Kabel mit GND.
  2. LED zum Arduino:

    • Die Anode (langes Bein, Pin A) verbindet sich über ein rotes Kabel (#ff0000) mit dem digitalen Pin 13 des Arduino.
    • Die Kathode (kurzes Bein, Pin C) verbindet sich über ein schwarzes Kabel mit GND.

Beachte, dass der Taster keinen externen Pull-up-Widerstand hat. Stattdessen verwenden wir im Code den internen Pull-up-Widerstand des Arduino. Wenn der Taster nicht gedrückt ist, wird der Eingangspin auf HIGH gezogen; beim Drücken liest er LOW.

Code-Erklärung

Quellcode für die Taster-LED im Velxio-Monaco-Editor

Hier ist der vollständige Arduino-Sketch:

// Taster-LED-Steuerung
// Taster drücken, um LED einzuschalten

const int BUTTON_PIN = 2;
const int LED_PIN = 13;

void setup() {
  pinMode(BUTTON_PIN, INPUT_PULLUP);
  pinMode(LED_PIN, OUTPUT);
}

void loop() {
  int buttonState = digitalRead(BUTTON_PIN);

  if (buttonState == LOW) {
    digitalWrite(LED_PIN, HIGH);
  } else {
    digitalWrite(LED_PIN, LOW);
  }
}

Erklärung

Wichtige Konzepte

Digitaler Eingang und Pull-up-Widerstände

Wenn ein digitaler Pin als Eingang konfiguriert ist, liest er entweder HIGH (5V) oder LOW (0V). Ohne Pull-up- oder Pull-down-Widerstand kann der Pin zwischen Zuständen schweben, was zu unregelmäßigen Messwerten führt. Der interne Pull-up-Widerstand (typischerweise 20k-50k Ohm) sorgt für einen stabilen HIGH-Zustand, wenn der Taster offen ist. Das Drücken des Tasters verbindet den Pin direkt mit GND, überschreibt den Pull-up und liefert einen LOW-Wert.

Entprellung

Mechanische Taster prellen oft, was mehrere schnelle Zustandswechsel verursacht. In diesem einfachen Beispiel ignorieren wir die Entprellung, da die LED schnell reagiert und der Effekt minimal ist. Für kritischere Anwendungen kannst du eine kleine Verzögerung einfügen oder eine Entprellbibliothek verwenden.

Verwendung von Konstanten

Das Definieren von Pin-Nummern als Konstanten am Anfang des Sketches erleichtert das Ändern der Verdrahtung, ohne im Code suchen zu müssen. Es verbessert auch die Lesbarkeit.

Häufige Fehler und Tipps zur Fehlersuche

Den Velxio-Simulator verwenden

Velxio-Editor-Symbolleiste mit Compile- und Run-Steuerelementen

Klicke auf die Schaltfläche Run in der Symbolleiste, um die Simulation zu kompilieren und zu starten. Dann kannst du auf der Leinwand auf den Taster klicken, um die LED reagieren zu sehen.

Velxio-Leinwand-Symbolleiste über dem Simulations-Viewport

Nutze die Leinwand-Symbolleiste, um die Simulation zu pausieren, zurückzusetzen oder die Geschwindigkeit anzupassen.

Velxio-Komponentenauswahl-Modal zum Durchsuchen von Teilen nach Kategorie

Um weitere Komponenten hinzuzufügen, öffne die Komponentenauswahl und durchsuche Kategorien wie “Eingabe” oder “Ausgabe”.

Velxio-Bibliotheksmanager-Modal mit installierten Arduino-Bibliotheken

Wenn du zusätzliche Bibliotheken benötigst (z. B. zum Entprellen), verwende den Bibliotheksmanager.

Vorschläge für Erweiterungen

Sobald die Grundschaltung funktioniert, probiere diese Verbesserungen aus:

  1. Umschaltmodus: Ändere den Code so, dass jeder Tastendruck die LED ein- oder ausschaltet, anstatt sie gedrückt zu halten.
  2. Mehrere LEDs: Füge weitere LEDs und Taster hinzu, um ein einfaches Eingabefeld zu erstellen.
  3. Entprellung: Implementiere eine Software-Entprellung mit einer 50ms-Verzögerung oder einem Timer.
  4. Serieller Monitor: Gib den Tasterzustand über den Seriellen Monitor zur Fehlersuche aus.
  5. PWM-Helligkeit: Ersetze digitalWrite() durch analogWrite(), um die LED-Helligkeit basierend auf der Tasterdrückdauer zu steuern.

Aufruf zum Handeln

Bereit, deine eigene tastergesteuerte LED zu bauen? Öffne das Live-Beispiel auf Velxio und beginne zu experimentieren: Taster-LED-Beispiel. Keine Hardware nötig – nur dein Browser. Viel Spaß beim Tüfteln!


Teilen auf:
David Montero

Geschrieben von

David Montero

Creator of Velxio, the open-source circuit and Arduino simulator.

GitHub velxio.dev

Ähnliche Artikel


Vorheriger Artikel
LED mit PWM auf Arduino dimmen – Einsteiger-Tutorial
Nächster Artikel
Baue eine Ampel-Simulation mit Arduino auf Velxio