MyRoboPathOpen Robotics Lab
Curriculum Track · 8 Production-Grade Engineering Guides

Microcontrollers & C++

Learn microcontroller engineering from scratch: what is an MCU, MCU vs MPU differences, CPU instruction cycles, Harvard vs Von Neumann architecture, 8-bit to 32-bit families (AVR, PIC, STM32, ESP32, RP2040), Flash/SRAM memory systems, embedded C/C++ programming toolchains, and UART/I2C/SPI communication protocols.

All Guides in Microcontrollers & C++

8 Guides in this section
What is a Microcontroller? Definition, Architecture & Real-World Uses
Guide 0113 min
Beginner

What is a Microcontroller? Definition, Architecture & Real-World Uses

An introduction to microcontrollers (MCUs): learn what a "computer on a single chip" is, how CPU, RAM, ROM, and I/O peripherals work together, and why robots rely on microcontrollers.

Core Insight

A Microcontroller (MCU) is a self-contained, miniature computer integrated onto a single silicon integrated circuit die.

Step-by-Step GuideRead Guide
Microcontrollers vs Microprocessors: Key Differences Explained (MCU vs MPU)
Guide 0214 min
Beginner

Microcontrollers vs Microprocessors: Key Differences Explained (MCU vs MPU)

Are microcontrollers and microprocessors the same? Compare on-chip integration, clock speeds, external memory buses, power consumption, and real-time latency.

Core Insight

A Microprocessor (MPU, like Intel Core or Raspberry Pi Broadcom CPU) is a pure processing engine that requires external RAM, external Flash storage, and external power management chips.

Step-by-Step GuideRead Guide
How Microcontrollers Work? Clock, Fetch-Decode-Execute & Internal Registers
Guide 0315 min
Beginner

How Microcontrollers Work? Clock, Fetch-Decode-Execute & Internal Registers

Step inside the CPU core: discover how crystal oscillators generate clock pulses, how the Fetch-Decode-Execute cycle runs machine code, and how the ALU calculates data.

Core Insight

The crystal oscillator provides the rhythmic electrical clock pulse coordinating every internal transistor transition in the MCU.

Step-by-Step GuideRead Guide
Microcontroller Core Hardware Architecture: Von Neumann, Harvard & RISC vs CISC
Guide 0416 min
Intermediate

Microcontroller Core Hardware Architecture: Von Neumann, Harvard & RISC vs CISC

Explore computer architecture theory in embedded systems: Von Neumann vs Harvard memory buses, RISC vs CISC instruction sets, and peripheral bus matrices.

Core Insight

Harvard Architecture uses SEPARATE physical memory buses for program code (Flash) and data variables (SRAM), allowing simultaneous fetch and data read.

Step-by-Step GuideRead Guide
Microcontroller Types & Families: 8-Bit, 16-Bit & 32-Bit (AVR, PIC, STM32, ESP32, RP2040)
Guide 0516 min
Beginner

Microcontroller Types & Families: 8-Bit, 16-Bit & 32-Bit (AVR, PIC, STM32, ESP32, RP2040)

Comprehensive comparison of popular microcontroller families: 8-bit AVR & PIC, 32-bit ARM Cortex-M (STM32), ESP32 Wi-Fi/Bluetooth, and Raspberry Pi RP2040.

Core Insight

Bit-width (8-bit, 32-bit) represents the size of integer numbers and memory addresses the ALU can process in a single clock cycle.

Step-by-Step GuideRead Guide
Microcontroller Memory Systems: Flash ROM, SRAM, EEPROM & Memory-Mapped I/O
Guide 0615 min
Intermediate

Microcontroller Memory Systems: Flash ROM, SRAM, EEPROM & Memory-Mapped I/O

Master embedded memory systems: differentiate Flash program storage from SRAM variables, avoid Stack Overflow, and write to memory-mapped hardware peripheral registers.

Core Insight

Flash Memory is non-volatile ROM where your compiled C++ program code binary resides permanently.

Step-by-Step GuideRead Guide
How to Get Started with Microcontroller Programming: C/C++, Toolchains & First Blink
Guide 0717 min
Beginner

How to Get Started with Microcontroller Programming: C/C++, Toolchains & First Blink

Step-by-step beginner setup guide: install modern IDEs (Arduino IDE, VS Code PlatformIO), understand the compilation toolchain, and write your first LED Blink firmware.

Core Insight

The embedded toolchain (GCC Cross-Compiler -> Linker -> Binutils) converts human-readable C/C++ into a .hex / .bin binary file flashed over USB.

Step-by-Step GuideRead Guide
Microcontroller Communication Protocols: UART, I2C, SPI & CAN Bus Explained
Guide 0816 min
Beginner

Microcontroller Communication Protocols: UART, I2C, SPI & CAN Bus Explained

Master hardware serial communication buses: compare UART asynchronous serial, I2C 2-wire multi-device bus, SPI high-speed synchronous streaming, and industrial CAN bus.

Core Insight

UART is an asynchronous point-to-point protocol requiring only 2 wires (TX and RX) and a shared Baud rate (e.g. 115200).

Step-by-Step GuideRead Guide