First, the term “embedded” is a concept that lacks a precise definition, with various books offering their own interpretations. However, the main idea is similar: compared to general-purpose systems like PCs, embedded systems are specialized systems with a streamlined structure, retaining only the necessary components in both hardware and software while discarding the unnecessary parts. Therefore, embedded systems generally possess characteristics such as portability, low power consumption, and specialized performance.
Next, MCUs, DSPs, and FPGAs all fall under the category of embedded systems and are tools used to achieve specific purposes.
MCUs, commonly known as “microcontrollers,” have evolved significantly over the years and are no longer limited to the Princeton architecture of the 51 series; their performance has greatly improved. Since MCUs must execute programs sequentially, they are suitable for control applications and are widely used in industrial settings. ARM, originally a company specializing in MCU design, has captured a significant market share in the microcontroller sector in recent years due to its advanced technology and strategic decisions. ARM microcontrollers come in various types, from low-end M0 (for small appliances) to high-end A8 and A9 (for smartphones and tablets), and it is not mandatory for ARM microcontrollers to run an operating system; the key depends on the application scenario.
DSP, or Digital Signal Processor, has a different structure from MCUs, enhancing computational speed and emphasizing computational capability. It can be viewed as a super-fast MCU. Low-end DSPs, such as the C2000 series, are primarily used in motor control, although TI refers to them as DSCs (Digital Signal Controllers), which are intermediate between MCUs and DSPs. High-end DSPs, like the C5000/C6000 series, are typically used in video image processing and communication devices that require extensive computations.
FPGAs, or Field-Programmable Gate Arrays, have no inherent functionality; they are like a blank slate, and their capabilities depend entirely on the design by programmers (all processes are hardware, including VHDL and Verilog HDL programming, which is also considered hardware design, generally referred to as writing “logic”). If you are skilled enough, you can turn it into an MCU or a DSP. Since the internal structures of MCUs and DSPs are predetermined, they can only perform sequential processing through software programming, while FPGAs can handle both parallel and sequential processing, making them comparatively faster.
So why do MCUs, DSPs, and FPGAs coexist? This is because the internal structures of MCUs and DSPs are meticulously designed by IC designers, resulting in significantly lower power consumption and cost compared to FPGAs when performing the same functions. Additionally, FPGA development is inherently complex, requiring more human and financial resources to achieve the same functionality.
Thus, each of the three has its strengths and applications. However, there is a trend of integration among them; for instance, ARM’s M4 series has added a streamlined DSP core, TI’s DaVinci series is inherently an ARM+DSP structure, and new FPGAs from ALTERA and XILINX include ARM cores. Therefore, the relationship among the three is increasingly resembling three overlapping circles of primary colors.
In summary, “you are in me, and I am in you.”
Where to Start Learning for Hardware Engineers?
Microcontroller: Typically operates without an operating system, used for simple control tasks, such as elevators and air conditioners.
DSP: Used for complex calculations, such as Discrete Cosine Transform and Fast Fourier Transform, commonly found in image processing applications in digital cameras and other devices.
ARM: A British chip design company that does not manufacture chips but sells intellectual property.
FPGA: Field-Programmable Gate Array, circuit designs completed using hardware description languages (Verilog or VHDL) can be quickly synthesized and programmed onto the FPGA for testing, representing the mainstream technology for modern IC design verification.
Embedded systems are tailored compared to desktop computers, with various forms, potentially limited in size, power consumption, and cost, and with high real-time requirements, such as oscilloscopes, mobile phones, tablets, fully automatic washing machines, routers, and digital cameras. Although the presence of desktop computers is not visible in these devices, one or more embedded systems are at work.
Depending on the complexity of the functional requirements and computational processing, different options are provided. For simple household appliance control embedded systems, a simple 8-bit microcontroller is sufficient and cost-effective. For smartphones and gaming consoles, 32-bit ARM and DSP chips are necessary. FPGAs represent a more hardware-oriented implementation approach.
Therefore, to become a hardware engineer through learning, one should start with microcontrollers and then progress to ARM and DSP.
A Detailed Introduction to the Seven Mainstream Microcontrollers on the Market
Microcontrollers are now ubiquitous, with a wide variety that can overwhelm developers, and their development has been rapid, evolving from 4-bit and 8-bit architectures in the 1980s to various high-speed microcontrollers today.
Various manufacturers are competing in speed, memory, and functionality, leading to a plethora of representative microcontroller manufacturers: Atmel, TI, ST, MicroChip, ARM… and the domestic HJ STC microcontroller is also noteworthy.
Below is a comparison of the advantages and disadvantages of the 51, MSP430, TMS, STM32, PIC, AVR, and STC microcontrollers, along with their functionalities…
51 Microcontroller

