Elektor GREEN en GOLD leden kunnen deze uitgave hier downloaden.
Nog geen lid? Klik hier om een lidmaatschap af te sluiten.
CaptureCountobjectdetector en -teller op de Raspberry Pi 5
Spanningsreferentie met Arduino Pro Minilineariseer en kalibreer analoge ingangen
FPGA’s voor beginnersvan MCU naar FPGA-programmering
Update: STM32 Wireless Innovation Design Contest 2024
Bluetooth LE met MAUIbesturingsapps voor Android en co.
Port Expander breakout-boardmeer I/O’s op je development board
AI-specialistmachine learning met de Jetson Nano
2024: een AI-odysseeeen eerste verkenning van TensorFlow
262.144 manieren om Game of Life te spelenlezersproject in het kort
Uit het leven gegrepende Chinese draak
Draaien met die (DC-borstel)motor!voorbeeldprojecten uit de Elektor Motor Control Development Bundle
ESP32/RS-232-adapterdraadloze verbinding voor klassieke meetinstrumenten
Alle begin......gaat verder met de opamp
Aanbevolen ESP-bibliotheken
Piëzo-elektrische componentenvreemde onderdelen
Slimme objecttellereenvoudige beeldherkenning met Edge Impulse
Oplossingen voor de lastigste uitdagingen bij embedded ontwikkeling
ESP32 Terminalhandheld met aanraakscherm
Aan de slag met Zephyr RTOSkrachtig – maar lastig...
Bekroonde ethiekeen vraaggesprek met Alexander Gerfer, CTO van Würth Elektronik eiSos, over het faciliteren van innovatie en bewust gedrag
Project 2.0correcties, updates en brieven van lezers
Open-Source-Code mit Arduino IDE und PlatformIO
Autonomes Fahren: GPS, Accelerometer, Gyroskop
PS3-Controller
Mikrocontroller wie der Arduino und Einplatinenrechner wie der Raspberry Pi haben sich zu beliebten Komponenten entwickelt. Dritter im Bunde ist der ESP32 der Firma Espressif. Mikrocontroller dieser Baureihe zeichnen sich durch eine Vielzahl implementierter Funktionen aus, die bei einem Arduino konventioneller Prägung mit einem Atmel-AVR-Mikrocontroller erst mit weiterer Hardware möglich sind. Prominentes Beispiel sind hier die WiFi- und Bluetooth-Funktionalitäten. Gegenüber einem Raspberry Pi zeichnen sie sich durch einen deutlich geringeren Preis aus.
Allgemeine Informationen für die Realisierung eines Roboterauto-Projekts mit dem ESP32 sind leicht zu finden. Dabei handelt es sich aber oft nur um Ausführungen zu einem Teilaspekt, ohne inhaltliche oder funktionale Abstimmung. So ist nicht nur die Beschaffung der benötigten Informationen mühselig und zeitaufwändig, sie kann auch außerordentlich fehlerträchtig sein.
Ansatzpunkt dieses Buches ist, diese Lücke zu schließen. Es geht auf verschiedene Möglichkeiten eines Chassis ein, vermittelt nötige Kenntnisse und führt schrittweise von einer einfachen Motorsteuerung zu einem komplexen sensor- und sprachgesteuerten Roboterauto. Hacks rund um GPS und eine PlayStation 3 runden die Sache ab.
Inhalt
Bei der Reihenfolge der Kapitel wurde versucht – beginnend bei der Darstellung von grundlegenden Informationen – über die Lösung einfacher Aufgaben zu etwas anspruchsvolleren Techniken zu führen.
Der Mikrocontroller ESP32
Die Software erstellen
Die Stromversorgung
Rund um die Hardware
Das Chassis
Der Gleichstrommotor
Kabellose Steuerung über WiFi
Mit Sensoren Hindernisse erkennen
Eine eigene Roboterauto-App
Servo und Lichtsensor
GPS
Accelerometer / Gyroskop
PS3-Controller
Roboterauto-App
Hinweis zur Software
Die Dateien haben das Suffix (.cpp). Grund ist die Entwicklung mit PlatformIO. Mit Copy & Paste sollten sie auch in der Arduino-IDE verwendet werden können.
IMAGE PROCESSING WITH THE NVIDIA JETSON NANO (PART 2)Image Recognition Using Edge Impulse
ELEKTOR JUMPSTARTER NEWSUpcoming Campaigns
AN OPEN-SOURCE GPS TRACKING PLATFORMTraccar Maps Vehicle Tracking Without the Need for a Third-Party Cloud Server
JOY-IT LCR-T7 MULTI-FUNCTION TESTERTesting Passives, Discrete Semiconductors and IR Remote Controls
NOISE SYNTHESIZERFrom Noise to Music with the PRBSynth1
STARTING OUT IN ELECTRONICSEasier than Imagined! ... Continuing with the Coil
UNDERSTANDING THE NEURONS IN NEURAL NETWORKS (PART 2)Logical Neurons
ISSUES WITH SECURITY? FIGHT FIRE WITH FIRE!Flashbulb-Protected Analogue Memory Add-on For the Tamper-Evident Box LCR METER POSTER
BLUETOOTH BEACONS IN PRACTICEBeacons Light the Way Ahead
C PROGRAMMING ON RASPBERRY PICommunicating over Wi-Fi (Sample Chapter)
EMC PRE-COMPLIANCE TEST FOR YOUR DC-POWERED PROJECT (PART 2)The Hardware and How to Use It
HANDS ON THE PARALLAX PROPELLER 2 (PART 5)Inside the Smart Pin
MODBUS OVER WLAN (PART 1)Hardware and Programming
HOMELAB TOURSWhere the Junior Computer Is Brought to Life Again
BUILD YOUR OWN HIGH-PRECISION CALIBRATOR-10 V to +10 V, 0 to 40 mA, 0.001%
ARDUINO NANO RP2040 CONNECTRaspberry Pi RP2040 + Wi-Fi + Bluetooth THE PHYSICAL BODY OF ARTIFICIAL INTELLIGENCE
ERR-LECTRONICSCorrections, Updates and Readers’ Letters
CREATE GUIS WITH PYTHONIntroducing guizero
CO2 METER KIT FOR THE CLASSROOMAn ESP8266-Based Device from the University of Applied Sciences Aachen
NOSTALGIC MK484 MW/LW RADIO...Always Fun to Build!
ELEKTOR @ 60Let There Be Light!
HEXADOKUThe Original Elektorized Sudoku
Program, build, and master over 50 projects with MicroPython and the RP2040 microprocessor The Raspberry Pi Pico is a high-performance microcontroller module designed especially for physical computing. Microcontrollers differ from single-board computers, like the Raspberry Pi 4, in not having an operating system. The Raspberry Pi Pico can be programmed to run a single task very efficiently within real-time control and monitoring applications requiring speed. The ‘Pico’ as we call it, is based on the fast, efficient, and low-cost dual-core ARM Cortex-M0+ RP2040 microcontroller chip running at up to 133 MHz and sporting 264 KB of SRAM, and 2 MB of Flash memory. Besides its large memory, the Pico has even more attractive features including a vast number of GPIO pins, and popular interface modules like ADC, SPI, I²C, UART, and PWM. To cap it all, the chip offers fast and accurate timing modules, a hardware debug interface, and an internal temperature sensor. The Raspberry Pi Pico is easily programmed using popular high-level languages such as MicroPython and or C/C++. This book is an introduction to using the Raspberry Pi Pico microcontroller in conjunction with the MicroPython programming language. The Thonny development environment (IDE) is used in all the projects described. There are over 50 working and tested projects in the book, covering the following topics: Installing the MicroPython on Raspberry Pi Pico using a Raspberry Pi or a PC Timer interrupts and external interrupts Analogue-to-digital converter (ADC) projects Using the internal temperature sensor and external temperature sensor chips Datalogging projects PWM, UART, I²C, and SPI projects Using Wi-Fi and apps to communicate with smartphones Using Bluetooth and apps to communicate with smartphones Digital-to-analogue converter (DAC) projects All projects given in the book have been fully tested and are working. Only basic programming and electronics experience is required to follow the projects. Brief descriptions, block diagrams, detailed circuit diagrams, and full MicroPython program listings are given for all projects described. Readers can find the program listings on the Elektor web page created to support the book.
Dieser komplette Mikrocontroller-Programmierkurs auf Basis des Arduino Uno umfasst ein Lehrbuch, ein Komponenten-Kit, praxisnahe Projekte sowie einen umfassenden Online-Kurs mit Simulationen. Er eignet sich ideal für das schrittweise Erlernen der Embedded-Programmierung mit Arduino anhand eines praktischen, hands-on Ansatzes.
Eine praxisnahe Einführung in Embedded Systems mit dem Arduino Uno
Dieser Kurs richtet sich an Personen ohne Vorkenntnisse im Bereich Embedded Systems, die einen strukturierten und beispielbasierten Einstieg suchen.
Ein Kit bestehend aus LEDs und Widerständen, Schaltern, Sensoren und Aktoren, Displays, einem Breadboard und Kabeln sowie weiteren Komponenten ist enthalten. Diese werden im Kurs verwendet, um Beispielanwendungen zu veranschaulichen.
Vorkenntnisse mit Arduino oder Embedded-Entwicklung sind nicht erforderlich. Jeder Abschnitt enthält praktische Beispiele und Mini-Projekte, die wichtige Konzepte festigen und zur weiteren Vertiefung anregen. Am Ende des Kurses werden Sie nicht nur in der Lage sein, die Beispiele nachzuvollziehen, sondern auch eigene Ideen und Anwendungen umzusetzen.
Was werden Sie lernen?
Mikrocontroller-Programmierung mit Arduino unter Verwendung des Uno R3 Boards
Arbeiten mit digitalen Ein- und Ausgängen, Auslesen von Tastern und Encodern, Steuern von LEDs und Relais
Auslesen analoger Eingänge, Spannungen und analoger Sensoren
Erzeugung analoger Ausgangssignale und PWM
Verwendung serieller Kommunikation wie UART, I²C und SPI zur Steuerung von Displays und zum Auslesen digitaler Sensoren und SD-Karten
Zeitmanagement
Arbeiten mit Interrupts
Echtzeit-Sensordatenerfassung und Steuerung über Taster, LEDs und Displays
Steuerung von Aktoren wie Relais und Servomotoren
Für wen ist dieser Kurs geeignet?
Studierende und Selbstlerner im Bereich Embedded Systems
Makers und IoT-Enthusiasten, die ihre Hardware-Kenntnisse verbessern möchten
Lehrkräfte und Trainer, die sofort einsetzbares Unterrichtsmaterial suchen
Was ist im Lieferumfang enthalten?
Zugang zum vollständigen Kurs auf der Elektor Academy Pro-Lernplattform
Uno R3 Mikrocontroller-Board (+ USB-Kabel)
Buch: Programming Microcontrollers in C/C++ Using Arduino
Downloadbare Projektdateien für jedes Modul
Komponenten-Set:
2× LED, rot, 5 mm
LED, grün, 5 mm
3× Widerstand, 470 Ω, 0,25 W
LDR
Potentiometer, 10 kΩ, linear
Taster
Drehencoder-Modul
Relaismodul
DHT22 Feuchtigkeits- und Temperatursensor
TM1637-kompatibles 4-stelliges 7-Segment-Display
MPU-6050 IMU mit Stiftleisten
SSD1306-kompatibles I²C OLED-Display
Micro-SD-Kartenadapter mit Stiftleiste
Buzzer
SG90 Mikro-Servo
ILI9341-kompatibles SPI 240×320 TFT-Display
20× Jumperkabel
Breadboard
Alle Programmierkurse (und Unterschiede im Inhalt)
Kurs
Arduino
Raspberry Pi Pico with Arduino C/C++
ESP32 with Arduino C/C++
Raspberry Pi Pico with MicroPython
ESP32 with MicroPython
Online-Kurs
Access to Arduino Course
Access to Pico with Arduino C/C++ Course
Access to ESP32 with Arduino C/C++ Course
Access to Pico with MicroPython Course
Access to ESP32 with MicroPython Course
Board
Uno R3
Raspberry Pi Pico
ESP32
Raspberry Pi Pico
ESP32
Buch
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in C/C++ Using Arduino
Programming Microcontrollers in MicroPython
Programming Microcontrollers in MicroPython
Kit
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
40-teiliges Komponenten-Set
Buch: Logic Analyzer im Einsatz
Schritt-für-Schritt-Anleitungen führen Sie in die Analyse moderner Protokolle von I²C, SPI, UART, RS-232, NeoPixel, WS28xx, HD44780 und 1-Wire ein. Anhand von zahlreichen Experimentierschaltungen mit dem Raspberry Pi Pico, Arduino Uno und dem Bus Pirate üben Sie die praxisnahe Anwendung gängiger USB-Logikanalysatoren ein.
Alle in diesem Buch vorgestellten Experimentierschaltungen wurden vollständig getestet und sind funktionsfähig. Die notwendigen Programmlistings sind enthalten, es sind keine besonderen Programmier- oder Elektronikkenntnisse für diese Schaltungen notwendig. Es werden die Programmiersprachen MicroPython und C mit den Entwicklungsumgebungen Thonny und Arduino IDE eingesetzt.
Dieses Buch verwendet mehrere Modelle flexibler und weit verbreiteter USB-Logikanalysatoren und zeigt die Stärken und Schwächen jeder Preisklasse. Sie werden kennenlernen, welche Kriterien für Ihre Arbeit wichtig sind und in der Lage sein, das für Sie passende Gerät zu finden.
Egal ob Arduino, Raspberry Pi oder Raspberry Pi Pico: Die abgebildeten Beispielschaltungen ermöglichen einen schnellen Start in die Protokollanalyse und können auch als Grundlage für eigene weitere Experimente dienen.
Sie werden alle wichtigen Begriffe und Zusammenhänge kennenlernen, eigene Experimente durchführen, selbstständig Protokolle analysieren und nach der Lektüre dieses Buches – im Bereich der digitalen Signale und Protokolle – ein umfassendes Wissen aufgebaut haben.
USB Logic Analyzer (8 Kanäle, 24 MHz)
Dieser USB Logic Analyzer ist ein 8-Kanal-Logikanalysator, bei dem jeder Eingang doppelt für die analoge Datenaufzeichnung dient. Es eignet sich perfekt zum Debuggen und Analysieren von Signalen wie I²C, UART, SPI, CAN und 1-Wire. Dabei wird ein digitaler Eingang, der mit einem zu testenden Gerät (DUT) verbunden ist, mit einer hohen Abtastrate abgetastet. Die Verbindung zum PC erfolgt via USB.
Technische Daten
Kanäle
8 digitale Kanäle
Maximale Abtastrate
24 MHz
Maximale Eingangsspannung
0 V ~ 5 V
Betriebstemperatur
0°C ~ 70°C
Eingangsimpedanz
1 MΩ || 10 pF
Unterstützte Protokolle
I²C, SPI, UART, CAN, 1-Wire etc.
PC-Verbindung
USB
Abmessungen
55 x 28 x 14 mm
Downloads
Software
Dieses Bundle enthält:
Buch: Logic Analyzer im Einsatz (Einzelpreis: 40 €)
USB Logic Analyzer (8 Kanäle, 24 MHz) (Einzelpreis: 20 €)
USB-Kabel
Jumper Wire Ribbon Kabel
Der FNB58 USB-Tester (mit Bluetooth) ist ein umfassendes und sehr genaues USB-Spannungs- und Strommessgerät. Es verfügt über ein 2,0"-TFT-Farbdisplay, eine integrierte USB-A-, Micro-USB- und USB-C-Schnittstelle. Mit diesem Gerät können Sie die Stromversorgung oder den Stromverbrauch von Produkten oder die Ladeleistung von Handys und Netzteilen messen. Sie können auch das Schnellladeprotokoll von Ladegeräten bestimmen.
Features
USB-A- und USB-C-Schnittstelle
2,0-Zoll-HD-Display
Daten auf einen Blick
Umfassende Kompatibilität
Ultrapräzise Datenerkennung
Spielen Sie mit der Schnellladetechnologie
Automatische Protokollerkennung (PD2.0, 3.0, 3.1, PPS, QC2.0, 3.0, FCP, SCP, AFC, PE, DASH VOOC, SuperVOOC und mehr)
Einfache Benutzeroberfläche, einfach zu bedienen
4 Funktionskurvenanzeigen (Echtzeit-Spannungs- und Stromkurve, Offline-Kurvenaufzeichnung, D+/D- Spannungskurve, Hochgeschwindigkeits-Stromversorgungswelligkeitsmessung)
Kabelerkennung
10 Gruppen zur Energieaufzeichnung der Batteriekapazitätsberechnung
PC-Konnektivität für Datenprotokollierung und Firmware-Updates
Bluetooth-App für Android-Geräte
Technische Daten
Spannungsbereich
4-28 V
Strombereich
0-7 A
Leistungsbereich
0-120 W
Äquivalenter Innenwiderstand der Last
0-9999,9 Ω
D+/D- Spannung
0-3,3 V
Kapazität
0-9999,99 Ah
Stromverbrauch
0-9999,99 Wh
Kabelwiderstand
0-9999,9 Ω
Schnittstellen
Micro-USB, USB-A, USB-C
Abmessungen
42 x 13 x 82 mm
Downloads
Manual
Firmware V0.68
Open-Source-Code mit Arduino IDE und PlatformIO
Autonomes Fahren: GPS, Accelerometer, Gyroskop
PS3-Controller
Mikrocontroller wie der Arduino und Einplatinenrechner wie der Raspberry Pi haben sich zu beliebten Komponenten entwickelt. Dritter im Bunde ist der ESP32 der Firma Espressif. Mikrocontroller dieser Baureihe zeichnen sich durch eine Vielzahl implementierter Funktionen aus, die bei einem Arduino konventioneller Prägung mit einem Atmel-AVR-Mikrocontroller erst mit weiterer Hardware möglich sind. Prominentes Beispiel sind hier die WiFi- und Bluetooth-Funktionalitäten. Gegenüber einem Raspberry Pi zeichnen sie sich durch einen deutlich geringeren Preis aus.
Allgemeine Informationen für die Realisierung eines Roboterauto-Projekts mit dem ESP32 sind leicht zu finden. Dabei handelt es sich aber oft nur um Ausführungen zu einem Teilaspekt, ohne inhaltliche oder funktionale Abstimmung. So ist nicht nur die Beschaffung der benötigten Informationen mühselig und zeitaufwändig, sie kann auch außerordentlich fehlerträchtig sein.
Ansatzpunkt dieses Buches ist, diese Lücke zu schließen. Es geht auf verschiedene Möglichkeiten eines Chassis ein, vermittelt nötige Kenntnisse und führt schrittweise von einer einfachen Motorsteuerung zu einem komplexen sensor- und sprachgesteuerten Roboterauto. Hacks rund um GPS und eine PlayStation 3 runden die Sache ab.
Inhalt
Bei der Reihenfolge der Kapitel wurde versucht – beginnend bei der Darstellung von grundlegenden Informationen – über die Lösung einfacher Aufgaben zu etwas anspruchsvolleren Techniken zu führen.
Der Mikrocontroller ESP32
Die Software erstellen
Die Stromversorgung
Rund um die Hardware
Das Chassis
Der Gleichstrommotor
Kabellose Steuerung über WiFi
Mit Sensoren Hindernisse erkennen
Eine eigene Roboterauto-App
Servo und Lichtsensor
GPS
Accelerometer / Gyroskop
PS3-Controller
Roboterauto-App
Hinweis zur Software
Die Dateien haben das Suffix (.cpp). Grund ist die Entwicklung mit PlatformIO. Mit Copy & Paste sollten sie auch in der Arduino-IDE verwendet werden können.
Technische Spezifikationen
Zwei ARM Cortex-M0+ mit 133 MHz
264 kB On-Chip-SRAM in sechs unabhängigen Bänken
Unterstützung für bis zu 16 MB Off-Chip-Flash-Speicher über dedizierten QSPI-Bus
DMA-Steuerung
Vollständig angeschlossene AHB-Crossbar
Interpolator- und Integer-Teiler-Peripherie
On-Chip programmierbarer LDO zur Erzeugung der Kernspannung
2x On-Chip-PLLs zur Erzeugung von USB- und Kerntakten
30x GPIO-Pins, von denen 4 als Analogeingänge verwendet werden können
Peripheriegeräte
2x UARTs
2x SPI-Steuerungen
2x I²C-Steuerungen
16x PWM-Kanäle
USB 1.1-Controller und PHY, mit Host- und Geräteunterstützung
8x PIO-Zustandsmaschinen
Was Sie erhalten
10x nackte RP2040-Chips
Dieses Bundle enthält die beliebte Elektor Sanduhr für Raspberry Pi Pico und das neue Elektor Laserkopf-Upgrade und bietet damit noch mehr Möglichkeiten zur Zeitanzeige. Sie können die aktuelle Uhrzeit nicht nur in Sand "gravieren", sondern sie jetzt auch alternativ auf eine im Dunkeln leuchtende Folie schreiben oder grüne Zeichnungen erstellen.
Inhalt des Bundles
Elektor Sanduhr für Raspberry Pi Pico (Einzelpreis: 50 €)
Elektor Laserkopf-Upgrade für Sanduhr (Einzelpreis: 35 €)
Elektor Sanduhr für Raspberry Pi Pico (Raspberry Pi-basierter Eyecatcher)
Eine handelsübliche Sanduhr zeigt nur, wie die Zeit verrinnt. Dagegen zeigt diese Raspberry Pi Pico-gesteuerte Sanduhr die genaue Uhrzeit an, indem die vier Ziffern für Stunde und Minute in die Sandschicht "eingraviert" werden. Nach einer einstellbaren Verzögerung wird der Sand durch zwei Vibrationsmotoren flachgedrückt und der Zyklus beginnt von vorne.
Das Herzstück der Sanduhr sind zwei Servomotoren, die über einen Pantographenmechanismus einen Schreibstift antreiben. Ein dritter Servomotor hebt den Stift auf und ab. Der Sandbehälter ist mit zwei Vibrationsmotoren ausgestattet, um den Sand zu glätten. Der elektronische Teil der Sanduhr besteht aus einem Raspberry Pi Pico und einer RTC/Treiberplatine mit Echtzeituhr, plus Treiberschaltungen für die Servomotoren.
Eine ausführliche Bauanleitung steht zum Download bereit.
Features
Abmessungen: 135 x 110 x 80 mm
Bauzeit: ca. 1,5 bis 2 Stunden
Lieferumfang
3x vorgeschnittene Acrylplatten mit allen mechanischen Teilen
3x Mini-Servomotoren
2x Vibrationsmotoren
1x Raspberry Pi Pico
1x RTC/Treiberplatine mit montierten Teilen
Muttern, Bolzen, Abstandshalter und Drähte für die Baugruppe
Feinkörniger weißer Sand
Elektor Laserkopf-Upgrade für Sanduhr
Der neue Elektor-Laserkopf verwandelt die Elektor Sanduhr in eine Uhr, die die Zeit auf eine im Dunkeln leuchtende Folie statt auf Sand schreibt. Neben der Anzeige der Zeit können damit auch flüchtige Zeichnungen erstellt werden. Der 5-mW-Laserpointer mit einer Wellenlänge von 405 nm erzeugt leuchtend grüne Zeichnungen auf der im Dunkeln leuchtenden Folie. Um optimale Ergebnisse zu erzielen, verwenden Sie das Kit in einem schwach beleuchteten Raum. Achtung: Schauen Sie niemals direkt in den Laserstrahl!
Der Bausatz enthält alle notwendigen Komponenten, es ist jedoch das Anlöten von drei Drähten erforderlich.
Hinweis: Dieses Kit ist auch mit der originalen Arduino-basierten Sanduhr aus dem Jahr 2017 kompatibel. Weitere Einzelheiten finden Sie unter Elektor 1-2/2017 und Elektor 1-2/2018.
Program, build, and master 60+ projects with the Wireless RP2040
The Raspberry Pi Pico and Pico W are based on the fast, efficient, and low-cost dual-core ARM Cortex M0+ RP2040 microcontroller chip running at up to 133 MHz and sporting 264 KB of SRAM and 2 MB of Flash memory. Besides spacious memory, the Pico and Pico W offer many GPIO pins, and popular peripheral interface modules like ADC, SPI, I²C, UART, PWM, timing modules, a hardware debug interface, and an internal temperature sensor.
The Raspberry Pi Pico W additionally includes an on-board Infineon CYW43439 Bluetooth and Wi-Fi chipset. At the time of writing this book, the Bluetooth firmware was not yet available. Wi-Fi is however fully supported at 2.4 GHz using the 802.11b/g/n protocols.
This book is an introduction to using the Raspberry Pi Pico W in conjunction with the MicroPython programming language. The Thonny development environment (IDE) is used in all of the 60+ working and tested projects covering the following topics:
Installing the MicroPython on Raspberry Pi Pico using a Raspberry Pi or a PC
Timer interrupts and external interrupts
Analogue-to-digital converter (ADC) projects
Using the internal temperature sensor and external sensor chips
Using the internal temperature sensor and external temperature sensor chips
Datalogging projects
PWM, UART, I²C, and SPI projects
Using Bluetooth, WiFi, and apps to communicate with smartphones
Digital-to-analogue converter (DAC) projects
All projects are tried & tested. They can be implemented on both the Raspberry Pi Pico and Raspberry Pi Pico W, although the Wi-Fi-based subjects will run on the Pico W only. Basic programming and electronics experience are required to follow the projects. Brief descriptions, block diagrams, detailed circuit diagrams, and full MicroPython program listings are given for all projects.
Practical Multitasking Fundamentals
Programming embedded systems is difficult because of resource constraints and limited debugging facilities. Why develop your own Real-Time Operating System (RTOS) as well as your application when the proven FreeRTOS software is freely available? Why not start with a validated foundation?
Every software developer knows that you must divide a difficult problem into smaller ones to conquer it. Using separate preemptive tasks and FreeRTOS communication mechanisms, a clean separation of functions is achieved within the entire application. This results in safe and maintainable designs.
Practicing engineers and students alike can use this book and the ESP32 Arduino environment to wade into FreeRTOS concepts at a comfortable pace. The well-organized text enables you to master each concept before starting the next chapter. Practical breadboard experiments and schematics are included to bring the lessons home. Experience is the best teacher.
Each chapter includes exercises to test your knowledge. The coverage of the FreeRTOS Application Programming Interface (API) is complete for the ESP32 Arduino environment. You can apply what you learn to other FreeRTOS environments, including Espressif’s ESP-IDF. The source code is available from GitHub. All of these resources put you in the driver’s seat when it is time to develop your next uber-cool ESP32 project.
What you will learn:
How preemptive scheduling works within FreeRTOS
The Arduino startup “loopTask”
Message queues
FreeRTOS timers and the IDLE task
The semaphore, mutex, and their differences
The mailbox and its application
Real-time task priorities and its effect
Interrupt interaction and use with FreeRTOS
Queue sets
Notifying tasks with events
Event groups
Critical sections
Task local storage
The gatekeeper task