Bemerkung

Hallo, willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Community auf Facebook! Tauchen Sie tiefer in Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten ein.

Warum beitreten?

  • Fachkundige Unterstützung: Lösen Sie nach dem Kauf auftretende Probleme und technische Herausforderungen mit Hilfe unserer Community und unseres Teams.

  • Lernen & Teilen: Tauschen Sie Tipps und Tutorials aus, um Ihre Fähigkeiten zu verbessern.

  • Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und Sneak Peeks.

  • Spezielle Rabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.

  • Festliche Aktionen und Verlosungen: Nehmen Sie an Verlosungen und Feiertagsaktionen teil.

👉 Bereit, mit uns zu entdecken und zu kreieren? Klicken Sie auf [hier] und treten Sie noch heute bei!

Lektion 71 : Aufgabe des Threads vor dem Beenden abschließen lassen

Dieses Tutorial behandelt das saubere Beenden eines Multithread-Programms auf dem Raspberry Pi Pico W:

  • Verdrahtungsaufbau: - Verbinden Sie das Steuerkabel des Servos mit GPIO-Pin 17, das Stromkabel mit physikalischem Pin 40 und das Erdungskabel mit physikalischem Pin 38. - Schließen Sie einen Taster an GPIO-Pin 16 und Masse an.

  • Code-Implementierung: - Importieren Sie die notwendigen Bibliotheken (machine, time, _thread, Servo). - Richten Sie die Pins für den Taster und den Servo ein. - Implementieren Sie einen Umschalter für den Taster, um die Bewegung des Servos zu steuern. - Definieren Sie eine Hauptschleife, um Tastendrücke zu erkennen und den Servo zwischen 0 und 180 Grad zu toggeln. - Verwenden Sie Threads, um die Servobewegung auf einem separaten Kern zu behandeln und so ein sauberes Beenden des Programms zu ermöglichen.

  • Sauberes Beenden handhaben: - Verwenden Sie eine globale running-Variable, um die Ausführung der Schleife zu steuern. - Implementieren Sie eine Sperre (lock), um sicherzustellen, dass immer nur ein Teil des Programms während kritischer Abschnitte läuft. - Warten Sie, bis die Servobewegung abgeschlossen ist, bevor Sie das Programm beenden.

  • Hausaufgabe: - Modifizieren Sie das Programm, um zusätzliche Komponenten oder Sensoren zu integrieren und ein sauberes Beenden in allen Szenarien sicherzustellen.

Video