Play Video
1
Stm32 Урок 1: Создание проекта в Keil UVision
Stm32 Урок 1: Создание проекта в Keil UVision
::2013/10/28::
Play Video
2
STM32 with SSD1963 + TFT display
STM32 with SSD1963 + TFT display
::2013/01/26::
Play Video
3
Stm32 Урок 2: Мигание светодиодом с CMSIS
Stm32 Урок 2: Мигание светодиодом с CMSIS
::2013/10/28::
Play Video
4
Getting started ARM cortex M4 STM32 with Eclipse in Linux (1/3)
Getting started ARM cortex M4 STM32 with Eclipse in Linux (1/3)
::2014/01/10::
Play Video
5
Product overview -  STM32Cube making STM32 development easier (epresentation)
Product overview - STM32Cube making STM32 development easier (epresentation)
::2014/02/20::
Play Video
6
How to drag solder an STM32 to your CC3d
How to drag solder an STM32 to your CC3d
::2013/06/12::
Play Video
7
This is simplest possible board for ARM (STM32) - single layer, single sided, and only 1 capacitor
This is simplest possible board for ARM (STM32) - single layer, single sided, and only 1 capacitor
::2011/06/30::
Play Video
8
STM32 F3-Discovery kit demonstration
STM32 F3-Discovery kit demonstration
::2012/11/13::
Play Video
9
stm32 Урок 14: DMA - теория
stm32 Урок 14: DMA - теория
::2013/12/18::
Play Video
10
STM32 Nucleo Dev Boards - Product Overview
STM32 Nucleo Dev Boards - Product Overview
::2014/06/30::
Play Video
11
STM32 tutorial 1: Create a new project using Keil uVision4
STM32 tutorial 1: Create a new project using Keil uVision4
::2013/07/24::
Play Video
12
STM32 Mini Computer
STM32 Mini Computer
::2010/03/31::
Play Video
13
Getting started with STM32 using MDK-ARM IDE from Keil
Getting started with STM32 using MDK-ARM IDE from Keil
::2014/07/10::
Play Video
14
Настраиваем IAR для stm32 и мигаем светодидом.
Настраиваем IAR для stm32 и мигаем светодидом.
::2011/02/27::
Play Video
15
STM32 clock configuration tool
STM32 clock configuration tool
::2012/01/02::
Play Video
16
STM32 F4 series: floating point unit (FPU) benefits
STM32 F4 series: floating point unit (FPU) benefits
::2012/03/28::
Play Video
17
STM32 контроллер
STM32 контроллер
::2013/05/18::
Play Video
18
How to prepare IDE for STM32 in eclipse?
How to prepare IDE for STM32 in eclipse?
::2014/04/08::
Play Video
19
Stm32 Урок 9: Кнопка
Stm32 Урок 9: Кнопка
::2013/11/18::
Play Video
20
Stm32 Урок 6: Модульное программирование
Stm32 Урок 6: Модульное программирование
::2013/11/13::
Play Video
21
Programming STM32 with Matlab Simulink
Programming STM32 with Matlab Simulink
::2014/08/05::
Play Video
22
STM32 GUI Builder
STM32 GUI Builder
::2014/01/17::
Play Video
23
LQFP-48 PCB (MCB) board Milling for STM32 on homemade CNC
LQFP-48 PCB (MCB) board Milling for STM32 on homemade CNC
::2013/06/27::
Play Video
24
Stm32: Урок 15: Инициализация DMA
Stm32: Урок 15: Инициализация DMA
::2013/12/26::
Play Video
25
Stm32 Урок 7: Заливка прошивки в плату
Stm32 Урок 7: Заливка прошивки в плату
::2013/11/18::
Play Video
26
Getting started with STM32 built-in USB DFU Bootloader
Getting started with STM32 built-in USB DFU Bootloader
::2014/07/28::
Play Video
27
Calling the STM32 SystemMemory Bootloader from your application
Calling the STM32 SystemMemory Bootloader from your application
::2011/12/14::
Play Video
28
STM32F0 Discovery Tutorial Blinking Led
STM32F0 Discovery Tutorial Blinking Led
::2013/03/18::
Play Video
29
STM32 tutorial part.1 - Set up a project in KEIL μVision
STM32 tutorial part.1 - Set up a project in KEIL μVision
::2014/10/04::
Play Video
30
STM32 Hexapod Robot controlled by Android
STM32 Hexapod Robot controlled by Android
::2014/09/28::
Play Video
31
Обзор документации на stm32, часть 1.
Обзор документации на stm32, часть 1.
::2011/01/22::
Play Video
32
STM32: IAR V6.2 tutorial
STM32: IAR V6.2 tutorial
::2011/10/04::
Play Video
33
Stm32 Урок 41: Генерация анаголового сигнала на ШИМ
Stm32 Урок 41: Генерация анаголового сигнала на ШИМ
::2014/10/24::
Play Video
34
STM32 Matlab PIL Simulation
STM32 Matlab PIL Simulation
::2013/12/09::
Play Video
35
STM32 Bluetooth Test
STM32 Bluetooth Test
::2010/02/28::
Play Video
36
Stm32 Урок 4: SysTick
Stm32 Урок 4: SysTick
::2013/10/28::
Play Video
37
STM32 Oscilloscope - using FFT Calculations
STM32 Oscilloscope - using FFT Calculations
::2010/02/18::
Play Video
38
Stm32 Урок 11: Передача по USART
Stm32 Урок 11: Передача по USART
::2013/12/04::
Play Video
39
stm32  webradio
stm32 webradio
::2011/04/29::
Play Video
40
STM32 F7 Series - The smartest STM32 ever:  World’s 1st ARM®  Cortex® -M7 based 32-bit MCU
STM32 F7 Series - The smartest STM32 ever: World’s 1st ARM® Cortex® -M7 based 32-bit MCU
::2014/09/30::
Play Video
41
Jak skonfigurować środowisko programistyczne dla STM32?
Jak skonfigurować środowisko programistyczne dla STM32?
::2014/04/08::
Play Video
42
STM32 GUI Builder - Calculator
STM32 GUI Builder - Calculator
::2014/01/27::
Play Video
43
STM32 system memory boot modes
STM32 system memory boot modes
::2012/01/12::
Play Video
44
mikromedia STM32 M3
mikromedia STM32 M3
::2012/09/02::
Play Video
45
Huong dan tao project don gian voi KeilC - STM32 [Lớp ARM cơ bản]
Huong dan tao project don gian voi KeilC - STM32 [Lớp ARM cơ bản]
::2012/11/26::
Play Video
46
Stm32 Урок 10: Обзор USART
Stm32 Урок 10: Обзор USART
::2013/11/27::
Play Video
47
Stm32: Урок 25: Проверка SPI
Stm32: Урок 25: Проверка SPI
::2014/04/21::
Play Video
48
FreeRTOS on STM32 Mini Board with LCD Display
FreeRTOS on STM32 Mini Board with LCD Display
::2013/05/08::
Play Video
49
Stm32: Урок 16: Запуск DMA
Stm32: Урок 16: Запуск DMA
::2013/12/27::
Play Video
50
Stm32 Урок 33: Настройка таймера
Stm32 Урок 33: Настройка таймера
::2014/09/11::
NEXT >>
RESULTS [51 .. 101]
From Wikipedia, the free encyclopedia
Jump to: navigation, search
STM32 Family [1]
Produced From 2007 to Current
Designed by STMicroelectronics
Max. CPU clock rate 24  to 180 MHz
Min. feature size 130 to 90 nm
Microarchitecture ARM Cortex-M4F [2]
ARM Cortex-M3 [3]
ARM Cortex-M0+ [4]
ARM Cortex-M0 [5]
STM32F103VGT6 die
STM32F100C4T6B die

