Anyone who works in information technology has certainly heard of embedded systems and microcontrollers.It is well-known that these two terms are closely related to hardware systems.However, if you ask what exactly embedded systems and microcontrollers are, and what the differences between them are, I believe most people cannot explain clearly.
Today, I will provide an introductory explanation and reveal the answers to the above questions.At the same time, I will also explain what we commonly refer to as 51 and STM32.▉ What is Embedded SystemsFirst, let’s take a look at what embedded systems are.Embedded systems generally refer to embedded systems, which in English is called: embedded system. Embedded development is actually the development of embedded systems.The IEEE (Institute of Electrical and Electronics Engineers) defines embedded systems as: “devices used to control, monitor, or assist in the operation of machines and equipment.”The definitions in the domestic academic community are more specific and easier to understand:Embedded systems are application-centered, based on computer technology, with customizable software and hardware, suitable for dedicated computer systems with strict requirements for functionality, reliability, cost, size, and power consumption.Application-centered indicates that embedded systems have clear practical purposes. Based on computer technology means that it is actually a special type of computer. Customizable hardware and software indicates strong flexibility and customization capabilities.A dedicated computer system, corresponds to “general-purpose”. Common personal PCs, laptops, and data center servers can be used for multiple purposes, which are “general-purpose computer systems”.What specific “dedicated” directions are embedded systems applied to?Examples include:
Personal Communication and Entertainment Systems: mobile phones, digital cameras, music players, wearable electronics, PSP gaming consoles
Household Appliances: digital TVs, robotic vacuum cleaners, smart home appliances
Medical Electronics: biochemical analyzers, blood analyzers, CT scanners
Network Communication Products: communication switching devices, network equipment (switches, routers, network security)
Automotive Electronics: engine controls, safety systems, automotive navigation and entertainment systems
Industrial Control Products: industrial control computers, interactive terminals (POS, ATM), security monitoring, data collection and transmission, instruments
Military and Aerospace Products: drones, radars, combat robots
The application fields of embedded systemsAll of the above fields use embedded systems. This is just the tip of the iceberg.It can be said that embedded systems completely surround us, constantly influencing our work and lives.Since embedded systems are a type of computer system, they are inseparable from hardware and software.A typical architecture of an embedded system is as follows:Note that the most important components are the embedded operating system and embedded microprocessor.From a hardware perspective, an embedded system is a multi-module system centered around a processor (CPU) connected via a bus:It operates in the same way as a personal PC.The following image is a physical example of an embedded system:
In the upper left corner, S3C2440 is the CPU, in the middle is RAM, and there are also ROM, network cards, serial ports, power supply, etc. It can be seen that embedded systems, though small, are fully equipped.▉ What is a Microcontroller?The core of embedded systems is the embedded processor. Embedded processors are generally divided into the following typical types:
Embedded Microcontroller MCU (Micro Control Unit)
MCU integrates ROM/RAM, bus logic, timers/counters, watchdogs, I/O, serial ports, A/D, D/A, FLASH, etc. Typical representatives include 8051, 8096, C8051F, etc.
Embedded DSP Processors (Digital Signal Processor)
DSP processors are specifically designed for signal processing, with special designs in system structure and instruction algorithms. They are widely used in digital filtering, FFT, and spectrum analysis. Typical representatives are TI (Texas Instruments) TMS320C2000/C5000 series.
MPUs evolved from general-purpose processors, have higher performance, and possess rich peripheral interfaces. Typical representatives include AM186/88, 386EX, SC-400, PowerPC, MIPS, ARM series, etc.In addition, there are Embedded System on Chip SoC (System on Chip) and Programmable System on Chip SoPC (System on a Programmable Chip).Our microcontroller belongs to the first type – MCU (Embedded Microcontroller).
Let’s take a closer look at it.A microcontroller, also known as a single-chip microcontroller, is called a Single-Chip Microcomputer in English.It is actually an integrated circuit chip that integrates CPU, RAM, ROM, input/output and interrupt systems, timers/counters, and other functions into a single silicon chip, turning it into a super small computer.So, is a microcontroller not an embedded system? Hold on, let’s look further.“Microcontroller” is actually an old term. In the past, due to immature semiconductor technology, different functions could not be integrated into one chip, leading to multi-chip systems. Now, semiconductor technology has developed significantly, so multi-chip systems no longer exist. However, the term “microcontroller” has been retained to this day.Many university professors like to emphasize that microcontrollers are “single” not just because they refer to a single chip, but more because they indicate that microcontrollers have a single function, completing operations, logic control, communication, etc. Even if their performance is powerful, their functions remain singular.Microcontroller technology was born in the late 1970s, initially at 4 bits, later developing to 8 bits, 16 bits, and 32 bits. It truly rose to prominence during the 8-bit era. 8-bit microcontrollers have strong functionality and are widely used in industrial control, instrumentation, home appliances, and automotive fields.When studying microcontrollers, we often hear two terms – 51 microcontroller and STM32. Let me introduce what they are.The 51 microcontroller is actually a collective term for a series of microcontrollers. This series of microcontrollers is compatible with the Intel 8031 instruction set. Their ancestor is Intel’s 8004 microcontroller.Note that the 51 microcontroller is not solely a product of Intel. Companies such as ATMEL, Philips, Winbond, Dallas, Siemens, STC (domestic Hongjing), etc., also have many products that belong to the 51 microcontroller series.
ATMEL’s 51 microcontroller, AT89C51
This is a development board for the 51 microcontroller, with the microcontroller chip in the middleThe 51 microcontroller was the most mainstream and widely used microcontroller on the market for a long time, occupying a large market share.In fact, the 51 microcontroller has no technical advantages today and is considered an old technology. Its longevity is due to its previous popularity, and another reason is that Intel completely opened the copyright for the 51 core.Therefore, any organization or individual can use the 51 microcontroller without any concerns about copyright risks or fees.Additionally, the 51 microcontroller has a strong existing user base and community. Many older projects used the 51 microcontroller, and for cost considerations, they sometimes can only upgrade using the 51 microcontroller technology. Moreover, many older engineers are proficient in 51 microcontroller development technology. Thus, the life of the 51 microcontroller continues.Now let’s take a look at STM32.STM32 is a general-purpose microcontroller launched by STMicroelectronics based on the ARM Cortex-M core.STM32 MicrocontrollerSTMicroelectronics is one of the largest semiconductor companies in the world, established in June 1987, formed by the merger of Italy’s SGS Microelectronics and France’s Thomson Semiconductor. In May 1998, SGS-THOMSON Microelectronics changed its name to STMicroelectronics.
STMicroelectronics LOGO
I have previously introduced ARM. It is currently one of the leading companies in chip design, having risen due to the rapid development of mobile phone chips and holding a significant share of the IoT market.In the microcontroller field, ARM’s Cortex-M core has overwhelming advantages and has become the absolute mainstream. Many semiconductor companies have abandoned their original architectures to switch to ARM architecture microcontrollers.STM32 Microcontroller Development BoardThe hardware configuration of STM32 can meet most IoT development needs, and the development tools and related documentation are complete, making it the first choice for microcontroller learning.
▉ Differences Between Embedded Systems and Microcontrollers
Now that we have discussed, let’s look at the differences between embedded systems and microcontrollers.
From the previous introduction, embedded systems are a broad category, and microcontrollers are an important subclass within it. Embedded systems are like a complete computer, while microcontrollers are more like a computer without peripherals.In the past, microcontrollers did not include many components, and the hardware differences between the two were quite obvious. However, with the rapid advancement of semiconductor technology, various hardware functions can now be integrated into microcontrollers. As a result, the hardware differences between embedded systems and microcontrollers are becoming smaller, and the boundary is increasingly blurred.Therefore, people tend to differentiate them based on software.From a software perspective, in the industry, systems that do not include an MMU (memory management unit) and therefore do not support virtual addresses, can only run bare-metal or real-time operating systems (RTOS, such as ucos, Huawei LiteOS, RT-Thread, FreeRTOS, etc.) are called microcontrollers (such as STM32, NXP LPC series, NXP imxRT1052 series, etc.).Meanwhile, systems that come with an MMU, support virtual addresses, and can run advanced operating systems like Linux, Vxworks, WinCE, Android are called embedded systems.At times, microcontrollers themselves are powerful enough to be used as embedded systems. They have lower costs and relatively easier development and maintenance, especially for more targeted applications. In contrast, embedded systems theoretically have stronger performance and broader applications but are more complex and harder to develop.
▉ Learning Value of Embedded Systems and Microcontrollers
Finally, let’s talk about the learning value of embedded systems and microcontrollers, and whether it is necessary to study embedded systems and microcontrollers.
In recent years, a saying has been widely circulated – “Software is king”. People generally believe that the value of software knowledge far exceeds that of hardware, and that learning software and pursuing a software career will make it easier to find jobs with higher pay and better prospects.Embedded systems and microcontrollers are often classified as “hardware” directions and are often looked down upon. Additionally, the learning difficulty of embedded systems and microcontrollers is relatively high, and the learning cycle is long, requiring a prolonged “grind”, causing more and more people to abandon this path.I believe this perspective is incorrect.First, embedded systems and microcontrollers are not purely “hardware” directions. As I mentioned earlier, they are a close integration of software and hardware.If you want to excel in embedded systems and microcontrollers, merely understanding digital circuits and microcomputer interfaces is not enough; you also need to learn assembly, C/C++ programming, data structures, and algorithms.Having the ability to integrate both software and hardware is far more valuable than simply mastering a particular programming language.Secondly, embedded systems and microcontrollers have wide application scenarios, with project and talent demand across various fields.According to authoritative statistics, there is a talent gap of up to 500,000 embedded system professionals in our country each year. Especially embedded software development is one of the hottest and most sought-after careers in the coming years. Senior embedded engineers with 10 years of experience can earn an annual salary of around 300,000 to 500,000 yuan.Moreover, our country is currently vigorously developing the chip industry, which will drive employment for embedded talents and improve their remuneration.With the deepening of 5G construction, society is moving towards the direction of “Internet of Everything”. IoT technology will also usher in unprecedented historical opportunities. Embedded systems and microcontroller technology are important components of IoT technology and will enter a fast track for development.Therefore, despite the arduous learning process, I still recommend aspiring youth to pay attention to this field. The harder the technology, the more challenging the process, the more beneficial it is to build competitive barriers. In the later stages, personal value can be further realized.Alright, that’s all for today’s introduction to embedded systems and microcontrollers. If you find it helpful, please click “like” at the bottom right and share it.Thank you all!