The most widely used 8-bit microcontroller is also the easiest for beginners to learn. It was first introduced by Intel and is considered a classic due to its typical structure and centralized management of dedicated bus registers, numerous logical bit operation functions, and a rich instruction set aimed at control, laying the foundation for the development of subsequent microcontrollers.
The reasons the 51 microcontroller has become a classic and is easy to learn include the following characteristics:
Features:
1. It has a complete bit-oriented operating system from hardware to software, known as a bit processor, where the processing object is bits rather than words or bytes. It can handle specific bits of certain special function registers within the chip, such as transferring, setting, clearing, and testing, as well as performing logical operations on bits, making it very comprehensive and user-friendly.
2. A dual-function address range is specially allocated in the internal RAM area, providing great flexibility, which undoubtedly offers significant convenience to users.
3. Multiplication and division instructions make programming easier. Many 8-bit microcontrollers lack multiplication functionality, requiring additional subroutine calls for multiplication, which is quite inconvenient.
Disadvantages: (Although it is a classic, its shortcomings are still quite evident)
1. Functions like AD and EEPROM require expansion, increasing the hardware and software burden.
2. Although the I/O pins are easy to use, they lack output capability at high levels, which is the biggest weakness of the 51 series microcontroller.
3. The operating speed is too slow, especially with dual data pointers; improvements in this area could greatly facilitate programming.
4. The 51 has poor protection capabilities and is easily damaged.
Application Range:
Currently widely used in educational settings and scenarios with low performance requirements.
Most commonly used devices: 8051, 80C51.
MSP430 Microcontroller

The MSP430 series microcontroller is a 16-bit ultra-low-power mixed-signal processor launched by Texas Instruments in 1996. Its most notable features are low power consumption and high speed, with a flexible assembly language, many addressing modes, and a small number of instructions, making it easy to learn. This is mainly due to its integration of many analog circuits, digital circuits, and microprocessors into a single chip to provide a “single-chip” solution. Its rapid development and expanding application range are primarily due to the following characteristics…
Features:
1. Powerful processing capability, utilizing a Reduced Instruction Set Computing (RISC) architecture, with a rich variety of addressing modes (7 source operand addressing modes, 4 destination operand addressing modes), a concise set of 27 core instructions, and numerous analog instructions; a large number of registers and on-chip data memory can participate in various calculations; and efficient table lookup processing instructions; it has a high processing speed, achieving a 125 ns instruction cycle under an 8 MHz crystal drive. These features ensure the ability to compile high-efficiency source programs.
2. In terms of processing speed, it can achieve a 125 ns instruction cycle under an 8 MHz crystal drive. The 16-bit data width, 125 ns instruction cycle, and multifunctional hardware multiplier (capable of performing multiply-accumulate) can implement certain algorithms for digital signal processing (such as FFT).
3. The ultra-low power consumption of the MSP430 microcontroller is due to its unique approach to reducing the chip’s power supply voltage and flexible, controllable operating clock. The power supply voltage ranges from 1.8 to 3.6V. Thus, under a 1 MHz clock condition, the chip’s current is around 200 to 400 uA, with the lowest power consumption in clock shutdown mode being only 0.1 uA.
Disadvantages:
1. Personally, I find it not easy to learn, making it unsuitable for beginners, and there is relatively little documentation available, requiring one to search the official website for information.
2. It occupies a larger instruction space because it is a 16-bit microcontroller, with some instructions occupying as much as 6 bytes. Although the program appears concise, it occupies significantly more space compared to PIC microcontrollers.
Application Range:
More commonly used in low-power and ultra-low-power industrial applications.
Most commonly used devices: MSP430F series, MSP430G2 series, MSP430L09 series.
TMS Microcontroller

