Thomas Brühlmann
Raspberry Pi Pico
Schnelleinstieg
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über <http://dnb.d-nb.de> abrufbar.
ISBN 978-3-7475-0379-9
1. Auflage 2021
www.mitp.de
E-Mail: mitp-verlag@sigloch.de
Telefon: +49 7953 / 7189 - 079
Telefax: +49 7953 / 7189 - 082
© 2021 mitp Verlags GmbH & Co. KG
Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Dies gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.
Lektorat: Sabine Schulz
Sprachkorrektorat: Petra Heubach-Erdmann
Covergestaltung: Janina Bahlmann, Christian Kalkert
Coverbild: Thomas Brühlmann
Electronic Publishing: Petra Kleinwegen
Dieses Ebook verwendet das ePub-Format und ist optimiert für die Nutzung mit dem iBooks-reader auf dem iPad von Apple. Bei der Verwendung anderer Reader kann es zu Darstellungsproblemen kommen.
Hinweis des Verlages zum Urheberrecht und Digitalen Rechtemanagement (DRM)
Der Verlag räumt Ihnen mit dem Kauf des ebooks das Recht ein, die Inhalte im Rahmen des geltenden Urheberrechts zu nutzen. Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheherrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Dies gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und Einspeicherung und Verarbeitung in elektronischen Systemen.
Der Verlag schützt seine ebooks vor Missbrauch des Urheberrechts durch ein digitales Rechtemanagement. Bei Kauf im Webshop des Verlages werden die ebooks mit einem nicht sichtbaren digitalen Wasserzeichen individuell pro Nutzer signiert.
Bei Kauf in anderen ebook-Webshops erfolgt die Signatur durch die Shopbetreiber. Angaben zu diesem DRM finden Sie auf den Seiten der jeweiligen Anbieter.
Impressum
Kapitel 1
Das Board
1.1 Die Leiterplatte
1.2 Anschlüsse
1.3 Spannungsversorgung
Kapitel 2
Die Software
2.1 Thonny-Entwicklungsumgebung (IDE)
2.1.1 Installation von Thonny
2.1.2 Konfiguration von Thonny
2.2 MicroPython
2.2.1 MicroPython für Raspberry Pi Pico
2.2.2 Installation von MicroPython
2.2.3 MicroPython in Thonny IDE
Kapitel 3
Erste Schritte
3.1 Erstes Programm
3.2 Projekt »Blink LED«
3.3 Programmaufbau
3.4 Steckbrett und Elektronik
3.4.1 Steckbrett
3.4.2 Bauteile der Elektronik
Kapitel 4
Digitale Ein- und Ausgänge
4.1 Ein- und Ausgänge am Pico
4.2 Eingang einlesen
4.2.1 Pullup oder Pulldown
4.3 Praxisbeispiel: Taster einlesen und Status ausgeben
4.4 LED ansteuern
4.5 PWM
4.5.1 Praxisbeispiel: LED mit PWM
4.6 Servo
4.6.1 Praxisbeispiel: Servo mit Potentiometer
4.7 Transistor, Relais
4.7.1 Transistor
4.7.2 Relais
4.8 Motor
4.8.1 Einfache Motor-Stufe (ein Motor)
4.8.2 Motor-Treiber für zwei Motoren
4.8.3 Praxisbeispiel: Motor-Ansteuerung (1 Motor)
4.8.4 Praxisbeispiel: Motor-Ansteuerung (2 Motoren)
4.8.5 Praxisbeispiel: Mini-Roboter
Kapitel 5
Analoge Welt
5.1 Spannung einlesen
5.1.1 Praxisbeispiel: Messung mit dem internen Temperatursensor
5.2 Praxisbeispiel: Poti mit LED-Ampel
5.3 Praxisbeispiel: Lichtmesser mit LDR
5.4 Praxisbeispiel: Temperaturmessung mit NTC
Kapitel 6
Anzeigen
6.1 RGB-LED
6.2 LC-Display (LCD)
6.3 OLED-Display
6.4 Projekt: Wetterstation mit Umweltsensor DHT22
Kapitel 7
Schnittstellen
7.1 UART
7.1.1 Praxisbeispiel: Datenaustausch mit Arduino
7.2 I2C
7.2.1 I2C-Bus auf dem Pico
7.2.2 Definition I2C mit MicroPython
7.2.3 I2C-Scanner
7.3 Praxisbeispiel: Lichtmesser mit BH1750
Kapitel 8
Programm-Erweiterungen
8.1 Bibliotheken
8.2 Programmable Input and Output (PIO)
8.2.1 Praxisbeispiel: Blink mit State Machine
8.2.2 Praxisbeispiel: Blinker als Alarmmelder
Kapitel 9
Pinout und Boards
9.1 Pico-Pinout und Beschreibung
9.2 Technische Daten
9.3 RP2040-Boards
9.3.1 Sparkfun
9.3.2 Arduino
9.3.3 Adafruit
9.3.4 PIMORONI
9.4 Hardware-Erweiterungen
9.4.1 Reset-Schalter
9.4.2 Pico-Pinout-Board für Steckbrett
Kapitel 10
Stücklisten
Im Januar 2021 hat eine News-Meldung die Maker- und Bastlerszene überrascht. Die Raspberry Pi Foundation, also die Organisation, die den bisher bekannten Minicomputer Raspberry Pi entwickelt hat, präsentierte ein neues Mitglied in ihrer Produkte-Reihe. Willkommen Raspberry Pi Pico!
Die Vorstellung des neuen Raspberry Pi Pico, in diesem Buch in der Kurzform »Pico«, wurde unbemerkt im Hintergrund vorbereitet und nur wenige Hardware-Hersteller aus dem Maker-Umfeld waren informiert. Zu diesen Anbietern gehören Adafruit, Sparkfun, Arduino und Pimoroni. Diese Hardware-Firmen präsentieren mit der Vorstellung des Pico gleichzeitig eigene kompatible Boards und Lösungen. Diese Lösungen sind zum aktuellen Zeitpunkt (März 2021) noch in Entwicklung. Die bisher präsentierten Informationen zu den neuen Boards werden viele Maker, Bastler und Microcontroller-Board-Anwender erfreuen.
Dank der zeitlich geplanten Vorstellung des Pico ist das neue Microcontroller-Board bereits bei einzelnen Händlern und Online-Shops verfügbar. Abonnenten und Käufer der Ausgabe 39 der englischen Bastlerzeitschrift HackSpace (http://hsmag.cc) erhielten zusätzlich zur Zeitschrift ein Pico-Board. Leider war diese Aktion breit gefächert nur auf der englischen Insel verfügbar. Glückliche Besitzer haben sich vielleicht auch an einem Zeitschriftenshop auf einem Flughafen eine Ausgabe mit Board sichern können.
Da Sie dieses Buch gekauft haben, gehören Sie vermutlich auch zur Maker-Community und interessieren sich für das neue Board der Raspberry Pi Foundation und möchten gerne interaktive Anwendungen mit Schalter, Anzeigen, Motoren usw. realisieren. Möglicherweise haben Sie bereits erste Erfahrungen mit Microcontrollern wie Arduino gemacht.
Der neue Raspberry Pi Pico ist im Gegensatz zu seinen Geschwistern aus der Raspberry-Serie kein Minicomputer mit Betriebssystem, sondern ein kleines, kompaktes Microcontroller-Board, auf dem Programme in MicroPython oder C/C++ ausgeführt werden können.
Mit der Vorstellung des Pico sind die News aber noch nicht fertig erzählt. Neben dem neuen Microcontroller-Board gibt es auch einen neuen Microcontroller. Auf dem Pico wird ein eigener, von der Raspberry Pi Foundation entwickelter Chip eingesetzt – der Microcontroller hat die Bezeichnung RP2040.
Diese spannenden Neuigkeiten bringen wieder Schwung in die Maker-Szene. Ein neues Microcontroller-Board, das einen solch markanten Eindruck in der Szene und in den sozialen Medien hinterlässt, erscheint nicht täglich. Obwohl erst kurze Zeit seit der Präsentation des Pico vergangen ist, findet man auf den bekannten sozialen Plattformen wie Twitter, YouTube und Hackaday schon eine ganze Menge an nützlichen Informationen, Beispielen und Tutorials. Täglich kommen neue Projekte dazu und erweitern so die Möglichkeiten des kleinen Boards.
Dieser kompakte Guide soll Sie beim Einstieg ins Thema Raspberry Pi Pico und MicroPython unterstützen. Idealerweise haben Sie schon mit anderen Microcontroller-Boards gearbeitet und schon Grundkenntnisse in Python oder einer anderen Programmiersprache.
Das Buch ist so aufgebaut, dass Sie die Kapitel nacheinander durcharbeiten können.
In Kapitel 1 wird der Raspberry Pi Pico vorgestellt, die Anschlüsse erklärt und die technischen Daten und Funktionen vorgestellt.
In Kapitel 2 wird die Firmware der Programmiersprache MicroPython, eine kompakte und abgespeckte Version von Python, installiert. Anschließend wird die Entwicklungsumgebung Thonny installiert und konfiguriert. Nach dem Verbindungsaufbau zwischen der Entwicklungsumgebung und dem Pico steht die nötige Infrastruktur bereit.
Das erste Programm, im Hardware-Umfeld ein Blink-Programm, wird in Kapitel 3 erstellt und auf den Pico geladen. Anschließend werden die Struktur der Programme und der Programmaufbau erklärt. Gleichzeitig werden die nötige Elektronik und Hardware, die für die nachfolgenden Beispiele verwendet werden, erläutert.
Das Kapitel 4 beschreibt den Einsatz der digitalen Ein- und Ausgänge des Pico. In praktischen Beispielen werden die Zustände von Tastern eingelesen und Leuchtdioden, Servos und Relais angesteuert.
Die analoge Welt mit den integrierten Analog/Digital-Wandlern wird in Kapitel 5 vorgestellt. Analoge Sensoren wie Fotowiderstand und Temperatursensor werden in Betrieb genommen.
In Kapitel 6 werden Anzeige-Elemente eingesetzt. Zuerst wird eine Leuchtdiode als optisches Element über eine Dimm-Funktion angesteuert. Anschließend erklären Praxisbeispiele den Einsatz von LC- und OLED-Displays. Zum Schluss wird eine kleine Wetterstation realisiert.
Kapitel 7 beschreibt den Einsatz der seriellen Schnittstelle (UART) und des I2C-Bus. In einem Praxisprojekt wird ein Lichtmesser realisiert.
In Kapitel 8 werden Programmerweiterungen wie die State-Machine und Module und Bibliotheken beschrieben.
Kapitel 9 beinhaltet technische Themen wie die Beschreibung des Pinouts und der einzelnen Anschluss-Pins sowie technische Daten zum Pico und dem Microcontroller RP2040.
Alle Stücklisten zu den einzelnen Projekten werden in Kapitel 10 bereitgestellt.
Weitere Informationen zum Buch und zu den Projekten mit dem Raspberry
Pi Pico sind auf meiner Website erhältlich:
https://555circuitslab.com
Die Beispielprogramme aus dem Buch können über meinen Github-Account bezogen werden:
https://github.com/arduinopraxis
Auf meiner Website findet man auch weitere Informationen zu meinen Microcontroller-Projekten wie auch Details zu meinen Büchern über die Themen Arduino und Sensoren.
Auf der Website des Verlages sind Informationen zu diesem Buch unter folgender Adresse verfügbar:
https://mitp.de/0377
Anregungen, Rückmeldungen und Fragen können Sie über Twitter oder per E-Mail an mich senden.
E-Mail: maker@555circuitslab.com
Twitter: https://twitter.com/arduinopraxis
Ein großer Dank geht an meine Familie, meine Frau Aga und meine Jungs Tim und Nik. Auch bei diesem Buchprojekt haben sie mir wieder den nötigen Freiraum gegeben.
Herzlichen Dank an meine Lektorin Sabine Schulz für den unkomplizierten und schnellen Ablauf bei der Entstehung dieses Buchprojekts.
Im Mai 2021
Thomas Brühlmann