
The embedded system aims for chip integration, quickly leading traditional electronic systems into the era of intelligent modern electronic systems. Embedded systems have advantages such as high integration, small size, strong functionality, high reliability, and low cost, and are currently widely used in industrial measurement and control, aerospace, intelligent instruments and meters, communication systems, medical devices, automotive, information technology, home appliances, and other fields.
In the 1970s, microcomputers based on microprocessors not only featured small size, low cost, and high reliability but also had high-speed numerical computing capabilities, which attracted great interest from control professionals. To distinguish them from existing general-purpose computer systems, we refer to the computers that implement intelligent control in embedded object systems as embedded computer systems, or simply embedded systems. Therefore, embedded systems were born in the microcomputer era, and their essence is to embed a computer into an object system.
The technical requirements for general-purpose computer systems are high-speed, massive numerical calculations; the direction of technological development is the infinite enhancement of bus speed and the infinite expansion of storage capacity. In contrast, the technical requirements for embedded systems focus on the intelligent control capability of the object; the direction of technological development is closely related to the embedded performance, control capability, and reliability of the control within the object system. Therefore, it is essential to develop general-purpose computer systems and embedded computer systems independently, leading to the formation of two major branches in modern computer technology development.
With the rapid parallel development of these two branches, general-purpose computer systems have entered a stage of perfection. In addition to concentrating on the development of software and hardware technologies for general-purpose computer systems, they have also improved operating systems based on high-speed, massive data and file processing capabilities. Since embedded systems must be integrated into object systems to achieve intelligent control, the chip integration feature of embedded systems quickly leads traditional electronic systems into the era of intelligent modern electronic systems.
Definition of Embedded Systems
There are many definitions of embedded systems (embedded system). A more common definition is a dedicated computer system embedded within an object system. This definition emphasizes three fundamental elements of embedded systems: embedding, specificity, and computer systems.
The Institute of Electrical and Electronics Engineers (IEEE) defines embedded systems as “devices used to control, monitor, or assist the operation of equipment, machinery, or plants.” This definition emphasizes the application purpose of embedded systems: a “device” that completes specific functions and can independently perform real-time monitoring and control without human intervention. From a technical perspective, a more authoritative definition in China states that an embedded system is a dedicated computer system centered on applications, based on computer technology, with customizable software and hardware, and meeting strict requirements for functionality, reliability, cost, size, and power consumption. Embedded systems are tailored to specific applications, incorporating necessary functionalities into various application systems in a “tailored” manner.
Characteristics of Embedded Systems
Embedded systems are the product of combining advanced computer technology, semiconductor technology, and electronic technology with specific applications in various industries. This determines that embedded systems are technology-intensive, capital-intensive, highly decentralized, and continuously innovative knowledge integration systems. Embedded systems are designed for specific application needs, which gives them their unique characteristics. The significant characteristics of embedded systems mainly include the following aspects.
1. Small size, low power consumption, high integration
Embedded systems need to be embedded in specific devices and are aimed at specific system applications, often with strict requirements for system size and power consumption, especially for portable instruments and mobile embedded products such as mobile phones. Systems typically have low power consumption, small size, and high integration, allowing many tasks completed by boards in general-purpose computer systems to be integrated within the chip, thus facilitating the miniaturization of embedded systems and greatly enhancing mobility, with closer integration with computer networks and communication systems.
2. High reliability, strong real-time performance
Unlike general-purpose computer systems, embedded systems operate in highly variable environments. Some applications may operate under extreme conditions, such as high temperatures and pressures, or in freezing temperatures, which requires embedded systems to have higher reliability. Many embedded systems need to respond promptly to various events, continuously reacting to changes in their environment and obtaining real-time calculation results without excessive delays to ensure real-time performance. One can imagine the consequences if a car’s brake system cannot respond promptly to a braking signal.
3. Strong specificity, high design efficiency
Both the hardware and software of embedded systems are designed for specific application objects and tasks, possessing strong specificity. Unlike general-purpose computer systems, which are constructed as general computing and information processing platforms, the functionalities and applications provided by embedded systems are predetermined. By fully considering the specific requirements of embedded systems for functionality, reliability, cost, size, and power consumption, embedded systems are designed to meet the minimum hardware and software configurations required by the objects, fulfilling the needs of specific purposes.
Embedded systems have strict requirements for cost, size, and power consumption. Due to limited resources (memory, I/O ports, etc.), both the hardware and software of embedded systems must be designed efficiently, eliminating redundancy and striving to achieve higher performance on limited resources. Embedded systems are organically integrated with specific applications, and their upgrades are synchronized with specific products. Therefore, once embedded system products enter the market, they should have a long lifecycle.
4. High-performance hardware configuration, solid-state software storage
Embedded hardware strives to achieve higher performance on the same silicon area and can be tailored and added according to user-specific requirements. Embedded software is usually solidified in memory or embedded processors rather than stored on magnetic media such as disks to improve execution speed and system reliability. Since embedded systems are generally applied in small electronic devices and have relatively limited system resources, their kernels are much smaller than those of traditional operating systems; for example, the μC/OS operating system has a core kernel of only 8.3KB, while the Windows kernel is much larger. Thus, high-quality and reliable software code is also required to meet the execution speed and real-time performance requirements of the system.
5. Requires host-target development model
Embedded systems generally can only run application programs and lack the capability for independent program development. Therefore, embedded systems often adopt a host-target development model. Typically, a general-purpose computer serves as the host, while the embedded system serves as the target. The host installs the development environment and debugging tools for program development and modification, while the target executes programs for validation and testing, a process that requires multiple iterations.

