About 6 months ago I started a tutorial on how to setup a free development environment for a Cortex-M0 microcontroller from STMicroelectronics. This tutorial utilized a free ARM toolchain, Eclipse and OpenOCD (for debugging) to setup this environment. It was based on the $8 STM32F0Discovery board.
While the tutorial targeted the STM32F0Discovery board, the larger objective of that tutorial was to make setting up a free GCC-based development environment for Microcontroller development (Cortex-M0/M3/M4) more accessible to everyone and not just the geeky few. And I feel that the tutorial has somewhat succeeded in this goal…
My issue with the STM32 and most other Cortex-M0/M3/M4 parts is that they’re only available in hard to solder surface mount packages. While I know that they are solderable, 0.5mm 48/64QFP packages are almost impossible to align with the naked eye (at least my eye). QFN packages are generally harder to solder at any pitch and simply not designed for people who want to mess around with microcontrollers on a breadboard. Sadly most of of the Cortex-M0/M3/M4 parts out there come in these packages. The exceptions are some of the Cortex-M0 chips (LPC1114) from NXP that come in 600mil 28-DIP and 0.65mm SSOP. Unfortunately these parts do not have a large enough memory density (32K Flash and 4KB RAM) and peripheral integration to peak my interest. Continue reading →