P14

Embedded C/C++ for Microcontrollers

Curated: level up your embedded C/C++ from a top free university course, then prove you can reason about pointers, memory, hardware registers, and bit manipulation. The intermediate firmware module of the Embedded track.

Curated course · learn it herecurated 2026-08-06

Introduction to Embedded Systems Software and Development Environments

University of Colorado Boulder (Coursera) · online course · ~13h · Free · English

Why we picked it: By far the most popular free university course on this material — 141,000+ learners and a 93% positive rating on Coursera. It is a genuine intermediate step: it refreshes C, then puts pointers, memory layout, hardware-register bit manipulation, and firmware/build structure to work on real ARM Cortex-M microcontrollers with the GNU toolchain. Audit it for free — pick 'Audit the course' and skip the paid certificate.

Covers
  • C refresher: data types, fixed-width types (stdint.h), pointers
  • the memory model & memory map (flash vs RAM, stack, static/global)
  • reading and writing memory-mapped hardware registers through pointers
  • bit manipulation of registers — setting, clearing, and testing bits
  • the GNU/GCC toolchain: compiling, linking, and objdump/map files
  • build systems with make
  • Git version control for firmware
  • structuring and debugging firmware on an ARM Cortex-M target
Go take the courseStudy the course, then use the study guide below and take the check to get certified.

1 study section · what to focus on + prove it in Forge, then take the check.

  1. 1.Study guide — what to focus on~15 min

Knowledge check

10 questions · ~6 min · pass 70%

Take the K-Check →

Scenario check

1 scenario · AI roleplay · rubric-graded

Take the S-Check →