4.embedded programming
Overview
The transcript summarizes a lecture on embedded system programming concepts, development environments, and debugging techniques. It provides an overview of key processor families (AVR, ARM, RISC-V), languages (C, Rust, Python), tools (GCC, Arduino, VS Code), and communication protocols (USB, UART). The lecture analyzes tradeoffs between performance, cost, power, and ease of use. Action items include researching processors, comparing development environments, adding I/O devices to boards, and experimenting with languages.
Assignment
group assignment:
compare the performance and development workflows for other architectures
individual assignment:
extra credit: use different languages &/or development environments
extra credit: connect external components to the board
WorkFlow
Seeed Studio XIAO RP2040
specifications
Item | Value |
---|---|
CPU | Dual-core ARM Cortex M0+ processor up to 133MHz |
Flash Memory | 2MB |
SRAM | 264KB |
Digital I/O Pins | 11 |
Analog I/O Pins | 4 |
PWM Pins | 11 |
I2C interface | 1 |
SPI interface | 1 |
UART interface | 1 |
Power supply and downloading interface | Type-C |
Power | 3.3V/5V DC |
Dimensions | 20×17.5×3.5mm |


Solder the Seeed Studio XIAO RP2040 body and pin headers using a gas soldering iron (GP-510SET) with a (GP-510RT-2.4C) tip.
Gas soldering irons are convenient because they are cordless and do not require electricity.

Solder using lead-free solder and a gas soldering iron.

Solder the pin headers to the Seeed Studio XIAO without touching adjacent pins.

Use the Arduino IDE to bake the program into Seed Studio.

Let's try the famous L-chica programming: I set delay(1000) and generated a code that blinks repeatedly every second.