Starting Electronics Needs Your Help!
It is that time of the year when we need to pay for web hosting and buy new components and equipment for new tutorials. You can help by making a donation. Contribute to this website by clicking the Donate button. The total will be updated once daily. (You may need to clear your browser cache to see the updates.)

Target Amount: $2000
Amount Raised: $199

Donations Received


Understanding the STM32F100 Microcontroller Family

Created on: 25 August 2012

At first glance, it is not easy to understand how the STM32F100 range of microcontrollers from ST Microelectronics is arranged. This article explores the similarities and differences between members of the STM32F100 family.

How STM32F100 Microcontrollers are Grouped

STM32F100 microcontrollers are divided into 3 groups according to on-chip Flash memory size:

  • Low density devices (16k Bytes or 32k Bytes Flash)
  • Medium density devices (64k Bytes Flash or 128k Bytes Flash)
  • High density devices (256k Bytes, 384k Bytes or 512k Bytes Flash)

Within each group, are the following parts:

Low Density Devices

STM32F100x4 – STM32F100C4, STM32F100R4

STM32F100x6 – STM32F100C6, STM32F100R6

Medium Density Devices

STM32F100x8 – STM32F100C8, STM32F100R8, STM32F100V8

STM32F100xB – STM32F100CB, STM32F100RB, STM32F100VB

High Density Devices

STM32F100xC – STM32F100RC, STM32F100VC, STM32F100ZC

STM32F100xD – STM32F100RD, STM32F100VD, STM32F100ZD

STM32F100xE – STM32F100RE, STM32F100VE, STM32F100ZE

Part Numbers

The part numbers of the microcontrollers have the following meaning:

For the part number STM32F100xy

STM32 = ARM-based 32-bit microcontroller

100 = value line sub-family

x = C, R, V or Z where

  • C = 48 pin package
  • R = 64 pin package
  • V =100 pin package
  • Z = 144 pin package

y = 4, 6, 8, B, C, D or E where

  • 4 = 16kB Flash
  • 6 = 32kB Flash
  • 8 = 64kB Flash
  • B = 128kB Flash
  • C = 256kB Flash
  • D = 384kB Flash
  • E = 512kB Flash

Data Sheets

The devices are divided into datasheets as follows:

Low and Medium density devices share a datasheet: CD00251732.pdf

High density devices have a separate datasheet: CD00212417.pdf

All STM32F100 devices share a reference manual: CD00246267.pdf

The datasheets contain hardware information and the reference manual contains programming information such as internal register information.

STM32F100 Similarities

In the list below, the devices with more pins and / or higher Flash density will tend to have more internal and / or external peripherals. The list contains the minimum number of internal or external peripherals that any STM32F100 family member contains.

All STM32F100 microcontrollers have the following features:

  • ARM 32-bit Cortex-M3 CPU
  • 24MHz maximum CPU frequency
  • 6 or more 16-bit timers with input capture / output compare / PWM functions
  • 2 × Watchdog timers (WDT)
  • 1 × 24-bit down counter
  • 10 or more 12-bit ADCs
  • 2 × 12-bit DACs
  • 1 or more SPI
  • 1 or more I²C
  • 1 × CEC (consumer electronics control)
  • 2 or more USART
  • Operate from a 2V to 3.6V supply voltage

Peripheral Differences

Only members from the high density group of STM32F100 microcontrollers that have 100 or more pins have a flexible static memory control (FSMC) interface. The FSMC supports static memory including SRAM, ROM, PSRAM and NOR Flash memory interfacing. The FSMC can also interface to most graphic LCD controllers.

In addition to 3 USARTs, high density STM32F100 microcontrollers have 2 UARTs.