3
STM32F10x portfolio
72 MHz Cortex-M3 CPU wide
selection of devices:
6 Kbyte to 20 Kbyte SRAM
Two lines: Performance and Access
Pin-to-pin, software and peripheral
compatibility across family
2.0 to 3.6 V power supply/
5 V tolerant I/Os
-40 to +85 °C or up to 105 °C
operating temperature range
STM32, the optimal platform choice
The STM32 is an optimal choice to support
many applications with the same platform:
From reduced memory and pin requirements to
larger needs
From performance demanding to battery operated
From simple cost-sensitive to complex high-value
The high level of pin-to-pin, peripheral and software
compatibility across the family gives you full flexibility.
You can upgrade to a higher or downgrade to a lower
memory size, or use different packages without
changing your initial layout or software.
Device summary
Part number
Program
memory
type Prog.
(Bytes) RAM
(Bytes)
Timer functions Serial interface I/Os
(High
current) Packages Supply
voltage
Flash 12 or 16-bit
(IC/OC/PWM) Others
STM32 (ARM Cortex-M3) - 32-bit microcontrollers
36
pins STM32F101T6 32 K 6 K 2x16-bit (8/8/8)
2xWDG,
RTC,
24-bit
down
counter
1xSPI/1xI²C/2xUSART* 26(26) QFN36 2 to 3.6 V
STM32F101T8 64 K 10 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 26(26) QFN36 2 to 3.6 V
48
pins
STM32F101C6 32 K 6 K 2x16-bit (8/8/8) 1xSPI/1xI²C/2xUSART* 36(36) LQFP48 2 to 3.6 V
STM32F101C8 64 K 10 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 36(36) LQFP48 2 to 3.6 V
STM32F101CB 128 K 16 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 36(36) LQFP48 2 to 3.6 V
64
pins
STM32F101R6 32 K 6 K 2x16-bit (8/8/8) 1xSPI/1xI²C/2xUSART* 51(51) LQFP64 2 to 3.6 V
STM32F101R8 64 K 10 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 51(51) LQFP64 2 to 3.6 V
STM32F101RB 128 K 16 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 51(51) LQFP64 2 to 3.6 V
100
pins STM32F101V8 64 K 10 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 80(80) LQFP100 2 to 3.6 V
STM32F101VB 128 K 16 K 3x16-bit (12/12/12) 2xSPI/2xI²C/3xUSART* 80(80) LQFP100 2 to 3.6 V
36
pins STM32F103T6 32 K 10 K 3x16-bit (12/12/14) 1xSPI/1xI²C/2xUSART*/USB/CAN 26(26) QFN36 2 to 3.6 V
STM32F103T8 64 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 26(26) QFN36 2 to 3.6 V
48
pins
STM32F103C6 32 K 10 K 3x16-bit (12/12/14) 1xSPI/1xI²C/2xUSART*/USB/CAN 36(36) LQFP48 2 to 3.6 V
STM32F103C8 64 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 36(36) LQFP48 2 to 3.6 V
STM32F103CB 128 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 36(36) LQFP48 2 to 3.6 V
64
pins
STM32F103R6 32 K 10 K 3x16-bit (12/12/14) 1xSPI/1xI²C/2xUSART*/USB/CAN 51(51) LQFP64 2 to 3.6 V
STM32F103R8 64 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 51(51) LQFP64 2 to 3.6 V
STM32F103RB 128 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 51(51) LQFP64 2 to 3.6 V
100
pins STM32F103V8 64 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 80(80) LQFP100/BGA100 2 to 3.6 V
STM32F103VB 128 K 20 K 4x16-bit (16/16/18) 2xSPI/2xI²C/3xUSART*/USB/CAN 80(80) LQFP100/BGA100 2 to 3.6 V
*(IrDA/ISO7816/LIN master/slave)
The STM32 key benefits
Leading-edge architecture with the latest
Cortex-M3 core from ARM
Excellent real-time behaviour
Outstanding power efficiency
Superior and innovative
peripherals
Maximum integration
Easy development,
fast time to market
512 KB
Flash size
(bytes)
256 KB
128 KB
64 KB
32 KB
0 KB
STM32F103T8
STM32F101T8
STM32F103T6
STM32F101T6
STM32F103C8
STM32F101C8
STM32F103C6
STM32F101C6
STM32F103CB
STM32F101CB
36 pins
QFN 48 pins
LQFP 64 pins
LQFP 100 pins
LQFP/BGA
Under development
Available now
Performance line
Access line
STM32F103R8
STM32F101R8
STM32F103RB
STM32F101RB
STM32F103R6
STM32F101R6
STM32F103V8
STM32F101V8
STM32F103VB
STM32F101VB
144 pins
LQFP/BGA
4
Nested vectored
IT controller
Industrial:
PLC
Inverters
Printers, scanners
Industrial networking
Building and security:
Alarm systems
Video intercom
HVAC
Low power:
Glucose meters
Power meters
Battery operated applications
Appliances:
Motor drive
Application control
Consumer:
PC peripherals, gaming
Digital camera, GPS platforms
STM32, more choice with two complete lines
The Performance line, STM32F103, operates at 72 MHz,
with more on-chip RAM and peripherals. The Access
line, STM32F101, operates at 36 MHz. Both lines are
pin-to-pin and software-compatible, and offer the same
embedded Flash options.
The Performance line takes the 32-bit MCU world
to new levels of performance and energy efficiency.
Cortex-M3
CPU
36/72 MHz
JTAG/SW debug
1 x systic timer
6 x 16-bit PWM
synchronized AC timer
DMA 7 channels
Up to 16 external ITs
26/36/51/80 I/Os
1 x SPI
1 x USART/LIN
smartcard/IrDA
modem control
ARM Lite
high-speed
bus matrix/
arbiter
(max.
72 MHz)
Bridge
ARM peripheral bus
(max. 72 MHz)
Flash
I/F 32 KB-128 KB
Flash memory
6 KB-16/20 KB SRAM
20 B backup registers
Clock control
1 or 2 x 12-bit ADC
16 channels/1Msps
Temperature sensor
Power supply
Reg 1.8 V
POR/PDR/PVD
XTAL oscillators
32 kHz + 4~16 MHz
Internal RC oscillators
32 kHz + 8 MHz
PLL
RTC/AWU
2 x USART/LIN
smartcard/
IrDA modem control
1 x SPI
2 x I2C
ARM peripheral bus
(max. 36 MHz)
Bridge
®
3 x 16-bit timer
2 x watchdog
(independent and
window)
Applications
STM32F10x: first two product lines
Both lines include up to:
Up to 128 KB Flash
3 x USART
2 x SPI
2 x I2C
3 x 16-bit timers
Main osc. 4-16 MHz
Real-time clock
2 x watchdogs
Reset circuitry
Power on/down reset
Voltage detector
7-channel DMA
80% GPIO ratio
Internal 8 MHz RC and
32 kHz RC
Performance line STM32F103
72 MHz
CPU
Up to
20 KB
SRAM
2 x 12-bit
ADC (1 µs)
Temperature
sensor
USB 2.0 FS CAN 2.0 B PWM timer
Access line STM32F101
36 MHz
CPU
Up to
16 KB
SRAM
1 x 12-bit
ADC (1 µs)
Temperature
sensor
With its Cortex-M3 core at 72 MHz, it is able to perform
high-end computation. Its peripheral set brings superior
control and connectivity.
The Access line is the entry point of the STM32 family.
It has the power of the 32-bit MCU but at a 16-bit MCU
cost. Its peripheral set offers excellent connectivity
and control.
STM32F10x block diagram
DMA: Direct memory access
RTC: Real-time clock
AWU: Auto wake-up capability with RTC alarm
POR: Power-on reset
PDR: Power-down reset
PVD: Programmable voltage detector
1 x USB 2.0FS
1 x CAN 2.0B
5
Leading-edge architecture with
Cortex-M3 core
Harvard architecture
1.25 DMIPS/MHz and 0.19 mW/MHz
Thumb-2 instruction set brings 32-bit performance
with 16-bit code density
Single cycle multiply and hardware division
Embedded, fast interrupt controller is now inside the
core allowing:
Excellent real-time behaviour
Low latency down to six CPU cycles inter-interrupt
Six CPU cycles wake-up time from low-power mode
Up to 35% faster and up to 45% less code than
ARM7TDMI®
STM32 key benefits
Outstanding power efficiency
High performance does not mean high power
consumption. We have taken special care to address
three main energy requirements driven by the market:
High dynamic power efficiency in running mode
Extremely low power when the application is
in standby
Low-voltage capability for direct battery operation
In run mode, executing from Flash at full 72 MHz CPU
speed, the STM32 has a current consumption as low
as 27 mA.
Stop Standby
RTC on Standby
RTC off RTC Vbat
Vdd: 3.3 V
µA typical
@ 25 °C
14 µA
3.4 µA
2 µA
1.4 µA
STM32F10x: Low power
In standby mode, current consumption is as low as
2 µA typical, with reset circuitry active. Finally, its 2.0 V
to 3.6 V power supply enables its use for battery
operated applications.
The STM32 has three different low power modes and
a versatile clocking scheme so that users can optimize
power consumption versus performance.
The STM32 also embeds a real-time clock (RTC) running
either from a 32 kHz quartz oscillator or an internal
RC. The RTC has a separate power domain, with an
embedded switchover to run either from a dedicated coin
cell battery or from the main supply. Its typical current
consumption is 1.4 µA at 3.3 V. It embeds 20 bytes for
data backup. Start-up time from low-power modes is
lower than 7 µs typical from stop mode, and 55 µs typical
from standby mode and reset.
Core performance DMIPS
Drysthone
rating
100
80
60
40
20
00 10 20 30 40 50 60 70 fCPU (MHz)
Cortex-M3
(Thumb-2)
ARM7TDMI
(ARM)
ARM7TDMI
(Thumb)
IRQ1
ARM7
Interrupt handling
in assembler code
Cortex-M3
Interrupt handling
in HW
PUSH POPISR 1
26-42 16
PUSH POPISR 1
12 12
Cortex-M3 performance versus ARM7TDMI
Cortex-M3 interrupt versus ARM7TDMI
Low voltage 2.0 V to 3.6 V operation
■ 27 mA in run mode from Flash at 72 MHz
■ Startup time from stop < 7 µs
Startup time from standby 55 µs
■ Reset circuitry always active
6
High level of integration
Built-in supervisor reduces need for external
components:
Power-on reset, low voltage detect, brown-out
detect, watchdog timer with independent clock
One main crystal drives entire system:
Inexpensive 4-16 MHz crystal drives CPU, USB
and all peripherals
Embedded PLL generates multiple frequencies
Optional 32 kHz crystal for RTC
Embedded factory trimmed 8 MHz RC can be used
as main clock
Additional low-frequency RC for RTC or watchdog
Only 7 external passive components required for base
system on LQFP100 package
7 power capacitors only!
The need for speed
USB 12 Mbit/s
USART up to 4.5 Mbit/s
SPI 18 MHz master and slave
I2C400 kHz
GPIO 18 MHz maximum toggle
PWM timer 72 MHz clock input
Superior and innovative peripherals
The STM32 benefits from a dual advanced peripheral
bus (APB) architecture, one of which is a high-speed
APB (up to CPU frequency). Peripherals have been
connected on this bus to increase peripheral speed:
Motor control
The STM32 Performance line embeds timers and
ADC features that are perfectly suited to three-phase
brushless motor control. The advanced control PWM
timer offers:
Six outputs
Dead-time generation
Edge-aligned and center-aligned waveforms
Emergency stop and synchronization capability
with the dual ADC, synchronization capability with
other timers
Programmable smoke inhibit feature to protect
registers against unwanted writing
Encoder input
Hall effect sensors interface
Total vector control loop: 21 µs in sensorless mode
The dual ADC architecture allows dual sample and
hold capability with 12-bit resolution, 1 µs conversion
time. The dual ADC is controlled by two independent
sequencers with discontinuous mode, multiple trigger
sources, and channel-by-channel programmable
sampling time.
This dedicated set of peripherals combined with the
high performance of the Cortex-M3 core allows your
software to shorten the total vector control loop to
21 µs (sensorless mode, three-phase PMSM motor).
The CPU load is below 25% at 10 kHz current sampling
frequency, allowing the STM32 to perform other tasks
than motor control in the application.
Supporting tools include the STM32 motor control
starter kit (STM3210B-MCKIT), a complete hardware
platform and ready-to-run demo based on the STM32
motor control firmware library. It allows rapid feature
evaluation and easy implementation of sensor and
sensorless vector-based motor control for three-phase
PMSM and AC induction motors.
7
STM32 easy development, fast time to market
From ideas to reality. As easy as 1, 2, 3
STM32 firmware library
The STM32 firmware library provides easy access to all features of the standard device peripherals of the STM32.
This free software package provides drivers for all standard device features and peripherals, from GPIO and timers
to CAN, I2C, EMI, SPI, UART, ADC and more.
The fully documented and tested C source code requires only basic knowledge of C programming, is compatible
with any C compiler for ARM core-based microcontrollers, and is MISRA C-compliant (latest rules).
The STM32 library shares the same API with the STR7 and STR9 libraries.
USB developer kit
The USB developer kit facilitates USB implementation in a full range of applications by providing a complete,
USB-certified firmware package that allows developers to painlessly develop any flavor of USB firmware including:
Control transfer with generic device management tasks
Interrupt transfer with HID mouse/joystick demo
Bulk transfer with mass storage demo
Isochronous transfer with voice speaker/microphone demo
The kit implements DFU for firmware updates on USB,
and Virtual COM (CDC class) for emulation of an RS232
interface on USB.
STM32 motor control firmware library for vector drive
Optimized and documented C firmware libraries for control of both PMSM and AC induction brushless motors in
vector mode (FOC) are provided for free upon request.
These modular libraries support both types of motors in standalone mode using ST hardware. The source files
are provided free of charge and are MISRA C (latest rules)-compliant, which helps for compliancy with IEC60730.
Internet support
The latest news, downloads and documentation for STM32 microcontrollers can be found at: www.st.com/stm32
Here, you will also find:
A complete selection guide for ST microcontrollers and development tools
Downloads of free software and documentation
Microcontroller and application-specific online forums and FAQs
For further information about a specific third-party tool, please visit the website of the relevant third-party tool supplier.
Idea Product
Ready-to-use
software
Firmware library
USB, CAN
Motor control
Graphics
3
STM32 tools
Starter kits
IDE compilers
Debugger
RTOS
2
STM32
Simple and
powerful
1
Operating systems
A range of portable royalty-free, small-footprint operating
systems to meet a variety of application constraints from
low cost to high security.
Supplier Description
Altium/Tasking
www.tasking.com EDE development environment, Tasking VX compiler,
debugging/programming via JTAG
Green Hills Software
www.ghs.com Multi development environment, GHS C/C++
compiler and Green Hills probe (USB or Ethernet/JTAG)
Hitex
www.hitex.com HiTOP5 development environment, Tasking VX compiler
and Tantino (USB/JTAG)
IAR
www.iar.com EWARM development environment, IAR C/C++
compiler and J-Link (USB/JTAG)
Keil
www.keil.com RealView MDK with uVision3 software, ARM C/C++
compiler and ULINK (USB/JTAG)
Raisonance
www.raisonance.com RIDE development environment with GNU C/C++
compiler and RLink (USB/JTAG)
Rowley
www.rowley.co.uk CrossWorks with CrossStudio software, GNU C/C++
compiler and CrossConnect (JTAG)
RTOS supplier RTOS
CMX Systems: www.cmx.com CMX-RTX
www.FreeRTOS.org FreeRTOS
IAR: www.iar.com PowerPac
Keil: www.keil.com ARTX-ARM
Micrium: www.micrium.com µC/OS-II
Segger: www.segger.com embOS
© STMicroelectronics - October 2007 - Printed in Italy - All rights reserved
The STMicroelectronics corporate logo is a registered trademark of the STMicroelectronics group of companies. All other names are the property of their respective owners.
Order code: BRSTM320807
7771;34054689;
Development tools
A complete range of high-end and low-cost development
tools is available, including complete development
tool solutions, easy-to-use starter kits, and embedded
operating systems, all tailored to the STM32 ARM
Cortex-M3-based MCUs.
Evaluation board STM3210B-EVAL
Complete hardware evaluation
platform with the STM32F103,
implementing the full range of
device peripherals and features.
For more information, visit
www.st.com/stm32
Third-party development solutions
Choose from a full range of development solutions that
offer start-to-finish control of application development
from a single environment. Third-parties offer solutions
with a development environment, C/C++ compiler
and in-circuit emulator for the STM32 and other
ARM core-based devices.
Low-cost and application-specific starter kits
Using the STM32 Primer, play,
explore and develop applications
on a low-cost, innovative
development platform with the
Raisonance toolset, free demos
and an online community at
www.stm32circle.com, to stimulate creative embedded
designs. Evaluate STM32 performance in real time,
with the STM32-PerformanceStick, DashBoard device
performance evaluation GUI, sample applications and
unlimited Hitex software toolset.
For information about compatibility with other tools,
refer to the relevant third-party internet site.
Part number Description
STM3210B-PRIMER Raisonance STM32 Primer with RIDE (debug up to
32 Kbytes of code), GNU C/C++ compiler, and a fun,
stimulating learning and development platform with
MEMS-based controls and integrated RLink (USB/JTAG)
STM3210B-PFSTICK STM32-PerformanceStick with integrated debugging/
programming via USB, unlimited Hitex HiTOP5 and
Tasking VX compiler and DashBoard GUI
STM3210B-SK/HIT Hitex kit with unlimited HiTOP5, Tasking VX compiler,
STM32-PerformanceStick with integrated debugging/
programming via USB, extension I/O board with
peripheral evaluation features, DashBoard GUI
STM3210B-SK/IAR IAR Embedded Workbench for ARM (for up to
32 Kbytes of code), IAR C/C++ compiler, J-Link
(USB/JTAG), evaluation board
STM3210B-SK/KEIL Keil RealView MDK with uVision 3 (for up to 16 Kbytes
of code), ARM C/C++ compiler, ULINK (USB/JTAG),
evaluation board
STM3210B-SK/RAIS Raisonance REva kit with RIDE (debug up to 32 Kbytes
of code), GNU C/C++ compiler, modular evaluation
hardware with integrated RLink (USB/JTAG)
STM3210B-MCKIT ST motor control starter kit with complete sensor
and sensorless libraries, motor control GUI, evaluation
hardware platform for vector drive of three-phase PMSM
and induction motors, plus Segger J-Link debugger for
host PC interface