STM32 is a family of 32-bit microcontroller integrated circuits by STMicroelectronics. The STM32 chips are grouped into related series that are based around the same 32-bit ARM processor core, such as the Cortex-M7, Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals.[1]

Overview[edit]

Main articles: ARM architecture and ARM Cortex-M

The STM32 is a family of microcontroller ICs based on the 32-bit RISC ARM Cortex-M7, Cortex-M4F, Cortex-M3, Cortex-M0+, and Cortex-M0 cores.[1] STMicroelectronics licenses the ARM Processor IP from ARM Holdings. The ARM core designs have numerous configurable options, and ST chooses the individual configuration to use for each design. ST attaches their own peripherals to the core before converting the design into a silicon die. The following tables summarize the STM32 microcontroller families.

STM32 Series ARM CPU Core
F7
Cortex-M7
F4, F3, J
Cortex-M4F
F2, F1, L1, W, J
Cortex-M3
L0
Cortex-M0+
F0
Cortex-M0

History[edit]

Leaflabs Maple. Arduino-style board with STM32F103RBT6 microcontroller.

The STM32 is the third ARM family by STMicroelectronics. It follows their earlier STR9 family based on the ARM9E core,[6] and STR7 family based on the ARM7TDMI core.[7] The following is the history of how the STM32 family has evolved.

  • In October 2006, STMicroelectronics (ST) announced that it licensed the ARM Cortex-M3 core.[8]
  • In June 2007, ST announced the STM32 F1-series based on the ARM Cortex-M3.[9]
  • In November 2007, ST announced the low-cost "STM32-PerformanceStick" development kit in partner with Hitex.[10]
  • In October 2009, ST announced that new ARM chips would be built using the 90 nm process.[11]
  • In April 2010, ST announced the STM32 L1-series chips.[12]
  • In September 2010, ST announced the STM32VLDISCOVERY board.[13]
  • In November 2010, ST announced the STM32 F2-series chips based on the ARM Cortex-M3 core, and future development of chips based on the ARM Cortex-M4 and ARM Cortex-M3 cores.[14]
  • In February 2011, ST announced the STM32L-DISCOVERY board.[15]
  • In March 2011, ST announced the expansion of their STM32 L1-series chips with flash densities of 256 KB and 384 KB.[16]
  • In September 2011, ST announced the STM32 F4-series chips based on the ARM Cortex-M4F core and STM32F4DISCOVERY board.[17]
  • In February 2012, ST announced the STM32 F0-series chips based on the ARM Cortex-M0 core.[18]
  • In May 2012, ST announced the STM32F0DISCOVERY board.[19]
  • In June 2012, ST announced the STM32 F3-series chips based on the ARM Cortex-M4F core.[20]
  • In September 2012, ST announced full-production of STM32 F3-series chips and STM32F3DISCOVERY board. The STM32 F050-series will also be available in a TSSOP20 package.[21]
  • In January 2013, ST announced full Java support for STM32 F2 and F4-series chips.[22]
  • In February 2013, ST announced STM32 Embedded Coder support for MATLAB and Simulink.[23]
  • In February 2013, ST announced the STM32 F4x9-series chips.[24]
  • In April 2013, ST announced the STM32 F401-series chips.[25]
  • In July 2013, ST announced the STM32 F030-series chips. The STM32 F030-series will also be available in a TSSOP20 package.[26]
  • In September 2013, ST announced the STM32F401C-DISCO and STM32F429I-DISCO boards.[27]
  • In October 2013, ST announced the STM32F0308DISCOVERY board.[28]
  • In December 2013, ST announced that it is joining the mbed project.[29]
  • In January 2014, ST announced the STM32 F0x2-series chips, STM32F072B-DISCO board, and STM32072B-EVAL board.[30]
  • In February 2014, ST announced the STM32 L0-series chips based on the ARM Cortex-M0+ core.[31]
  • In February 2014, ST announced multiple STM32 Nucleo boards with Arduino headers and mbed IDE.[32]
  • In February 2014, ST announced the release of free STM32Cube software tool with graphical configurator and C code generator.[33]
  • In April 2014, ST announced the STM32F30x chips are now available in full production. A new NUCLEO-F302R8 board was also announced.[34]
  • In September 2014, ST announced the STM32 F7 series, the first chips based on the Cortex-M7 core.[35]

