Embedded Systems Overview

There are many definitions of embedded systems. The definition generally adopted in China is: embedded systems are application-centric and based on computer technology. , power consumption and other special-purpose computer systems with strict requirements.

Embedded systems have three basic characteristics: embeddedness, speciality, and computer systems. In terms of hardware, in order to be able to embed specific devices, the hardware integration of embedded systems is high and the volume is small. At the same time, it also has the characteristics of low cost and low power consumption. Therefore, the embedded system itself cannot support its own development, so the development environment is limited, the compilation and debugging of the system are complicated, and cross-compilation and cross-commissioning are adopted. In terms of software, it has the characteristics of real-time and reliability, software tailoring and curing, and code efficiency.

The composition of the embedded system mainly includes four aspects: embedded processor, peripheral hardware device, embedded operating system (optional) and user application program, as shown in the following figure.


Figure 1. The composition of the embedded system

Embedded processors mainly include microcontroller (MCU), microprocessor (MPU), digital signal processor (DSP), and system-on-chip (SOC);

Peripheral hardware devices include not only the so-called input and output devices (peripherals, Peripheral), but also various interface circuit (Interface) devices. Commonly used interface circuits include: system basic circuits (clock, reset, power supply, memory and other circuits), basic interface circuits (general I/O ports, communication interfaces, timing circuits, analog-to-digital conversion circuits), commonly used peripheral support circuits (CAN bus, USB interface, memory card interface, Ethernet interface, etc.).

Embedded operating system has experienced no operating system, simple operating system (monitor) and real-time operating system (RTOS). For embedded systems with simple tasks and single tasks, an operating system may not be required; while embedded systems with powerful functions and complex tasks usually require an operating system. On the one hand, the operating system provides the support of the underlying hardware driver for the application program, and on the other hand, it can reduce the development workload. For embedded systems with strict time requirements for work tasks, a real-time operating system is required to schedule the execution of multiple tasks and meet real-time requirements.

User applications are application software developed according to specific application project requirements, and are the main work of developers. Embedded system development mainly includes embedded hardware development and embedded software development. Engineers engaged in hardware development need to complete device selection, PCB board design, etc., and usually use hardware description language (HDL) for electronic design. Engineers designing software interfaces for hardware circuits need to understand the underlying hardware circuits, be familiar with bootloaders and device drivers, and usually use C/C++ and assembly language for software programming. Engineers engaged in software development are divided into system programmers and application programmers. System programmers are mainly involved in the tailoring and transplanting of embedded operating systems, writing and transplanting drivers, etc., using C/C++ and assembly language for development; application programmers are mainly tasked with high-level applications based on embedded operating systems, using C++, Java and other object-oriented technology development.



Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325776029&siteId=291194637