Here, I would also like to mention the TMS series microcontroller, which, while not mainstream, is an 8-bit CMOS microcontroller launched by TI, featuring various storage modes and peripheral interface modes, suitable for complex real-time control scenarios. Although it may not be as excellent as the STM32 or as prominent as the MSP430, the TMS370C series microcontroller offers high cost-performance for real-time system control through the integration of advanced peripheral function modules and various memory configurations. It also employs high-performance silicon gate CMOS EPROM and EEPROM technology. With low operating power CMOS technology, a wide operating temperature range, noise suppression, and high performance with rich on-chip peripheral functions, the TMS370C series microcontroller finds applications in automotive electronics, industrial motor control, computers, communications, and consumer electronics.
STM32 Microcontroller

Launched by ST, the STM32 series microcontroller is known in the industry for its high cost-performance ratio, arguably unmatched. Its powerful functionality is based on the ARM Cortex-M core designed for high-performance, low-cost, and low-power embedded applications, featuring top-notch peripherals: a dual 12-bit ADC with a 1μs conversion time, a UART with 4 Mbps, an SPI with 18 Mbps, etc. It also performs well in terms of power consumption and integration, although it is slightly less efficient than the MSP430 in terms of power consumption, this does not diminish its popularity among engineers due to its simple structure and user-friendly tools combined with its powerful functionality, making it well-known in the industry. Its powerful features are mainly reflected in:
Features:
1. Core: ARM 32-bit Cortex-M3 CPU, with a maximum operating frequency of 72 MHz, 1.25 DMIPS/MHz, single-cycle multiplication, and hardware division.
2. Memory: On-chip integration of 32-512 KB Flash memory and 6-64 KB SRAM.
3. Clock, reset, and power management: 2.0-3.6V power supply and I/O interface drive voltage. POR, PDR, and programmable voltage detectors (PVD). 4-16 MHz crystal oscillators. An embedded factory-calibrated 8 MHz RC oscillation circuit. An internal 40 kHz RC oscillation circuit. PLL for CPU clock. A calibrated 32 kHz crystal oscillator for RTC.
4. Debugging mode: Serial debugging (SWD) and JTAG interface. Up to 112 fast I/O ports, up to 11 timers, and up to 13 communication interfaces.
Most commonly used devices: STM32F103 series, STM32 L1 series, STM32W series.
PIC Microcontroller

The PIC microcontroller series is a product of Microchip Technology Inc. in the USA, divided into three levels: basic, mid-range, and high-end, and is one of the fastest-growing microcontrollers in the current market. The CPU adopts a RISC architecture, with 33, 35, and 58 instructions, belonging to a reduced instruction set, and employs a Harvard dual-bus structure for fast operation, allowing parallel processing of program memory access and data memory access. This instruction pipeline structure completes two tasks in one cycle: executing an instruction and fetching the next instruction from program memory, which is one reason for its high efficiency. Additionally, the reasons the PIC microcontroller has become very popular include the following characteristics:
Features:
1. It features low operating voltage, low power consumption, and strong driving capability. The I/O ports of the PIC series microcontrollers are bidirectional, with their output circuit being a CMOS complementary push-pull output circuit. The I/O pins have added direction registers to set input or output states, solving the issue of the 51 series I/O pins being both input and output at high levels.
2. When set to 1, it is in input state, and regardless of whether the pin is high or low, it presents a high-impedance state; when set to 0, it is in output state, and regardless of the pin’s level, it presents a low-impedance state, with considerable driving capability, drawing 25 mA at low level and outputting 20 mA at high level. Compared to the 51 series, this is a significant advantage.
3. It can directly drive seven-segment displays with a simple external circuit. Its A/D conversion is 10 bits, meeting precision requirements. It also has in-circuit debugging and programming (ISP) capabilities.
Disadvantages:
Its special function registers (SFR) are not all concentrated in a fixed address range (80-FFH) like the 51 series but are scattered across four address ranges. Only five special registers (PCL, STATUS, FSR, PCLATH, INTCON) appear simultaneously in four storage bodies, but during programming, one must frequently interact with the special registers, repeatedly selecting the corresponding storage body, which means setting or clearing the sixth bit (RP1) and fifth bit (RP0) of the status register STATUS. Data transfer and logical operations generally must be performed through the working register W (equivalent to the accumulator A in the 51 series), while the 51 series allows direct transfer between registers, making the bottleneck phenomenon in PIC microcontrollers even more pronounced than in the 51 series, which programmers should be well aware of.
Most commonly used devices: PIC16F873, PIC16F877.
AVR Microcontroller

