Zurück

Pico Serial LED Steuerung: Baue deine erste Befehlschnittstelle

Einleitung

Willkommen zu deinem ersten seriell gesteuerten Projekt auf dem Raspberry Pi Pico! In diesem Tutorial bauen wir eine einfache Schaltung, mit der du eine LED ein- und ausschalten kannst, indem du Befehle in den seriellen Monitor eingibst. Du lernst die Grundlagen der seriellen Kommunikation, digitale Ausgänge und wie du den Velxio Simulator nutzt, um deinen Code ohne Hardware zu testen.

Dieses Projekt ist perfekt für Anfänger, die verstehen möchten, wie Mikrocontroller mit einem Computer kommunizieren. Am Ende wirst du in der Lage sein, das Konzept zu erweitern, um mehrere LEDs zu steuern, Sensoren auszulesen oder sogar ein einfaches Menüsystem zu erstellen.

Schaltungsdurchlauf

Schauen wir uns die Schaltung an, die wir bauen werden. Öffne das Beispiel in Velxio und du wirst die folgenden Komponenten sehen:

Schaltplan von pico-serial-led-control auf der Velxio Simulator Leinwand

Verdrahtungsdetails

  1. Von Pico D2 zur LED-Anode: Ein grünes Kabel verbindet Pin D2 des Pico mit der Anode (A) der LED. Dies ist das Steuersignal.
  2. Von LED-Kathode zum Widerstand: Ein graues Kabel verbindet die Kathode (C) der LED mit einem Ende des Widerstands (Pin 1).
  3. Vom Widerstand zur Pico GND: Ein schwarzes Kabel verbindet das andere Ende des Widerstands (Pin 2) mit der Masse des Pico (GND.1).

Das war’s! Die Schaltung ist einfach, aber effektiv. Der Widerstand ist unerlässlich, um ein Durchbrennen der LED zu vermeiden. Mit einem 220Ω Widerstand und einer typischen LED-Durchlassspannung von etwa 2V beträgt der Strom etwa (3,3V - 2V) / 220Ω ≈ 6mA, was sicher ist.

Code-Durchlauf

Tauchen wir nun in den Code ein. Öffne den Editor in Velxio und du wirst den folgenden Arduino-Sketch sehen:

// Raspberry Pi Pico — Serial LED Control
// Send '1' to turn LED ON, '0' to turn OFF, '?' for status

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
  Serial.begin(115200);
  delay(500);
  Serial.println("=== Pico LED Control ===");
  Serial.println("Commands: 1=ON  0=OFF  ?=status");
}

void loop() {
  if (Serial.available()) {
    char cmd = Serial.read();
    switch (cmd) {
      case '1':
        digitalWrite(LED_BUILTIN, HIGH);
        Serial.println("LED: ON");
        break;
      case '0':
        digitalWrite(LED_BUILTIN, LOW);
        Serial.println("LED: OFF");
        break;
      case '?':
        Serial.print("LED: ");
        Serial.println(digitalRead(LED_BUILTIN) ? "ON" : "OFF");
        break;
      default:
        if (cmd >= ' ') {
          Serial.print("Unknown command: ");
          Serial.println(cmd);
        }
        break;
    }
  }
}

Wie es funktioniert

Beachte, dass wir LED_BUILTIN verwenden, eine vordefinierte Konstante für die eingebaute LED des Pico (normalerweise auf Pin 25). In unserer Schaltung haben wir eine externe LED an Pin D2 angeschlossen, aber der Code verwendet immer noch die eingebaute LED. Wenn du die externe LED steuern möchtest, ändere LED_BUILTIN in 2 (oder definiere eine Konstante). Für dieses Beispiel funktioniert die eingebaute LED einwandfrei.

Schlüsselkonzepte

Häufige Fallstricke & Tipps zur Fehlersuche

Vorgeschlagene Erweiterungen

Sobald das grundlegende Projekt funktioniert, probiere diese Verbesserungen aus:

  1. Eine externe LED steuern: Ändere LED_BUILTIN in 2 und schließe eine externe LED an Pin D2 an, wie im Schaltplan gezeigt.
  2. Weitere LEDs hinzufügen: Verwende mehrere Pins und Befehle wie ‘r’ für rot, ‘g’ für grün, ‘b’ für blau.
  3. PWM-Dimmung: Verwende analogWrite(), um Helligkeitsstufen einzustellen. Sende Werte wie ‘0’ bis ‘9’ für 0% bis 100% Helligkeit.
  4. Zwei-Wege-Kommunikation: Lasse den Pico Sensordaten (z.B. Temperatur) senden, wenn du einen Befehl wie ‘t’ sendest.
  5. Menüsystem: Gib ein Menü mit Optionen aus und verwende eine Schleife, um auf gültige Eingaben zu warten.

Aufruf zum Handeln

Bereit, es selbst auszuprobieren? Öffne das Live-Beispiel in Velxio und beginne zu experimentieren: Pico Serial LED Control auf Velxio. Keine Downloads, keine Einrichtung – nur dein Browser und deine Neugier. Viel Spaß beim Hacken!


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
Pico I2C Scanner: Geräte auf dem Bus finden
Nächster Artikel
Pico Serial Echo: UART auf dem RP2040 mit Velxio testen