--- tags: [嵌入式系统, 复习, 嵌入式基础] create time: 2026-06-10 11:11 --- # 嵌入式系统基础 ## 概述 本文档覆盖嵌入式系统的核心概念,包括定义、特征、硬件组成、操作系统对比以及应用领域。这是整个嵌入式系统课程的基石,理解这些内容是后续学习ARM架构、指令集和操作系统的基础。 ## 正文 ### 1. 嵌入式系统的定义 **嵌入式系统**(Embedded System)的标准定义为: > 以**应用为中心**,以**计算机技术**为基础,软硬件**可裁剪**,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的**专用计算机系统**。 理解这个定义,需要抓住几个关键词: | 关键词 | 含义 | |--------|------| | 以应用为中心 | 不是通用计算,而是为特定任务而设计 | | 软硬件可裁剪 | 根据需求定制,去掉不需要的功能以节省资源 | | 专用计算机系统 | 本质上仍是计算机,但专用于特定场景 | > [!question] 为什么说嵌入式系统"不等于单片机"? > 单片机只是嵌入式系统的硬件平台之一。嵌入式系统是一个完整的系统概念,包含硬件、驱动、操作系统和应用软件。 ### 2. 嵌入式系统的核心特征 1. **专用性** —— 面向特定应用,功能明确 2. **实时性** —— 必须在规定时间内响应外部事件(硬实时/软实时) 3. **可靠性** —— 往往运行在无人值守或关键任务环境 4. **资源受限** —— CPU、内存、存储空间有限 5. **软硬件协同设计** —— 硬件和软件需同步考虑和优化 6. **低功耗** —— 很多场景依赖电池供电 > [!tip] 硬实时 vs 软实时 > - **硬实时**:必须在截止时间前完成,否则造成灾难性后果(如汽车ABS制动系统) > - **软实时**:允许偶尔超时(如视频播放的轻微卡顿) ### 3. 嵌入式系统的最小系统组成 一个可工作的嵌入式最小系统需要以下组件: - **处理器(MCU/MPU)**:系统的大脑 - **存储器**:ROM/Flash(存放程序)+ RAM(运行时数据) - **时钟电路**:为处理器提供工作节拍 - **电源电路**:提供稳定的工作电压 - **复位电路**:确保系统从已知状态启动 - **JTAG调试接口**:用于程序烧写和在线调试 > [!question] 为什么嵌入式系统通常使用Flash而不是硬盘来存储程序? > Flash是非易失性存储,没有机械部件,抗震性好,功耗低,访问速度快,非常适合嵌入式场景。 ### 4. 嵌入式操作系统 vs 通用操作系统 | 比较维度 | 嵌入式OS | 通用OS | |----------|----------|--------| | 设计目标 | 面向特定应用 | 面向多种应用 | | 体积 | 可裁剪,极小 | 功能全面,体积大 | | 实时性 | 要求高(RTOS) | 不强调实时 | | 资源需求 | 低(KB~MB级) | 高(GB级) | | 用户界面 | 简单或无 | 复杂GUI | | 典型代表 | FreeRTOS, uC/OS-II, RT-Thread | Windows, Linux, macOS | **嵌入式实时操作系统(RTOS)**的核心指标: - **调度器执行时间**:调度算法本身的耗时 - **任务切换时间**:从一个任务切换到另一个任务的耗时 ### 5. 嵌入式系统的应用领域 嵌入式系统几乎无处不在: - **消费电子**:智能手机、平板电脑、可穿戴设备 - **汽车电子**:发动机控制、ABS、车载娱乐系统 - **智能家居**:智能音箱、智能门锁、家电控制 - **工业控制**:PLC、工业机器人、自动化产线 - **医疗设备**:心脏起搏器、监护仪、输液泵 - **航空航天**:飞行控制、导航系统 ### 6. 智能移动终端带来的变革 智能移动终端(以智能手机为代表)带来了深刻的变革: - **交互方式**:从键盘鼠标 → 触摸屏、语音、手势 - **计算模式**:从集中式 → 云端+终端协同 - **信息获取**:从固定网络 → 随时随地移动获取 - **生态系统**:从封闭系统 → 开放应用商店生态 ### 7. 嵌入式系统架构分层 嵌入式系统的软件架构通常分为以下层次: ```mermaid graph TD A["Application Layer"] --> B["Middleware"] B --> C["RTOS / OS"] C --> D["BSP / Driver"] D --> E["Hardware"] style A fill:#4fc3f7 style B fill:#81d4fa style C fill:#b3e5fc style D fill:#e1f5fe style E fill:#fff9c4 ``` - **Hardware**:处理器、存储器、外设 - **BSP/Driver**:板级支持包和设备驱动,屏蔽硬件差异 - **RTOS/OS**:提供任务调度、内存管理、同步机制 - **Middleware**:网络协议栈、文件系统、数据库等通用服务 - **Application**:面向用户的具体应用 ### 8. 嵌入式系统的产品形态 ```mermaid graph LR subgraph forms["Product Forms"] direction TB F1["Single Chip MCU"] F2["SOM Module"] F3["SBC Board"] F4["Full System"] end F1 --> F2 F2 --> F3 F3 --> F4 style F1 fill:#ffcc80 style F2 fill:#ffab91 style F3 fill:#ef9a9a style F4 fill:#f48fb1 ``` - **单芯片MCU**:所有功能集成在一颗芯片上(如STM32) - **SOM模块**:核心板模块,含处理器和基础电路 - **SBC单板计算机**:完整的单板系统(如树莓派) - **完整系统**:包含外壳、电源、外设的完整产品 > [!question] 嵌入式系统的"软硬件协同设计"具体是什么意思? > 传统的设计流程是先设计硬件再写软件,但嵌入式系统需要在设计初期就同时考虑软硬件。例如,如果软件算法可以补偿硬件精度不足,就可以选用更便宜的传感器,从而降低成本和功耗。 ## 关联笔记 - [[嵌入式系统/试题册/index|试题册索引]]