The AVR microcontroller is a relatively novel microcontroller launched by Atmel, characterized by high performance, high speed, and low power consumption. It eliminates machine cycles, using clock cycles as instruction cycles, implementing pipelined operations. AVR microcontroller instructions are word-based, and most instructions are single-cycle instructions. A single cycle can execute the current instruction’s function while simultaneously fetching the next instruction. Typically, the clock frequency ranges from 4 to 8 MHz, making the shortest instruction execution time between 250 and 125 ns. The AVR microcontroller remains quite popular due to the following characteristics:
Features:
1. The AVR series does not have a structure similar to accumulator A; it mainly uses registers R16 to R31 to perform A’s functions. In AVR, there is no data pointer DPTR like in the 51 series; instead, three 16-bit registers (X, Y, Z) are used to complete the data pointer function (equivalent to having three sets of DPTR), and they can also perform post-increment or pre-decrement operations. In the 51 series, all logical operations must be performed in A, while AVR allows operations between any two registers, eliminating the need for back-and-forth operations in A, making it superior to the 51 series.
2. The special registers of AVR are concentrated in the address range of 00 to 3F, eliminating the need for the storage selection process required by PIC, making it more convenient to use. The on-chip RAM address range for AVR is 0 to 00DF (AT90S2313) and 0060 to 025F (AT90S8515, AT90S8535), occupying the address space for data, and this on-chip RAM is primarily used for data storage, typically lacking the functionality of general-purpose registers. When programs become complex, the general-purpose registers R0 to R31 may prove insufficient; in contrast, the 51 series has as many as 128 general-purpose registers (four times that of AVR), preventing this issue during programming.
3. The I/O pins of AVR are similar to those of PIC, with direction registers used to control input or output states. In output mode, the high-level output current is around 10 mA, and the low-level input current is 20 mA. While this is not as good as PIC, it is still superior to the 51 series.
Disadvantages:
1. There is no bit manipulation; control and judgment of related register bits are done in byte form.
2. The C language syntax for AVR differs significantly from that of the 51 series, which may be uncomfortable for those starting with the 51 microcontroller.
3. There are a total of 32 general-purpose registers (R0 to R31), and the first 16 registers (R0 to R15) cannot directly interact with immediate values, thus reducing generality. In contrast, all general-purpose registers in the 51 series (addresses 00 to 7FH) can directly interact with immediate values, clearly making the 51 series superior.
Most commonly used devices: ATUC64L3U, ATxmega64A1U, AT90S8515.
STC Microcontroller

