Why STM32 Stands Out Among Many Microcontrollers?

01

Introduction

Before STM32, the dominant player was the 51 microcontroller, along with its “little brothers” MSP430, AVR, and PIC, ruling the microcontroller world.

At that time, 8-bit microcontrollers were everywhere in the market, with university textbooks using the 51 as an introduction, and individuals and companies learning microcontrollers primarily using the 51.

Although AVR also had a share in the 8-bit market, it was no match for the 51 microcontroller led by STC.

Of course, at this time, there were also 16-bit MSP430 microcontrollers, and other manufacturers like PIC, with high-end embedded processors like ARM7 and ARM9.

This period of the microcontroller market was a vibrant and competitive landscape, but overall, it was relatively balanced and peaceful.

So when did this situation start to change? It all began with the rise of the Internet of Things.

Why STM32 Stands Out Among Many Microcontrollers?

02

Reasons

At that time, the Internet of Things (IoT) gradually entered the public’s view. With its development, the demand for high-performance processors in the embedded field exploded.

Although the 8-bit CISC (Complex Instruction Set Computer) architecture core 8051 occupied a significant market share, its poor performance and limited addressing range made it difficult to adapt to emerging application fields.

In contrast, the 32-bit architecture microprocessor core, with its excellent execution efficiency, not only meets the data processing requirements of the IoT but also balances the low power consumption and high performance needed in IoT applications, winning exclusive love in the IoT market.

Among the 32-bit architecture microprocessors, ARM’s Cortex-M core, designed for various embedded applications, gained market favor, akin to the role of 8051 in the 8-bit MCU space.

It was the emergence of Cortex-M that allowed ST to see its potential—using this core to design the brilliant STM32, breaking the previous microcontroller landscape.

03

Rise

Now, looking back at that history, we find that all changes began back then—

From the launch of the first-generation STM32 product—Cortex-M MCU STM32F1 on June 11, 2007, the microcontroller market welcomed the new star STM32, heralding the wave of 32-bit MCUs.

Why STM32 Stands Out Among Many Microcontrollers?
Why STM32 Stands Out Among Many Microcontrollers?

Since then, the story of STM32’s success has continued to unfold.

ST has consistently made breakthroughs based on new cores or new technology fields every year, releasing over 19 STM32 product series, including an MPU product line, with manufacturing processes advancing from 180nm to 110nm, 90nm, and 40nm.

For example:

In 2009, the world’s first ultra-low power series STM32 L1 was launched; in 2010, the first high-performance STM32F2 product line based on 90nm process and 120 MHz was released; in 2011, the first high-performance Cortex-M4 processor STM32F4 was introduced; … In 2019, the world’s most powerful dual-core processor STM32MP1, the latest generation of mixed-signal Cortex-M4 MCUs, and the world’s largest MCU STM32H7 were launched; in 2020, the world’s first SoC with an integrated LoRa transceiver—STM32WL was released.

Why STM32 Stands Out Among Many Microcontrollers?

“A butterfly flapping its wings in the tropical rainforest of the Amazon can cause a tornado in Texas two weeks later.”

The impact of this small butterfly, STM32, is also very evident.

In 2007, ST’s global ranking in general MCUs was only 11th, but by 2015, it rose to 3rd, and in 2018, it reached 2nd place; in the same year, ST topped the ranking among Chinese suppliers, and in the following years, ST’s position remained largely unchallenged.

Why STM32 Stands Out Among Many Microcontrollers?

04

How to Learn

After getting into STM32, how should we learn?

Today, STM32 is incredibly popular and has immense potential. Therefore, many people are learning STM32.

However, STM32 may not be very friendly to beginners due to the vast amount of knowledge, but for those with some development experience, it is an excellent tool that can significantly shorten the development cycle.

So how should one start learning STM32?

(1) Learn regularly according to a schedule

During university, seniors in the lab guide newcomers and assign tasks.

For example, the basic task is to set up the environment and familiarize oneself with debugging software within a week, using the “STM32Fxxx Reference Manual,” “STM32 Firmware Library User Manual,” and video resources to implement basic GPIO applications.

(2) Apply learned knowledge and check learning outcomes through stage tasks

While learning examples, try modifying the peripheral configurations to reinforce learning.

Each week, seniors will assign a stage task based on your learning progress to check your learning outcomes.

If you are self-learning, you can actively find a small project from online tutorials and resource websites’ “STM32 Beginner Projects Collection” and implement it.

I recommend resources from ZhiDian Yuan, as the theme song “My Future is Not a Dream” fills me with passion for STM32 every time I watch the videos. Of course, YeHuo, XiaoMiao, and PuZhong are also good~

(3) It’s enough to know how to use basic peripherals and functions; learn specifically as needed later

Systematically learning STM32 knowledge from beginning to end is great, but remember that learning microcontrollers is just to solve problems; we only need to solve problems using STM32 when they arise.

Therefore, once you have a grasp of basic peripherals and functions, and your programs run, knowing where and how to modify them is already a good start.

After that, you can consolidate your understanding and explore new features through various projects, increasing your experience.

(4) Master C language, and learn to design PCB boards and soldering

Both software and hardware should be mastered. C language is crucial for learning STM32; without a good grasp of C, how can you run code? Learning to design and solder boards allows you to add features as needed.

Of course, the above suggestions are for beginners with zero foundation in STM32. If you have some background, then you can focus on your weaknesses.

05

The Sea of Learning is Boundless; Dare to Explore New Technologies

“The sea of learning is boundless and endless,” especially with STM32 evolving every year.

In fact, the development approach for STM32 has changed significantly.

For example:

In 2014, ST launched the HAL library and the graphical configuration software STM32CubeMX.

At the end of 2017, ST acquired Atollic, converting the professional TrueSTUDIO into free software.

In April 2019, ST officially launched its own STM32 program development IDE tool software STM32CubeIDE 1.0.0, creating a complete STM32Cube ecosystem.

The STM32Cube ecosystem has completely abandoned the early standard peripheral library, and all STM32 series MCUs provide HAL firmware libraries and other expansion libraries.

The two core software components of the STM32Cube ecosystem are STM32CubeMX and STM32CubeIDE, both provided free by ST.

Using STM32CubeMX allows for graphical configuration of MCU system functions and peripherals, generating STM32CubeIDE project framework code, including system initialization code and initialization code for configured peripherals.

If users want to add their application code based on the generated STM32CubeIDE initial project, they can write user code in the code sandbox section, modify MCU settings in STM32CubeMX, and regenerate code without affecting the user-added program code.

Therefore, using STM32CubeMX and TrueSTUDIO for STM32 development is an excellent combination!

-END-

Author: People’s Posts and Telecommunications Press

Link: https://www.zhihu.com/question/315130828/answer/2188401094

Layout: Zhang Qiaolong

Why STM32 Stands Out Among Many Microcontrollers?

He was born in 1995 but has 10 years of programming experience.

Why STM32 Stands Out Among Many Microcontrollers?

When dealing with hardware, stop boasting and make a good plan!

Why STM32 Stands Out Among Many Microcontrollers?

What is the purpose of studying? Is pursuing a master’s degree worth it?

Leave a Comment

×