Series[edit]

The STM32 family consists of seven series of microcontrollers: F4, F3, F2, F1, F0, L1, L0, W.[1] Each STM32 microcontroller series is based upon either a Cortex-M4F, Cortex-M3, Cortex-M0+, or Cortex-M0 ARM processor core. The Cortex-M4F is conceptually a Cortex-M3[3] plus DSP and single-precision floating point instructions.[2]

STM32 F4[edit]

STM32 F4 Series [36]
Produced From 2011 to Current
Max. CPU clock rate 84  to 180 MHz
Min. feature size 90 nm
Instruction set Thumb, Thumb-2,
Sat Math, DSP, FPU
Microarchitecture ARM Cortex-M4F [2]

The STM32 F4-series is the first group of STM32 microcontrollers based on the ARM Cortex-M4F core. The F4-series is also the first STM32 series to have DSP and floating point instructions. The F4 is pin-to-pin compatible with the STM32 F2-series and adds higher clock speed, 64K CCM static RAM, full duplex I²S, improved real-time clock, and faster ADCs. The summary for this series is:[17][24][25][36][37]

STM32 F3[edit]

STM32 F3 Series [38]
Produced From 2012 to Current
Max. CPU clock rate 72 MHz
Instruction set Thumb, Thumb-2,
Sat Math, DSP, FPU
Microarchitecture ARM Cortex-M4F [2]

The STM32 F3-series is the second group of STM32 microcontrollers based on the ARM Cortex-M4F core, and the most recent series from ST. The F3 is almost pin-to-pin compatible with the STM32 F1-series. The summary for this series is:[20][21][38]

  • Core:
  • Memory:
    • Static RAM consists of 16 / 24 / 32 / 40 KB general purpose with hardware parity check, 0 / 8 KB core coupled memory (CCM) with hardware parity check, 64 / 128 bytes battery-backed with tamper-detection erase.
    • Flash consists of 64 / 128 / 256 KB general purpose, 8 KB system boot, and option bytes.
    • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
    • Each F3-series includes various peripherals that vary from line to line.
  • Oscillators consists of internal (8 MHz, 40 kHz), optional external (1 to 32 MHz, 32.768 to 1000 kHz).
  • IC packages: LQFP48, LQFP64, LQFP100, UFBGA100.
  • Operating voltage range is 2.0 to 3.6 volt.

The distinguishing feature for this series is presence of four fast, 12-bit, simultaneous sampling ADCs (multiplexer to over 30 channels), and interestingly, four matched, 8 MHz bandwidth OpAmps with all pins exposed and additionally internal PGA (Programmable Gain Array) network. The exposed pads allow for a range of analogue signal conditioning circuits like band-pass filters, anti-alias filters, charge amplifiers, integrators/differentiators, 'instrumentation' high-gain differential inputs, and other. This eliminates need for external OpAmps for many applications. The built-in two-channel DAC has arbitrary waveform as well as a hardware-generated waveform (sine, triangle, noise etc.) capability. All analogue devices can be completely independent, or partially internally connected, meaning that one can have nearly everything that is needed for an advanced measurement and sensor interfacing system in a single chip.

The four ADCs can be simultaneously sampled making a wide range of precision analogue control equipment possible. It is also possible to use a hardware scheduler for the multiplexer array, allowing good timing accuracy when sampling more than 4 channels, independent of the main processor thread. The sampling and multiplexing trigger can be controlled from a variety of sources including timers and built-in comparators, allowing for irregular sampling intervals where needed.

The op-amps inputs feature 2-to-1 analogue multiplexer, allowing for a total of eight analogue channels to be pre-processed using the op-amp; all the op-amp outputs can be internally connected to ADCs.

STM32 F2[edit]

STM32 F2 Series [39]
Produced From 2010 to Current
Max. CPU clock rate 120 MHz
Min. feature size 90 nm
Instruction set Thumb, Thumb-2,
Saturated Math
Microarchitecture ARM Cortex-M3 [3]