Table of ContentsPreface Chapter 1 Overview of Embedded Systems1.1 Introduction to Embedded Systems1.1.1 Definition of Embedded Systems1.1.2 Characteristics of Embedded Systems1.1.3 Composition of Embedded Systems1.1.4 Classification of Embedded Systems1.2 Embedded Processors1.2.1 MCU1.2.2 MPU1.2.3 DSP1.2.4 SoC1.3 Embedded Operating Systems 1.4 Applications and Development of Embedded Systems1.4.1 Applications of Embedded Systems
1.4.2 Development of Embedded SystemsSummary of this chapter ExercisesChapter 2 Embedded System Engineering Design2.1 Project Development Lifecycle of Embedded Systems2.1.1 Overview2.1.2 Requirement Analysis2.1.3 Scheme Design2.1.4 Project Execution2.1.5 Project Conclusion2.2 Engineering Design Methods for Embedded Systems2.2.1 Process-oriented Thinking2.2.2 Object-oriented Thinking2.2.3 Basics of Object-oriented Modeling2.2.4 Design of On-board GPS Terminal Based on UMLSummary of this chapter ExercisesChapter 3 Basics of 8-bit Embedded MCU Chip Hardware3.1 Basic Composition of 8051 Microcontroller 3.2 8051 Central Processing Unit3.2.1 Arithmetic Unit3.2.2 Controller3.3 8051 Memory3.3.1 Program Memory3.3.2 Data Memory3.4 8051 I/O Ports3.5 8051 Interrupt System3.5.1 Advantages of Interrupt Technology and Functions of Interrupt System3.5.2 Structure of Interrupt System3.5.3 Interrupt Handling Process3.6 8051 Timer/Counter3.6.1 Structure and Function of Timer/Counter3.6.2 Mode Register and Control Register3.6.3 Working Modes of Timer/Counter3.7 8051 Serial Port3.7.1 Structure and Control Register of Serial Port3.7.2 Working Modes of Serial Port3.7.3 Baud Rate Design3.7.4 Applications of Serial Port3.8 8051 Minimum System3.9 Basics of MCS-51 Expansion3.9.1 Microcontroller Expansion and System Structure3.9.2 External Memory Expansion3.9.3 External Simple I/O Expansion3.9.4 External A/D ExpansionSummary of this chapter ExercisesChapter 4 Basics of Embedded C Programming and Coding Specifications4.1 Introduction to C514.1.1 Characteristics of C514.1.2 Structure of C51 Programs4.1.3 C51 Keywords4.2 Basics of C51 Programming4.2.1 Data Types4.2.2 Variable Definition4.2.3 Special Function Registers and Bit Variable Definitions4.2.4 Absolute Address Access4.2.5 Basic Operations and Control Flow4.2.6 Macro Definitions and File Inclusions4.2.7 Functions4.2.8 Examples of C51 Programming4.3 Coding Specifications for Embedded CSummary of this chapterExercisesChapter 5 Introduction to ARM Architecture and Instruction Set5.1 ARM Processors5.1.1 Introduction to ARM Processors5.1.2 Typical ARM Series Processors5.1.3 Features of ARM Microprocessors5.2 ARM Processor Architecture5.2.1 Architecture of Embedded Microprocessors5.2.2 Working Modes and States of ARM Microprocessors5.2.3 Registers of ARM Microprocessors5.2.4 Exception Handling of ARM Microprocessors5.2.5 Supported Data Types and Storage Modes of ARM5.3 ARM Cortex-M3 Processors5.3.1 Structure of ARM Cortex-M35.3.2 Register Group of ARM Cortex-M35.3.3 Operating Modes and Privilege Levels of ARM Cortex-M35.3.4 Exceptions and Interrupts of ARM Cortex-M35.3.5 Memory System of ARM Cortex-M35.4 Introduction to ARM Instruction System5.4.1 ARM Instruction Format5.4.2 ARM Addressing Modes5.4.3 ARM Instruction ClassificationSummary of this chapterExercisesChapter 6 Basic Principles of STM326.1 Performance and Structure of STM326.1.1 Performance of STM326.1.2 Internal Structure of STM326.1.3 Chip Packaging and Pin Functions of STM326.2 Memory Address Mapping of STM326.3 STM32 System Control Module6.3.1 System Startup Modes6.3.2 System Reset6.3.3 System Clock6.3.4 Major Registers Related to Clock Settings6.4 Interrupt System of STM32F1036.4.1 Nested Vector Interrupt Controller6.4.2 Interrupt Priority Grouping and Vector Table of STM32F1036.4.3 External Interrupt/Event Controller of STM32F1036.4.4 Related Registers of EXTI6.5 General Input/Output Ports6.5.1 Basic Structure of GPIO6.5.2 GPIO Registers6.5.3 GPIO Multiplexing6.6 Timers6.6.1 Basic Timers6.6.2 Related Registers of Basic Timers6.6.3 Internal Structure of General Timers6.6.4 Related Registers of General Timers6.6.5 Advanced Timers6.7 Analog to Digital Conversion6.7.1 Characteristics of ADC6.7.2 Internal Structure of ADC6.7.3 Overview of ADC Related Registers6.8 Minimum System of STM32F103Summary of this chapterExercisesChapter 7 STM32 Library Functions and Application Examples7.1 Introduction to STM32 Library Functions7.1.1 Overview of STM32 Library Functions7.1.2 Description of Firmware Library Function Files7.1.3 STM32 Coding Specifications7.1.4 Initialization and Configuration of Peripherals7.2 Common STM32 Library Functions7.2.1 General Input/Output Library Functions7.2.2 External Interrupt/Event Controller Library Functions7.2.3 General Timer Library Functions7.3 Examples of STM32 Library Function Programming7.3.1 Examples of STM32 GPIO Library Function Programming7.3.2 Examples of STM32 EXTI Library Function Programming7.3.3 Examples of STM32 TIM Library Function ProgrammingSummary of this chapterExercisesChapter 8 Porting μC/OS Real-time Operating System on STM328.1 Overview of Embedded Real-time Operating Systems8.1.1 Introduction to Embedded Operating Systems8.1.2 Overview of Common Embedded Real-time Operating Systems8.2 Introduction to μC/OS-II Real-time Operating System8.2.1 Structure of μC/OS-II Real-time Operating System8.2.2 Tasks and Scheduling8.2.3 Semaphores and Mailboxes8.2.4 Message Queues, Semaphore Sets, and Software Timers8.3 Porting of μC/OS-II Real-time Operating SystemSummary of this chapterExercisesReferences
▲ Scroll up and down for more

ISBN 978-7-03-066793-9
Editor: Jiang Hong, Han Haitong
This book first introduces the basic concepts and development design methods of embedded systems, then based on 8-bit microcontrollers, introduces the basic knowledge of embedded system hardware such as chip internal composition, structure, and resources, followed by a detailed introduction to the basics of embedded programming and coding specifications, and finally discusses the development methods of 32-bit ARM embedded systems. The book is divided into 8 chapters, each chapter includes exercises to facilitate readers’ learning of embedded system knowledge and mastery of basic technologies for embedded system application development.
The structure of the book is compact, the language is concise, and the explanation is progressive and easy to understand, making it suitable as a textbook for undergraduates and graduates in related majors at higher education institutions, as well as a reference for engineering technicians and researchers engaged in embedded system development and applications.
Read Science Together!
Science Press Northeast Branch | WeChat ID: gh-d324682890c0
Professional Quality Academic Value
Original Good Read Scientific Taste
Click “Read Original” to purchase this book!