When it comes to STC microcontrollers, some may argue that STC can be considered mainstream, but they might face criticism~~ We base this on the fact that it is a relatively good microcontroller domestically. The STC microcontroller is a single-clock/machine cycle microcontroller produced by HJ, essentially a hybrid of the 51 and AVR architectures. Some say that AVR is a replacement for the 51 microcontroller, but there are significant differences in bit control and C language syntax between the two. The STC microcontroller combines the advantages of both the 51 and AVR; although its functionality is not as powerful as that of AVR, it encompasses most of the features found in AVR, while being based on the 51 architecture, providing great convenience for engineers familiar with the 51 microcontroller, saving them the time needed to learn AVR while retaining various AVR functionalities…
The STC microcontroller is a new generation of 8051 microcontrollers with high speed, low power consumption, and strong anti-interference capabilities. Its instruction code is fully compatible with the traditional 8051, but it operates 8 to 12 times faster, with an integrated MAX810 dedicated reset circuit. It features 4 PWM channels, 8 high-speed 10-bit A/D conversions, and is designed for motor control applications, making it a new series of microcontrollers following the 51 microcontroller…
Features:
1. Downloading and programming via serial port is convenient and user-friendly, with abundant learning materials and videos available, the most famous being the video by Teacher Du, through which many interested in microcontrollers have started their journey. It also features a wide voltage range: 5.5 to 3.8V, 2.4 to 3.8V, and a low-power design: idle mode, power-down mode (can be awakened by external interrupts).
2. The STC microcontroller is relatively easy to program and debug; it includes 10-bit A/D, internal EEPROM, and can operate at 1T/machine cycle speed, which is 8 to 12 times faster than traditional 51 microcontrollers, and is also relatively inexpensive.
3. It has 4 capture/compare units, with the STC12C2052AD series providing 2 channels, which can also be used to implement 4 timers or 4 external interrupts, and 2 hardware 16-bit timers, compatible with the standard 8051 timers. The 4 PCA channels can also implement 4 timers, featuring a hardware watchdog, high-speed SPI communication port, full-duplex asynchronous serial port, and compatibility with standard 8051 serial ports, along with an advanced instruction set architecture that is compatible with the standard 8051 instruction set.
PS: Although the STC microcontroller’s functionality is not as powerful as that of AVR or STM32, and its price is not as low as that of the 51 or STM32, these factors are not crucial. What matters is that it is one of the more outstanding domestic microcontrollers, and I hope domestic microcontrollers can thrive…
Most commonly used devices: STC12C2052AD.
Freescale Microcontroller

Primarily targeting S08 and S12 microcontrollers, Freescale microcontrollers are far from limited to these. The Freescale series microcontrollers adopt a Harvard architecture and pipelined instruction structure, demonstrating low cost and high performance across many fields. Their architecture saves a significant amount of time in product development. Additionally, Freescale offers various integrated modules and bus interfaces, allowing for more flexible applications in different systems! The unique features of Freescale microcontrollers include:
1. Full range: From low-end to high-end, from 8-bit to 32-bit, the full range is available, with the introduction of the 8-bit/32-bit pin-compatible QE128, allowing direct migration from 8-bit to 32-bit, filling a gap in the industry regarding 8/32-bit compatible architectures.
2. Multiple system clock modules: Three modules, seven operating modes. Various clock source input options, with different MCUs having different clock generation mechanisms, which can be RC oscillators, external clocks, or crystals, and most CPUs have all three modules! They can operate in seven modes: FEI, FEE, FBI, FBILP, FBE, FBELP, and STOP.
3. Various communication module interfaces: Freescale microcontrollers almost integrate various communication interface modules internally, including Serial Communication Interface (SCI), multi-master I2C bus modules, Serial Peripheral Interface (SPI), MSCAN08 controller modules, and Universal Serial Bus (USB/PS2) modules.
4. More optional modules: Includes LCD driver modules, temperature sensors, ultra-high frequency transmission modules, synchronous processor modules, and some MCUs with ringing detection modules and dual-tone multi-frequency/tone generator modules.
5. High reliability, strong anti-interference capabilities, and various pin counts and packaging options.
6. Low power consumption; while Freescale microcontrollers may not be as low as MSP430, they feature full-static “wait” and “stop” modes, significantly reducing overall power consumption! Recently launched ultra-low power models are comparable to MSP430!
Most commonly used devices: MC9S12G series.
If one were to rank these microcontrollers, the 51 microcontroller would still be the first choice for those wanting to follow the crowd; if you seek high cost-performance, STM32 would be your ideal choice; if you desire ultra-low power consumption, MSP430 will not disappoint; and if you want to support domestic products, STC will excite you…
Source: Internet, copyright belongs to the original author. If there is any infringement, please contact for removal.
Follow our public account, star it, reply1024 to obtain learning materials, and make progress every day.
Statement:
This account’s original and reprinted articles, images, etc., copyright belongs to the original author. If there is any infringement, please contact for removal.
Follow, like, view, and share to support quality content!