The STM32 F2-series of STM32 microcontrollers based on the ARM Cortex-M3 core. It is the most recent and fastest Cortex-M3 series. The F2 is pin-to-pin compatible with the STM32 F4-series. The summary for this series is:[14][39][40]

  • Core:
  • Memory:
    • Static RAM consists of 64 / 96 / 128 KB general purpose, 4 KB battery-backed, 80 bytes battery-backed with tamper-detection erase.
    • Flash consists of 128 / 256 / 512 / 768 / 1024 KB general purpose, 30 KB system boot, 512 bytes one-time programmable (OTP), 16 option bytes.
    • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
    • Common peripherals included in all IC packages are USB 2.0 OTG HS, two CAN 2.0B, one SPI + two SPI or I2S), three I²C, four USART, two UART, SDIO/MMC, twelve 16-bit timers, two 32-bit timers, two watchdog timers, temperature sensor, 16 or 24 channels into three ADCs, two DACs, 51 to 140 GPIOs, sixteen DMA, real-time clock (RTC), cyclic redundancy check (CRC) engine, random number generator (RNG) engine. Larger IC packages add 8/16-bit external memory bus capabilities.
    • The STM32F2x7 models add Ethernet MAC, camera interface, USB 2.0 OTG FS.
    • The STM32F21x models add a cryptographic processor for DES / TDES / AES, and a hash processor for SHA-1 and MD5.
  • Oscillators consists of internal (16 MHz, 32 kHz), optional external (4 to 26 MHz, 32.768 to 1000 kHz).
  • IC packages: WLCSP64, LQFP64, LQFP100, LQFP144, LQFP176, UFBGA176.
  • Operating voltage range is 1.8 to 3.6 volt.

STM32 F1[edit]

STM32 F1 Series [41]
Produced From 2007 to Current
Max. CPU clock rate 24  to 72 MHz
Instruction set Thumb, Thumb-2,
Saturated Math
Microarchitecture ARM Cortex-M3 [3]

The STM32 F1-series was the first group of STM32 microcontrollers based on the ARM Cortex-M3 core and considered their mainstream ARM microcontrollers. The F1-series has evolved over time by increasing CPU speed, size of internal memory, variety of peripherals. There are five F1 lines: Connectivity (STM32F105/107), Performance (STM32F103), USB Access (STM32F102), Access (STM32F101), Value (STM32F100). The summary for this series is:[41][42][9]

  • Core:
  • Memory:
    • Static RAM consists of 4 / 6 / 8 / 10 / 16 / 20 / 24 / 32 / 48 / 64 / 80 / 96 KB.
    • Flash consists of 16 / 32 / 64 / 128 / 256 / 384 / 512 / 768 / 1024 KB.
  • Peripherals:
    • Each F1-series includes various peripherals that vary from line to line.
  • IC packages: VFQFPN36, VFQFPN48, LQFP48, WLCSP64, TFBGA64, LQFP64, LQFP100, LFBGA100, LQFP144, LFBGA144.

STM32 F0[edit]

STM32 F0 Series [43]
Produced From 2012 to Current
Max. CPU clock rate 48 MHz
Min. feature size 16 KB to 128 KB
Instruction set Thumb subset,
Thumb-2 subset
Microarchitecture ARM Cortex-M0 [5]

The STM32 F0-series are the first group of ARM Cortex-M0 chips in the STM32 family. The summary for this series is:[18][26][30][43]

  • Core:
    • ARM Cortex-M0 core at a maximum clock rate of 48 MHz.
    • Cortex-M0 options include the SysTick Timer.
  • Memory:
    • Static RAM consists of 4 / 8 / 16 / 20 KB general purpose with hardware parity checking.
    • Flash consists of 16 / 32 / 64 / 128 KB general purpose.
    • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
    • Each F0-series includes various peripherals that vary from line to line.
  • Oscillators consists of internal (8 MHz, 40 kHz), optional external (1 to 32 MHz, 32.768 to 1000 kHz).
  • IC packages: TSSOP20, UFQFPN32, LQFP/UFQFN48, LQFP64, LQFP/UFBGA100.
  • Operating voltage range is 2.0 to 3.6 volt with the possibility to go down to 1.65 V.

STM32 L1[edit]

STM32 L1 Series [44]
Produced From 2010 to Current
Max. CPU clock rate 32 MHz
Min. feature size 130 nm
Instruction set Thumb, Thumb-2,
Saturated Math
Microarchitecture ARM Cortex-M3 [3]

The STM32 L1-series was the first group of STM32 microcontrollers with a primary goal of ultra-low power usage for battery-powered applications. The summary for this series is:[12][16][44][45]

  • Core:
  • Memory:
    • Static RAM consists of 10 / 16 / 32 / 48 / 80 KB general purpose, 80 bytes with tamper-detection erase.
    • Flash consists of 32 / 64 / 128 / 256 / 384 / 512 KB general purpose with ECC, 4 / 8 KB system boot, 32 option bytes, EEPROM consists of 4 / 8 / 12 / 16 KB data storage with ECC.
    • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
    • Common peripherals included in all IC packages are USB 2.0 FS, two SPI, two I²C, three USART, eight 16-bit timers, two watchdog timers, temperature sensor, 16 to 24 channels into one ADC, two DACs, 37 to 83 GPIOs, seven DMA, real-time clock (RTC), cyclic redundancy check (CRC) engine. The STM32FL152 line adds a LCD controller.
  • Oscillators consists of internal (16 MHz, 38 kHz, variable 64 kHz to 4 MHz), optional external (1 to 26 MHz, 32.768 to 1000 kHz).
  • IC packages: UFQFPN48, LQFP48, LQFP64, TFBGA64, LQFP100, UFBGA100.
  • Operating voltage range is 1.65 to 3.6 volt.

STM32 L0[edit]

