Comparing the Performance of Arduino and STM32: Which is Superior?

01

A couple of days ago, a student asked me about the learning path for embedded systems.

He is a junior, and after reviewing his resume, I noticed he had almost no project experience, which makes him like a blank slate to companies. Naturally, such students find it hard to land a good offer.

I remember having written many articles on learning paths, and I have mentioned it several times in knowledge circles. Regardless of who you are, if you want to engage in embedded systems, you should start with 51 series microcontrollers. I saw this article today and got a new idea: if you want to engage in application development, you can try mature development boards like Arduino. Their encapsulation and stability are better, and you don’t have to worry about many details of the underlying hardware.

However, if you want to focus on embedded software, I still recommend starting with 51, STM32, RTOS, and Linux. You can later choose either RTOS or Linux, as mastering both multitasking systems is quite challenging.

While learning, you should also study common peripherals and buses, as bus timing is the foundation of embedded systems.

02

Comparing the performance of Arduino and STM32: which one is better?
Many electronics enthusiasts face a dilemma when choosing between Arduino and STM32, unsure of which to use.
Arduino has always been popular, but STM32 has more interfaces, stronger performance, and faster speeds?
The characteristics of Arduino and STM32.
Arduino:

Comparing the Performance of Arduino and STM32: Which is Superior?

Arduino leans towards creativity, downplaying specific hardware operations. Its functions and syntax are very simple and user-friendly.
Most Arduino main controllers are AVR microcontrollers. The advantage of Arduino is its high code encapsulation, requiring fewer statements, which reduces software development difficulty.
Arduino is relatively easy to get started with; you only need a little hardware knowledge and C++ to develop.
Arduino has most functionalities covered by libraries, making it easy to use, but it has poorer controllability for slightly more complex functionalities.
STM32:
Comparing the Performance of Arduino and STM32: Which is Superior?
For applications requiring computation or control, STM32 is the better choice. If you buy a development board for STM32, you need to start from the hardware level and master its various details.
STM32 focuses more on practical engineering. In fact, many simple instruments in factories, such as temperature controllers, ordinary motor controllers, low-end PLCs, as well as some consumer toys, game controllers, wired keyboards and mice, and POS machines in college canteens, are widely used.
STM32 is mainly for professional developers to create products, requiring certain professional knowledge, but writing code to achieve functionality is relatively complex.
For example, outputting a simple string via serial communication might take only 10 lines of code on Arduino from starting a new project, but using STM32 development tools like Keil might require hundreds of lines of code or more.

03

Comparison between Arduino and STM32

Arduino has many versions with inconsistent features. Taking the most common Arduino UNO R3 as an example, its controller is the AVR 138 microcontroller, and its performance is not on the same level as STM32. This model is somewhat similar to the STC12 series from Macrochip (only in terms of computation).
Arduino MEGA 2560 is considered the king among MCU versions of Arduino, with rich interfaces, and it should be comparable to the STM32F1 series. However, its power consumption is quite high, and the chip heats up significantly, while the equivalent STM32F1ZET6 has only slight warmth, and in low ambient temperatures, it may even feel cool.
Based on the different characteristics of both, we can compare them according to different applications:
In terms of ease of learning: Arduino is much easier than STM32.
The basic programming concepts required: Arduino is primarily object-oriented C++ and Java-like. Its language is based on C but somewhat different. STM32 primarily uses standard C language for development.
Knowledge gained after learning: Arduino is weaker than STM32.
Because Arduino encapsulates many low-level operations. Unless you try to write the Arduino and supporting circuit module libraries yourself, you will only stay at the basic programming level.
In terms of open-source level:
Things made with STM32 can be open-sourced if desired, or kept completely private.
Ease of building peripheral circuits: Arduino is much easier than STM32.
Expandability: Arduino and STM32 are comparable. Arduino basically prints out most of the controller’s pins.
Cost: Assuming you create something with the same functionality: Arduino costs more than STM32.

04

To summarize, if you are still unsure about your choice, here are some suggestions:
If you are an ordinary student with limited programming language knowledge, I recommend starting with Arduino.
If your C foundation is weak, jumping straight into STM32 may lead to quick frustration.
If you are learning solely for employment, then definitely go for STM32 microcontrollers.
If you are just learning for fun and are not from an electronics background, I suggest Arduino.
If you have a good programming foundation, I recommend STM32. Once you master it, you can easily check out what the Arduino open-source community has done and accomplish it effortlessly with STM32.
Of course, if you have the capability, try both. Generally, you can grasp the basic features of Arduino within a week, and later, if needed, you can smoothly port Arduino code to STM32 and other MCU platforms.
In fact, these two target slightly different directions. Arduino is generally chosen by electronics enthusiasts and DIYers, while STM32 is often used for the development and manufacturing of actual products.
However, now the Arduino series also supports STM32 chips. By downloading the Arduino firmware first, you can then use the Arduino development environment for programming. Choosing what suits your project type and needs is the most important thing.

Source: Big Fish Robotics

— End —

「If useful, please share」

Copyright statement: This article is reprinted from the internet, and the copyright belongs to the original author. If there is any infringement, please contact us to delete it!

Click the business card belowto follow; electronic dry goods delivered on time!

👇

Comparing the Performance of Arduino and STM32: Which is Superior?
  • Hard post! Hand-tear Buck!

  • Hand-tear Boost! Boost formula derivation and verification

  • A small sampling resistor has great significance!

  • What’s the use of a small resistor in a signal line?

  • After reading, you are also a PID tuning master!

  • A mosquito swatter actually has so many circuits; have you learned it thoroughly?

  • Let me help you understand every parameter of the MOSFET, which will benefit you greatly.

If you like it, please like and share; good articles need your support and encouragement
Comparing the Performance of Arduino and STM32: Which is Superior?

Leave a Comment

Your email address will not be published. Required fields are marked *