Arduino · Advanced · Stufe 33 / 40
RP2040 with the Arduino Core and Choosing the Right MCU
Use the RP2040's dual cores, programmable I/O and USB features and select the best microcontroller family for a given product.
Advanced freischalten · CHF 29.90 Stufen 27–40, einmalig, kein Abo
10 Lektionen in dieser Stufe
- RP2040 Architecture and Its Arduino Core
Describe the dual Cortex-M0+ design, external flash and available cores for the IDE. · Lab: Install the core, upload Blink and print chip and flash information. - UF2 Drag-and-Drop, BOOTSEL and Recovering a Board
Use the mass-storage bootloader and recover from firmware that blocks USB. · Lab: Flash by drag and drop, then by the IDE, then recover a board running a deliberately broken sketch. - Using Both Cores: setup1, loop1 and Safe Data Exchange
Run code on the second core and exchange data without races. · Lab: Scan inputs on one core and drive a display on the other, passing events through a FIFO. - Programmable I/O: Writing a First PIO Program
Explain PIO state machines and write a small program that generates a precise signal. · Lab: Generate a square wave of exact frequency in PIO and verify on the logic analyzer. - Custom Protocols with PIO State Machines
Implement a timing-critical serial protocol in PIO with FIFO data transfer. · Lab: Drive addressable LEDs from PIO while the processor does unrelated work. - Building a USB HID Device
Create keyboard, consumer-control and custom HID functions. · Lab: Build a three-key pad that sends shortcuts and a volume knob. - Flash Filesystem and Emulated EEPROM on RP2040
Store settings and files in external flash and understand commit behaviour. · Lab: Save a key map in the filesystem and reload it at start-up. - RP2040 ADC Limits, Reference Pin and Noise
Work around the converter's noise and offset quirks. · Lab: Characterise ADC noise with different regulator modes and averaging. - Wi-Fi on RP2040 Boards with a Radio Module
Reuse your networking knowledge on a different platform. · Lab: Publish a sensor value by MQTT from an RP2040 board with Wi-Fi. - Choosing Between AVR, ESP32, STM32 and RP2040 for a Product
Compare families by power, connectivity, peripherals, cost, availability and toolchain. · Lab: Score the four families against three written product briefs and justify each choice.
Abschlussprojekt
A USB macro keypad with rotary encoder and addressable LEDs that uses PIO for LED timing, the second core for input scanning and stores its key map in flash.
Teile für diese Stufe
- 1 × RP2040 development board
- 1 × RP2040 development board with Wi-Fi
- 2 × USB cable matching the board
- 1 × Solderless breadboard 830 points
- 1 × Jumper wire set male-male and male-female
- 9 × Tactile push button
- 1 × Rotary encoder module with push switch
- 1 × WS2812 addressable LED strip 30 LEDs
- 1 × Potentiometer 10 kilohm
- 1 × USB logic analyzer 8 channel
- 1 × OLED display 0.96 inch I2C 128x64
- 1 × Resistor 330 ohm
In jeder Lektion legst du die passenden Teile direkt in den Warenkorb. Arduino-kompatibel →
Voraussetzung: Levels 1–32: multi-core concepts from the ESP32, USB device basics, timing-critical protocols and PlatformIO.