STM32 L0 Series [46]
Produced From 2014 to Current
Max. CPU clock rate 32 MHz
Instruction set Thumb subset,
Thumb-2 subset
Microarchitecture ARM Cortex-M0+ [4]

The STM32 L0-series is the first group of STM32 microcontrollers based on the ARM Cortex-M0+ core. This series targets low power applications. The summary for this series is:[31][46]

  • Core:
    • ARM Cortex-M0+ core at a maximum clock rate of 32 MHz.
    • Debug interface is SWD with breakpoints and watchpoints. JTAG debugging isn't supported.
  • Memory:
    • Static RAM sizes of 8 KB general purpose with hardware parity checking, 20 bytes battery-backed with tamper-detection erase.
    • Flash sizes of 32 or 64 KB general purpose (with ECC).
    • EEPROM sizes of 2 KB (with ECC).
    • ROM which contains of a boot loader with optional reprogramming of the Flash from USART1, USART2, SPI1, SPI2.
    • Each chip has a factory-programmed 96-bit unique device identifier number.
  • Peripherals:
    • two USART, one low-power UART, two I²C, two SPI or one I²S, one full-speed USB (only L0x2 and L0x3 chips).
    • one 12-bit ADC with multiplexer, one 12-bit DAC, two analog comparators, temperature sensor.
    • timers, low-power timers, watchdog timers, 5 V-tolerant GPIOs, real-time clock, DMA controller, CRC engine.
    • capacitive touch sense and 32-bit random number generator (only L0x2 and L0x3 chips), LCD controller (only L0x3 chips), 128-bit AES engine (only L06x chips).
  • Oscillators consists of optional external 1 to 24 MHz crystal or oscillator, optional external 32.768 kHz crystal or ceramic resonator, multiple internal oscillators, and one PLL.
  • IC packages are LQFP48, LQFP64, TFBGA64.
  • Operating voltage range is 1.8 to 3.6 volt, including a programmable brownout detector.

STM32 W[edit]

STM32 W Series [47]
Max. CPU clock rate 24 MHz
Instruction set Thumb, Thumb-2,
Saturated Math
Microarchitecture ARM Cortex-M3 [3]

The STM32 W-series of ARM chips primary feature is targeting RF communication applications. The summary for this series is:[47]

  • Core:
    • ARM Cortex-M3 core at a maximum clock rate of 24 MHz.
  • Memory:
    • Static RAM consists of 8 / 16 kB.
    • Flash consists of 64 / 128 / 192 / 256 kB.
  • Peripherals:
    • Each W-series includes various peripherals that vary from line to line.
  • IC packages: VFQFPN40, VFQFPN48, UFQFPN48.

STM32 J[edit]

STMicroelectronics provides a selection of STM32 microcontrollers ready to be used with Java programming language. This special series embeds the required features to execute Java programs. They are based on the existing STM32 F1, F2, F4 families. There are two sets of special part numbers enabled for Java: Production part numbers end in the letter "J", and sample part numbers end in the letter "U".[22][48]

Development boards[edit]

Arduino boards[edit]

The following are Arduino header-compatible boards with STM32 microcontrollers. The Nucleo boards (see next section) also have Arduino headers.

  • Maple board by Leaflabs has a STM32F103RB microcontroller. A C/C++ library called libmaple is available to make it easier to migrate from Arduino.
  • OLIMEXINO-STM32 board by Olimex has a STM32F103RBT6 microcontroller and similar to the Maple board.

Nucleo boards[edit]

Nucleo family of boards by STMicroelectronics with mbed IDE development.[29][32] The Nucleo board has an onboard ST-LINK/V2-1 host adapter that supports SWD debugging / virtual COM port / mass storage. Each board has Arduino female headers and a new STM32 Morpho connectors consisting of two 19x2 male pin headers. The PCB uses a common layout that supports many STM32 series using a pin-to-pin compatible LQFP64 packages.

Discovery boards[edit]

STM32VLDISCOVERY board with STM32F100RBT6 microcontroller.

The following Discovery evaluation boards are sold by STMicroelectronics to provide a quick and easy way for engineers to evaluate their microcontroller chips. These kits are available from various distributors for less than US$20. The STMicroelectronics evaluation product licence agreement forbids their use in any production system or any product that is offered for sale.[49]

Each board includes an on-board ST-LINK for programming and debugging via a Mini-B USB connector. The power for each board is provided by a choice of the 5 V via the USB cable, or external 3.3 V or 5 V power supply. All Discovery boards also include a voltage regulator, reset button, user button, multiple LEDs, SWD header on top of each board, and rows of header pins on the bottom.[50]

An open-source project was created to allow Linux to communicate with the ST-LINK debugger.[51]

ChibiOS/RT, a free RTOS, has been ported to run on some of the Discovery boards.[52][53][54]

STM32F429IDISCOVERY
STM32F4DISCOVERY
STM32F401CDISCOVERY
STM32F3DISCOVERY
STM32VLDISCOVERY
STM32L-DISCOVERY
  • A discovery board for STM32L152RBT6 microcontroller with 32 MHz ARM Cortex-M3 core, 128 KB Flash (with ECC), 16 KB RAM, 4 KB EEPROM (with ECC) in LQFP64 package.[15]
  • This board includes an integrated ST-LINK/V2 debugger via Mini-B USB connector, 24-segment LCD, touch sensors, 2 user LEDs, user button, reset button, and two 28x1 male pin headers.
  • This board is currently End-Of-Life and replaced by the 32L152CDISCOVERY board.
