ST Microelectronics makes a lot of different microcontroller chips:
We’re only interested in the ARM Cortex chips here, i.e. the STM32’s:
- the F0 series is Cortex M0
- the F1 and F2 series are Cortex M3 (faster)
- the F3 and F4 series are Cortex M4 (w/ floating point)
- the F7 series is Cortex M7 (high end, just out)
- the Lx series are low-power variants (but not as many features)
All of these are available in a variety of packages, and with different numbers of pins. It’s easy to get lost in this jungle, and the fact that they are called “STM32F<blah><blah>
” isn’t very helpful, but STM has adopted some simple conventions across their entire range.
Let’s take STM32F103R8T6
as example:
- STM32 is obvious: the manufacturer and the 32-bit ARM family
- F1 (also “F1xx”): it’s an ARM Cortex M3 with hardware multiply and divide
- 03 (or rather “F103”): a specific µC with a specific set of built-in peripherals
- looking at the datasheet, we can also tell that this series runs at up to 72 MHz
- R is the pin count: “T” is 36, “C” is 48, “R” is 64, “V” is “100”, etc
- 8 is the memory size: “8” is 64 KB flash, “B” is 128 KB, “C” is 256 KB, etc
- T is the package type: “T” is LQFP, “V” is “VFQFPN”, etc
- 6 is the temperature range: “6” is -40 .. +85 °C
For software development, what matters most is the “F103” (architecture) and the “8” (memory size and some h/w trade-offs). The rest is just tedious and confusing, mostly.
We’re going to stick to “F103” for the time being. Which is a world in itself, by the way.
[Back to article index]