Close

Introduction to STM32

zoyebellaZoyeBella wrote 11/16/2021 at 05:23 • 5 min read • Like
IMG_256

The STM32 processor is a family of 32-bit microcontrollers based on the Arm Cortex-M processor. The first member of this series was introduced in early 2008.

In January 2009, an agreement was signed between STMicroelectronics and ARM to co-develop the next generation of microcontrollers within the ARM Cortex architecture. STMicroelectronics would be responsible for the development of the ARM Cortex-M3 core, while ARM would be responsible for the development of both the high-performance (PowerVR SGX540) and low cost (ARM Cortex M0) cores.

STMicroelectronics develops parts using its intellectual property (IP), whereas ARM develops parts using its IP, as well as licensed IP to other suppliers.

The STM32 implements the ARM Cortex-M3 CPU. The Cortex-M3 is an extension of the M-class cores, implementing a superscalar, variable pipeline length CPU. Due to its superscalar design, the Cortex-M3 can achieve high code execution frequencies and throughputs while attaining low power consumption compared to other microcontrollers within its class. The STM32 implements a full 32-bit memory addressing scheme and uses the DSP instruction set extension.

STMicroelectronics has developed its branch to the ARM Cortex-M architecture called STeP (ST Microelectronics Products). The STM32 is based on this variant. The main differences between the STeP and the regular ARM Cortex-M architecture are:

STMicroelectronics has developed several devices with STM32 processors, for various markets and applications. These devices contain not only the processor but also an entire embedded system: peripherals (timers, I/O, power supply, etc.), memory (ROM, RAM), boot Flash, and evaluation board to ease development.

The STM32 family includes 512 KB to 2 MB of Flash memory and up to 256 KB of SRAM. This family also includes several peripherals such as DACs, ADCs, timers, and UARTs. The STM32 family is available in two package options: plastic Ball Grid Array (BGA) and TSSOP. In addition to the standard members of the family, there are also several MEMS device variants, such as the LSM6DS0, which includes a 3 axis accelerometer and a 3 axis gyroscope.

STMicroelectronics provides free software which supports the STM32 for development in C languages (C/C++), assembly languages (ASM) and graphical development environments (Eclipse-based), called the STM32Cube.

What are the different versions?

The STM32F103x series is a single-chip microcontroller CPU based on the ARM Cortex-M3 CPU up to 72 MHz clock frequency, with 512 KB Flash memory and 128 KB SRAM. The STM32F103x has 32 general-purpose I/O pins, 2x12-bit ADC, 1 USART, 3 SPI modules, fast comparator or DAC.

In addition to the STM32F103x core, the STM32F103RBT6 variant implements a Bluetooth Low-Energy (BLE) transceiver and a secure element. The STM32F103RBT6 implements a Cortex-M0 CPU with 128KB Flash memory and 32KB SRAM for cryptographic applications.

The STM32F103C8T6 is a compact variant, with an 8MHz MCU core, 512 KB Flash memory, and 128 KB SRAM.

The STM32F107x series is a single-chip microcontroller CPU based on the ARM Cortex-M7 processor running at 72MHz clock frequency. This series incorporates 1 MB Flash memory and 256 KB SRAM. The STM32F107x has 56 general-purpose I/O pins, 6x12 bits ADC, 2 USARTs, 2 CAN modules.

The STM32F107T6 variant implements a Cortex-M0 CPU with 128KB Flash memory and 32KB SRAM for cryptographic applications.

Why is STM32 so popular?

STM32 is a preferred choice for many products – from mobile phones, tablets, and digital cameras to automobile entertainment systems, medical equipment, and industrial applications – due to its attractive combination of performance, power efficiency, low cost, and small size. STM32 Nucleo 64 series is too popular among embedded developers.

Because STM32 microcontrollers offer a combination of features that are particularly well suited to applications in the automotive electronics field, the family has become the preferred choice for many carmakers. Because there are now more than 1000 design wins with STM32 devices, it's no surprise that this product family has become a true market leader.

Why is STM32 so good for automotive applications?

The STM32 team of hackers is very active on the internet promoting the product and providing useful information to designers who are interested in using these devices.

What are the main advantages of STM32 over other ARM Cortex-M microcontrollers?

STM32 uses a reference manual including the following documents:

The ARM Cortex-M3, Cortex-M4, and Cortex-M7 are very similar in architecture. Therefore, the reference manuals are the same for all STM32 microcontrollers. 

STMicroelectronics provides a development tool called STM32Cube which allows you to easily program, debug and manage your STM32Fxxx microcontrollers. It contains a lot of examples written in C. Users can also use free software developed by third parties for developing projects based on STM32 microcontrollers. 

STMicroelectronics also provides free software that enables developers to easily integrate Bluetooth Low Energy (BLE) technology into their product designs. STM32Cube BLE supports both central and peripheral roles, along with the STM32Cube GPIO, which contains software libraries for BLE application development using any STM32 Cortex-Mx device.

What are the features?

STMicroelectronics provides a detailed user manual for each member of the family which explains all its features.

STMicroelectronics also provides an online simulator for all microcontrollers in the STM32 family. This allows you to test your code without having to use real hardware. The simulator implements the peripheral devices that are available to each family member. It emulates the Flash memory and SRAM but does not emulate I/O ports or timers. However, the code is the same as the code used for real microcontrollers.

IMG_256

Does STM32 have a native Windows® driver?

The STM32F4 series of microcontrollers have been designed for infrared, wireless, and electrical isolation applications. The F4 line has been developed to become the most successful product line in the history of the STMicroelectronics group. The F4 family is a highly configurable digital signal processor which can operate at up to 160MHz and 128KB Flash memory. The F4 family is available in TSSOP packages, 5pins for pin-outs and 8pins for embedded system development.

The STM32F7xx series of microcontrollers have been designed for a wide range of industrial and smart home applications. The F7 line has been developed to become the most successful product line in the history of the STMicroelectronics group. The F7 family is a highly configurable digital signal processor which can operate at up to 160MHz and 128KB Flash memory, with a multitude of embedded peripherals, including CAN, LIN, and Ethernet MACs. The STM32F101C8T6 microcontroller is a variant of the STM32F103RBT6 microcontroller with 128 KB Flash memory and 32 KB SRAM for cryptographic applications.

Like

Discussions