STM32L152CDISCOVERY
  • A discovery board for STM32L152RCT6 microcontroller with 32 MHz ARM Cortex-M3 core, 256 KB Flash (with ECC), 32 KB RAM, 8 KB EEPROM (with ECC) in LQFP64 package.
  • This board includes an integrated ST-LINK/V2 debugger via Mini-B USB connector, 24-segment LCD, touch sensors, 2 user LEDs, user button, reset button, and two 28x1 male pin headers.
STM32L100CDISCOVERY
  • A discovery board for STM32L100RCT6 microcontroller with 32 MHz ARM Cortex-M3 core, 256 KB Flash (with ECC), 16 KB RAM, 4 KB EEPROM (with ECC) in LQFP64 package.
  • This board includes an integrated ST-LINK/V2 debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 33x1 male pin headers.
STM32F072BDISCOVERY
  • A discovery board for STM32F072RBT6 microcontroller with 48 MHz ARM Cortex-M0 core, 128 KB Flash, 16 KB RAM (with parity) in LQFP64 package.[30]
  • This board includes an integrated ST-LINK/V2 debugger via Mini-B USB connector, gyroscope (L3GD20), 4 user LEDs, user button, reset button, linear touch keys, Full-Speed USB to second Mini-B USB connector, and two 33x1 male pin headers.
STM32F0DISCOVERY
  • A discovery board for STM32F051R8T6 microcontroller with 48 MHz ARM Cortex-M0 core, 64 KB Flash, 8 KB RAM (with parity) in LQFP64 package.[19]
  • This board includes an integrated ST-LINK/V2 debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 33x1 male pin headers.
  • A prototyping perfboard with 0.1-inch (2.54 mm) grid of holes is included.
STM32F0308DISCOVERY
  • A discovery board for STM32F030R8T6 microcontroller with 48 MHz ARM Cortex-M0 core, 64 KB Flash, 8 KB RAM (with parity) in LQFP64 package.[28]
  • This board includes an integrated ST-LINK/V2 debugger via Mini-B USB connector, 2 user LEDs, user button, reset button, and two 33x1 male pin headers.
  • A prototyping perfboard with 0.1-inch (2.54 mm) grid of holes is included.

Evaluation boards[edit]

The following evalulation kits are sold by STMicroelectronics.[55]

STM32W-RFCKIT
  • An RF evaluation board for STM32 W-series.
  • It contains two boards, each with a STM32W108 SoC microcontroller in VFQFPN40 and VFQFPN48 packages.
  • The evaluation board has a built-in 2.4 GHz IEEE 802.15.4 transceiver and Lower MAC (so supports 802.15.4, ZigBee RF4CE, ZigBee Pro, 6LoWPAN (Contiki) wireless protocols). The SoC contains 128-Kbyte flash and 8-Kbyte RAM memory. Flash memory is upgradable too via USB. It has an ARM Serial Wire Debug (SWD) interface (Remote board) and is designed to be powered by USB or with 2 AAA batteries (Remote board). There are two user-defined LEDs (green and yellow) and five push buttons to create easy-to-use remote functions (Remote board).
STM3220G-JAVA

A ready-to-use Java development kits for its STM32 microcontrollers. The STM3220G-JAVA Starter Kit combines an evaluation version of IS2T's MicroEJ® Software Development Kit (SDK) and the STM32F2 series microcontroller evaluation board providing everything engineers need to start their projects. MicroEJ provides extended features to create, simulate, test and deploy Java applications in embedded systems. Support for Graphical User Interface (GUI) development includes a widget library, design tools including storyboarding, and tools for customizing fonts.[56] STM32 microcontrollers that embed Java have a Part Number that ends with J like STM32F205VGT6J.

Partner boards[edit]

The following evalulation kits are sold by partners of STMicroelectronics and listed on the ST website.

STM32-PerformanceStick
  • An evaluation board for STM32 F1-series.[57]
  • It contains a STM32F103RBT6 microcontroller at 72 MHz with 128 KB flash and 20 KB RAM in LQFP64 package.
  • This board also includes in-circuit debugger via USB, 3 V battery, LEDs, edge card connector.
  • The price is approximately US$65.
EvoPrimers for STM32
  • A prototyping environment for a variety of STM32 variants, which allows users to create their applications using an application programming interface (API) to implement device peripherals and a range of evaluation features on the EvoPrimer base including TFT color touchscreen, graphical user interface, joy stick, codec-based audio, SD card, IrDA and standard peripherals such as USB, USART, SPI, I2C, CAN, etc.
  • EvoPrimer target boards are available for several variants including STM32F103, STM32F107, STM32L152 and STM32F407.
  • The EvoPrimer base includes a device programming and application debugging interface and comes with a Raisonance software tool set for coding, compiling and debugging the user's application.
  • The CircleOS utility allows the user to code their applications relying on an application programming interface, making it possible to program the application without having to master the configuration of device peripherals.
  • The price is US$100 to $120.

Development tools[edit]

Segger J-Link EDU. JTAG / SWD debug probe for ARM microcontrollers with USB interface to host. Low price model for home users and educational use.

Cortex-M[edit]

STM32[edit]

