STM32 Series #12: Optimization and Assembly in C

The compiler transforms code while preserving meaning — but forget volatile and it changes the meaning too. See how assembly changes between -O0 and -O2 with objdump, and close out 12 episodes with the ‘conditions for embedded mastery.’

May 8, 2026 · 26 min · 

STM32 Series #9: Interrupt Design Anti-Patterns

printf in ISR, missing volatile, heavy processing, forgotten flag clear — we deliberately trigger every classic embedded landmine and watch them fail. Applies to Arduino, ESP32, Renesas, PIC — every MCU with interrupts.

April 26, 2026 · 18 min · 

STM32 Series #3: Struct Padding and Alignment in Memory

Use the STM32 debugger Memory view to observe struct padding and alignment in C. See why sizeof() doesn’t always equal the sum of member sizes, learn how to reduce RAM usage by reordering members, and understand volatile through actual byte-level inspection.

March 6, 2026 · Updated: March 12, 2026 · 19 min ·