Design utilities
  • STM32CubeMX, by STMicroelectronics, a freeware package for Windows that is a graphical software configuration tool that allows generating C initialization code using graphical wizards. The package was first release in February 2014 with graphical peripheral allocation support for every STM32 chip. As of May 2014, it supports F4, F2, L0. ST stated that C code generation for other STM32 series will incrementally be released in 2014.[33] STM32CubeMX is likely an evolution of the former MicroXplorer tool, because the saved "IOC" configuration file from STM32CubeMX shows the word "MicroXplorer" in it. A 32-bit Java Runtime Environment (JRE) must be installed prior to running STM32CubeMX.[58]
Debug utilities
  • STM-STUDIO, by STMicroelectronics, a freeware package for Windows to help debug and diagnose STM32 applications while they are running by reading and displaying their variables in real-time. STM-STUDIO connects to any STM32 using any ST-LINK type of device via JTAG or SWD debug bus protocols. It can log captured data to a file and replay later. It parses debugging information from the ELF application executable file. A 32-bit Java Runtime Environment (JRE) must be installed prior to running STM-STUDIO. The STM32 ST-LINK Utility must be installed prior to running STM-STUDIO.[58]
  • VisualGDB, by Sysprogs, a debug plugin for Microsoft Visual Studio that allows developing and debugging STM32 applications.
  • EPS Debugger, by Comsytec, a debug plugin for Code::Blocks that includes compiler, debugger, project wizard for STM32.
Flash programming via USB
  • STM32 ST-LINK Utility, by STMicroelectronics, a freeware package for Windows to perform in-system programming of STM32 microcontrollers using the USB-based ST-LINK/V2 interface device via JTAG or SWD debug bus protocols. This software can upgrade the firmware in the ST-LINK device, which includes the embedded ST-LINK on all of the STM32 DISCOVERY boards.[59] During installation of this utility, a USB driver is installed to provide a communication interface with the ST-LINK device, which in turn also allows various IDEs to use the ST-LINK for debugging.
  • ST Visual Programmer (STVP), by STMicroelectronics, a freeware package for Windows to perform in-system programming of the flash in STM32 microcontrollers using a USB-based ST-LINK device.
  • DfuSe, by STMicroelectronics, a freeware package for Windows to load DFU programs into the flash of USB-based STM32 microcontrollers.
  • qstlink2, an open source multi-platform ST-LINK/V2 client, based on QT.
  • texane stlink, an opensource ST-LINK/V2 client for linux
Flash programming via USART

All STM32 microcontrollers have a ROM'ed bootloader that supports loading a binary image into its flash memory using one or more peripherals (varies by STM32 family). Since all STM32 bootloaders support loading from the USART peripheral and most boards connect the USART to RS-232 or a USB-to-UART adapter IC, thus it's a universal method to program the STM32 microcontroller. This method requires the target to have a way to enable/disable booting from the ROM'ed bootloader (i.e. jumper / switch / button).

STM32 C/C++ software libraries

Documentation[edit]

The amount of documentation for all ARM chips is daunting, especially for newcomers. The documentation for microcontrollers from past decades would easily be inclusive in a single document, but as chips have evolved so has the documentation grown. The total documentation is especially hard to grasp for all ARM chips since it consists of documents from the IC manufacturer (STMicroelectronics) and documents from CPU core vendor (ARM Holdings).

A typical top-down documentation tree is: manufacturer website, manufacturer marketing slides, manufacturer datasheet for the exact physical chip, manufacturer detailed reference manual that describes common peripherals and aspects of a physical chip family, ARM core generic user guide, ARM core technical reference manual, ARM architecture reference manual that describes the instruction set(s).

STM32 documentation tree (top to bottom)
  1. STM32 website.
  2. STM32 marketing slides.
  3. STM32 datasheet.
  4. STM32 reference manual.
  5. ARM core website.
  6. ARM core generic user guide.
  7. ARM core technical reference manual.
  8. ARM architecture reference manual.

STMicroelectronics has additional documents, such as: evaluation board user manuals, application notes, getting started guides, software library documents, errata, and more. See External Links section for links to official STM32 and ARM documents.

See also[edit]

References[edit]

  1. ^ a b c d STM32 Website; STMicroelectronics.
  2. ^ a b c d Cortex-M4 Specification Summary; ARM Holdings.
  3. ^ a b c d e f Cortex-M3 Specification Summary; ARM Holdings.
  4. ^ a b Cortex-M0+ Specification Summary; ARM Holdings.
  5. ^ a b Cortex-M0 Specification Summary; ARM Holdings.
  6. ^ STR9 Website; STMicroelectronics.
  7. ^ STR7 Website; STMicroelectronics.
  8. ^ Press Release; STMicroelectronics; October 4, 2006.
  9. ^ a b Press Release; STMicroelectronics; June 11, 2007.
  10. ^ Press Release; STMicroelectronics; November 6, 2007.
  11. ^ Press Release; STMicroelectronics; October 20, 2009.
  12. ^ a b Press Release; STMicroelectronics; April 19, 2010.
  13. ^ a b Press Release; STMicroelectronics; September 14, 2010.
  14. ^ a b Press Release; STMicroelectronics; November 30, 2010.
  15. ^ a b c Press Release; STMicroelectronics; February 17, 2011.
  16. ^ a b Press Release; STMicroelectronics; March 2, 2011.
  17. ^ a b c Press Release; STMicroelectronics; September 21, 2011.
  18. ^ a b Press Release; STMicroelectronics; February 29, 2012.
  19. ^ a b Press Release; STMicroelectronics; May 9, 2012.
  20. ^ a b Press Release; STMicroelectronics; June 26, 2012.
  21. ^ a b c Press Release; STMicroelectronics; September 11, 2012.
  22. ^ a b Press Release; STMicroelectronics; January 21, 2013.
  23. ^ Press Release; STMicroelectronics; February 19, 2013.
  24. ^ a b Press Release; STMicroelectronics; February 20, 2013.
  25. ^ a b Press Release; STMicroelectronics; April 30, 2013.
  26. ^ a b Press Release; STMicroelectronics; July 8, 2013.
  27. ^ a b c Press Release; STMicroelectronics; September 12, 2013.
  28. ^ a b Press Release; STMicroelectronics; October 3, 2013.
  29. ^ a b Press Release; STMicroelectronics; December 19, 2013.
  30. ^ a b c Press Release; STMicroelectronics; January 16, 2014.
  31. ^ a b Press Release; STMicroelectronics; February 11, 2014.
  32. ^ a b Press Release; STMicroelectronics; February 17, 2014.
  33. ^ a b Press Release; STMicroelectronics; February 20, 2014.
  34. ^ a b Press Release; STMicroelectronics; April 23, 2014.
  35. ^ "STMicroelectronics Accelerates MCU-Developers’ Pace of Innovation with World’s First ARM Cortex-M7 Core-Based STM32 F7 Series MCU". STMicroelectronics. Retrieved 2014-09-25. 
  36. ^ a b STM32 F4 Website; STMicroelectronics.
  37. ^ STM32 F4 Marketing Slides; STMicroelectronics.
  38. ^ a b STM32 F3 Website; STMicroelectronics.
  39. ^ a b STM32 F2 Website; STMicroelectronics.
  40. ^ STM32 F2 Marketing Slides; STMicroelectronics.
  41. ^ a b STM32 F1 Website; STMicroelectronics.
  42. ^ <http://www.st.com/web/en/resource/sales_and_marketing/presentation/product_presentation/stm32_marketing_pres.pdf STM32 F1 Marketing Slides; STMicroelectronics.]
  43. ^ a b STM32 F0 Website; STMicroelectronics.
  44. ^ a b STM32 L1 Website; STMicroelectronics.
  45. ^ STM32 L1 Marketing Slides; STMicroelectronics.
  46. ^ a b STM32 L0 Website; STMicroelectronics.
  47. ^ a b STM32W Website; STMicroelectronics.
  48. ^ STM32 J Website; STMicroelectronics.
  49. ^ STMicroelectronics Evaluation Product License Agreement
  50. ^ STM32 Discovery Board Website; STMicroelectronics.
  51. ^ ST-LINK Linux Tools; github.com
  52. ^ Getting started with the STM32VL-Discovery board and ChibiOS/RT
  53. ^ Getting started with the STM32L-Discovery board and ChibiOS/RT
  54. ^ Getting started with the STM32F4-Discovery board and ChibiOS/RT
  55. ^ STM32 Eval Board Website; STMicroelectronics.
  56. ^ STM32 F2 series Java evaluation kit
  57. ^ STM32-PerformanceStick Board Overview; Hitex.
  58. ^ a b Java SE Runtime Environment 7 Downloads; Oracle.
  59. ^ Retrieving ST-LINK/V2 Firmware from Update Utility; taylorkillian.com

Further reading[edit]

STM32
  • The Insider's Guide To The STM32 ARM Based Microcontroller; 2nd Edition (v1.8); Trevor Martin; Hitex; 96 pages; 2009; ISBN 0-9549988-8-X. (Download) (Other Guides)
  • µC/OS-III: The Real-Time Kernel for the STMicroelecronics STM32F107; 1st Edition; Jean Labrosse; Micrium; 820 pages; 2009; ISBN 978-0-9823375-3-0.
  • µC/TCP-IP: The Embedded Protocol Stack for the STMicroelectronics STM32F107; 1st Edition; Christian Légaré; Micrium; 824 pages; 2010; ISBN 978-0-9823375-0-9.
ARM Cortex-M
  • Digital Signal Processing and Applications Using the ARM Cortex M4; 1st Edition; Donald Reay; Wiley; 250 pages; 2014; ISBN 978-1118859049.
  • Assembly Language Programming : ARM Cortex-M3; 1st Edition; Vincent Mahout; Wiley-ISTE; 256 pages; 2012; ISBN 978-1848213296.
  • The Definitive Guide to the ARM Cortex-M3 and Cortex-M4 Processors; 3rd Edition; Joseph Yiu; Newnes; 600 pages; 2013; ISBN 978-0124080829.
  • The Definitive Guide to the ARM Cortex-M0; 1st Edition; Joseph Yiu; Newnes; 552 pages; 2011; ISBN 978-0-12-385477-3.

External links[edit]

STM32 Official Documents
STM32
Series
STM32
Website
STM32
Slides
STM32
Reference
ARM
CPU Core
F4
Link
Slides
F4x5/7/9,
F401
Cortex-M4F
F3
Link
n/a
F37x / F38x,
F30x / F31x
Cortex-M4F
F2
Link
Slides
F20x / F21x
Cortex-M3
F1
Link
Slides
F101/2/3/5/7
F100
Cortex-M3
F0
Link
n/a
F0x1/2/8,
F030
Cortex-M0
L1
Link
Slides
L1xx
Cortex-M3
L0
Link
n/a
L0xx
Cortex-M0+
W
Link
n/a
n/a
Cortex-M3
ARM Official Documents
Other
Wikipedia content is licensed under the GFDL License
Powered by YouTube
LEGAL
  • Mashpedia © 2014