2026-06-10 11:08:40 +08:00
|
|
|
|
---
|
|
|
|
|
|
tags: [嵌入式系统, 试题]
|
|
|
|
|
|
create time: 2026-06-10 10:41
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
# 试题 2 — 武汉科技大学《嵌入式系统》
|
|
|
|
|
|
|
|
|
|
|
|
## 概述
|
|
|
|
|
|
|
|
|
|
|
|
- **课程**:嵌入式系统
|
|
|
|
|
|
- **学校**:武汉科技大学
|
|
|
|
|
|
- **题型**:单选题、判断题、简答题、综合题
|
|
|
|
|
|
- **知识点**:Android 体系结构、ARM 处理器架构、嵌入式系统定义与特点
|
|
|
|
|
|
|
|
|
|
|
|
> [!tip] 学习建议
|
|
|
|
|
|
> 本试题侧重 ARM 处理器模式与异常中断机制,建议复习时重点关注 CPSR 寄存器和七种处理器模式的区别。
|
|
|
|
|
|
|
|
|
|
|
|
## 正文
|
|
|
|
|
|
|
|
|
|
|
|
### 一、单选题(每题 2 分,共 20 分)
|
|
|
|
|
|
|
|
|
|
|
|
> [!note] 教学提示
|
|
|
|
|
|
> 单选题主要考查对嵌入式系统基本概念和 ARM 架构的识记与理解。建议先逐题作答,再对照答案,重点关注易混淆选项。
|
|
|
|
|
|
|
|
|
|
|
|
**1. Android 系统的分层结构中,最底层为用户提供应用软件层的是( )。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 反应堆
|
|
|
|
|
|
B. 应用程序框架层
|
|
|
|
|
|
C. 实时核心库
|
|
|
|
|
|
D. Linux 内核
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:B
|
|
|
|
|
|
>
|
|
|
|
|
|
> 应用程序框架层位于 Android 分层结构中,为上层应用提供各种 API 和服务,是为应用软件开发提供支撑的层次。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**2. 从应用角度来看,嵌入式系统的核心是( )。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 应用
|
|
|
|
|
|
B. 计算机软件
|
|
|
|
|
|
C. 硬件
|
|
|
|
|
|
D. 算法
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:A
|
|
|
|
|
|
>
|
|
|
|
|
|
> 嵌入式系统"以应用为中心",从应用角度来看,核心是应用本身——系统的设计和实现都围绕特定应用需求展开。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**3. Android 的操作系统软件层次由( )统称。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 应用程序层
|
|
|
|
|
|
B. 应用程序框架层
|
|
|
|
|
|
C. 系统运行库层
|
|
|
|
|
|
D. Linux 内核层
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:A
|
|
|
|
|
|
>
|
|
|
|
|
|
> Android 操作系统软件层次由应用程序层统称,它是最顶层的抽象概念,包含了系统运行库层、应用程序框架层和 Linux 内核层等。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**4. 以下不是嵌入式操作系统的是( )。**
|
|
|
|
|
|
|
|
|
|
|
|
A. Android
|
|
|
|
|
|
B. iOS
|
|
|
|
|
|
C. Linux
|
|
|
|
|
|
D. VxWorks
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:C
|
|
|
|
|
|
>
|
|
|
|
|
|
> Linux 是通用操作系统内核,并非专为嵌入式设计。Android(基于 Linux 内核的嵌入式系统)、iOS(苹果移动操作系统)、VxWorks(实时嵌入式操作系统)才是典型的嵌入式或移动操作系统。
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
**5. 寄存器 R13 除了可以做通用寄存器外,还可以做( )。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 程序计数器
|
|
|
|
|
|
B. 链接寄存器
|
|
|
|
|
|
C. 指针控制寄存器
|
|
|
|
|
|
D. 基址变址寄存器
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:D
|
|
|
|
|
|
>
|
|
|
|
|
|
> R13 在 ARM 中通常用作堆栈指针(SP),也可以作为基址变址寄存器使用。程序计数器是 R15,链接寄存器是 R14。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**6. 对于 ARM 指令中不带条件码,仅默认以( )条件执行。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 任何事件 (EQ)
|
|
|
|
|
|
B. 无条件 (AL)
|
|
|
|
|
|
C. 不相等 (NZ)
|
|
|
|
|
|
D. 溢出 (VS)
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:B
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM 指令默认条件码为 AL(Always),即无条件执行。只有在指令中显式添加条件码时,指令才会根据 CPSR 标志位有条件执行。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**7. ARM 汇编语句 `ADD R0, R1, R2, LSL#1` 的含义是( )。**
|
|
|
|
|
|
|
|
|
|
|
|
A. R0 = R2 + (R1)
|
|
|
|
|
|
B. R0 = (R2<<1) + R1
|
|
|
|
|
|
C. R0 = R1 + (R2)
|
|
|
|
|
|
D. R0 = (R1<<1) + R2
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:B
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM 数据处理指令格式为 `OP{cond}{S} Rd, Rn, Operand2`。`ADD R0, R1, R2, LSL#1` 中,`R2, LSL#1` 表示将 R2 左移 1 位作为第二个操作数,因此运算为 R0 = R1 + (R2 << 1)。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**8. 在 ARM 处理器内部共有( )个用户可访问的通用寄存器。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 31
|
|
|
|
|
|
B. 6
|
|
|
|
|
|
C. 37
|
|
|
|
|
|
D. 18
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:D
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM 处理器在任何时刻,用户可访问的通用寄存器为 16 个(R0-R15),加上各模式的备份寄存器(如 FIQ 模式有 R8_fiq-R14_fiq 共 7 个),不同模式下用户可访问的寄存器总数为 18 个。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**9. 寄存器间接寻址指令中地址码给出的是( )。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 一个内存单元地址
|
|
|
|
|
|
B. 一个通用寄存器的编号
|
|
|
|
|
|
C. 一条指令的内存地址
|
|
|
|
|
|
D. 一个智能控制寄存器的名称
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:B
|
|
|
|
|
|
>
|
|
|
|
|
|
> 寄存器间接寻址中,地址码给出的是一个通用寄存器的编号(如 [Rn]),寄存器中存储的值才是实际的内存地址。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**10. 下面( )完全不属于 ARM 体系结构支持的七种处理器模式之一。**
|
|
|
|
|
|
|
|
|
|
|
|
A. 用户模式
|
|
|
|
|
|
B. 骨肉模式
|
|
|
|
|
|
C. 系统模式
|
|
|
|
|
|
D. 中断模式
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:B
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM 七种处理器模式为:用户模式 (User)、FIQ 模式、IRQ 模式、管理模式 (Supervisor)、中止模式 (Abort)、未定义模式 (Undef)、系统模式 (System)。"骨肉模式"不属于其中任何一种。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
> [!question] 思考
|
|
|
|
|
|
> ARM 七种处理器模式分别是:用户模式 (User)、FIQ 模式、IRQ 模式、管理模式 (Supervisor)、中止模式 (Abort)、未定义模式 (Undef)、系统模式 (System)。"骨肉模式"不属于其中任何一种。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 二、判断题(对 T,错 F,每题 2分,共 20 分)
|
|
|
|
|
|
|
|
|
|
|
|
> [!note] 教学提示
|
|
|
|
|
|
> 判断题考查对基本概念的正误判断,注意区分"通用操作系统"与"嵌入式操作系统"的本质差异。
|
|
|
|
|
|
|
|
|
|
|
|
**1. 操作系统是嵌入式系统中必要的程序。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> 嵌入式操作系统是嵌入式系统的核心软件组件,负责管理硬件资源、调度任务、提供系统服务,是嵌入式系统正常运行的必要组成部分。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**2. ARM 是 RISC 体系结构的一种处理器。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM(Advanced RISC Machines)采用精简指令集计算(RISC)架构,其设计遵循 RISC 原则。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**3. 嵌入式操作系统与我们使用的操作系统是一样的。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:F(错误)
|
|
|
|
|
|
>
|
|
|
|
|
|
> 嵌入式操作系统面向特定应用,资源受限、实时性要求高,与通用操作系统(如 Windows、macOS)在设计目标、资源占用、功能范围等方面有本质区别。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**4. 在 ARM 体系中,中断向量表从 0x00000000 开始。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM 的异常向量表从地址 0x00000000 开始,依次存放复位、未定义指令、SWI、预取中止、数据中止、IRQ、FIQ 的异常处理入口地址。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**5. 嵌入式系统的开发需要使用交叉编译环境。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> 嵌入式系统通常采用交叉开发模式,在宿主机(PC)上使用交叉编译器生成目标机(嵌入式设备)可执行的代码。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**6. 硬实时系统对时间的要求是确定的。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> 硬实时系统要求在确定的、严格的时间截止期限内完成任务,超时即视为系统失败,这对时间约束是确定性的。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**7. ARM7 处理器采用三级流水线结构。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> ARM7TDMI 采用三级流水线:取指(Fetch)、译码(Decode)、执行(Execute),这是其基本的指令执行架构。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**8. 嵌入式 Linux 操作系统是开源的。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> Linux 内核遵循 GPL 开源协议,嵌入式 Linux(如基于 Linux 内核裁剪的系统)同样保持开源特性。
|
|
|
|
|
|
|
2026-06-10 11:08:40 +08:00
|
|
|
|
**9. 在 ARM 处理器中,CPSR 寄存器保存了当前处理器的状态。( )**
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:T(正确)
|
|
|
|
|
|
>
|
|
|
|
|
|
> CPSR(Current Program Status Register,当前程序状态寄存器)保存了处理器的当前状态,包括条件标志位(N、Z、C、V)、中断禁止位(I、F)、Thumb 状态位(T)和处理器模式位(M[4:0])。
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
**10. 嵌入式系统的存储器只能使用 RAM。( )**
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 答案:F(错误)
|
|
|
|
|
|
>
|
|
|
|
|
|
> 嵌入式系统的存储器包括 ROM、RAM、Flash 等多种类型。ROM 用于存储固件,RAM 用于运行时数据,Flash 用于程序和数据存储,三者各有用途。
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 三、简答题(共 3 题,8+9+9 共 26 分)
|
|
|
|
|
|
|
|
|
|
|
|
> [!note] 教学提示
|
|
|
|
|
|
> 简答题要求对 ARM 异常中断、程序状态寄存器等内容进行准确表述,答题时注意条理清晰、分点作答。
|
|
|
|
|
|
|
|
|
|
|
|
#### 1. ARM 处理器支持哪几种异常中断的响应方式?(8 分)
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> ARM 处理器支持以下异常中断响应方式:
|
|
|
|
|
|
>
|
|
|
|
|
|
> 1. **快速中断 FIQ(Fast Interrupt Request)** —— 优先级最高,用于高速数据传输。
|
|
|
|
|
|
> 2. **普通中断 IRQ(Interrupt Request)** —— 用于一般外部设备中断请求。
|
|
|
|
|
|
> 3. **预取指令中止(Prefetch Abort)** —— 当处理器试图从非法地址取指令时触发。
|
|
|
|
|
|
> 4. **数据访问中止(Data Abort)** —— 当数据访问无效地址时触发。
|
|
|
|
|
|
> 5. **复位(Reset)** —— 系统复位时的异常处理入口。
|
|
|
|
|
|
> 6. **未定义指令异常(Undefined Instruction)** —— 遇到无法识别的指令时触发。
|
|
|
|
|
|
> 7. **软件中断 SWI(Software Interrupt)** —— 用于系统调用,从用户模式切换到管理模式。
|
|
|
|
|
|
>
|
|
|
|
|
|
> ```mermaid
|
|
|
|
|
|
> flowchart TD
|
|
|
|
|
|
> A["异常/中断源"] --> B["复位"]
|
|
|
|
|
|
> A --> C["未定义指令"]
|
|
|
|
|
|
> A --> D["软件中断 SWI"]
|
|
|
|
|
|
> A --> E["预取指令中止"]
|
|
|
|
|
|
> A --> F["数据访问中止"]
|
|
|
|
|
|
> A --> G["普通中断 IRQ"]
|
|
|
|
|
|
> A --> H["快速中断 FIQ"]
|
|
|
|
|
|
> ```
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
#### 2. 什么是程序状态寄存器?请简述其包含的内容。(9 分)
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 程序状态寄存器(Program Status Register, PSR)分为 **CPSR**(当前程序状态寄存器)和 **SPSR**(备份程序状态寄存器),用于保存当前程序的执行状态信息。
|
|
|
|
|
|
>
|
|
|
|
|
|
> **CPSR 包含的主要内容:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> | 位域 | 名称 | 说明 |
|
|
|
|
|
|
> |------|------|------|
|
|
|
|
|
|
> | N | 负数标志 | 运算结果为负时置 1 |
|
|
|
|
|
|
> | Z | 零标志 | 运算结果为零时置 1 |
|
|
|
|
|
|
> | C | 进位标志 | 运算产生进位时置 1 |
|
|
|
|
|
|
> | V | 溢出标志 | 运算产生溢出时置 1 |
|
|
|
|
|
|
> | I | IRQ 禁止位 | 置 1 时禁止 IRQ 中断 |
|
|
|
|
|
|
> | F | FIQ 禁止位 | 置 1 时禁止 FIQ 中断 |
|
|
|
|
|
|
> | T | Thumb 状态位 | 处理器在 Thumb 状态时为 1 |
|
|
|
|
|
|
> | M[4:0] | 处理器模式位 | 指定当前处理器的工作模式 |
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
#### 3. ARM 指令助记符的含义是什么?请列举 3 个 ARM 伪指令。(9 分)
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> **ARM 指令助记符**是 ARM 汇编语言中用于表示处理器操作的缩写符号,如 `ADD`(加法)、`SUB`(减法)、`MOV`(数据传送)等。助记符使汇编程序更易于阅读和编写。
|
|
|
|
|
|
>
|
|
|
|
|
|
> **3 个 ARM 伪指令:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> 1. **`LDR` 伪指令** —— 用于加载大常数或 32 位地址到寄存器,编译器会将其转换为合适的指令序列。例如:
|
|
|
|
|
|
> ```assembly
|
|
|
|
|
|
> LDR R0, =0x12345678 ; 将立即数加载到 R0
|
|
|
|
|
|
> ```
|
|
|
|
|
|
>
|
|
|
|
|
|
> 2. **`ADR` 伪指令** —— 用于加载小范围的程序相关地址(PC-relative address),生成基于 PC 的地址计算指令。
|
|
|
|
|
|
>
|
|
|
|
|
|
> 3. **`NOP` 伪指令** —— 空操作,不执行任何有意义的操作,常用于延迟、对齐或占位。
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
> [!question] 思考
|
|
|
|
|
|
> 伪指令与真实指令的区别是什么?伪指令在汇编过程中由汇编器转换为真实指令,而真实指令直接映射到处理器可执行的机器码。
|
|
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
### 四、综合题(共 3 题,每题 10 分,共 30 分)
|
|
|
|
|
|
|
|
|
|
|
|
> [!note] 教学提示
|
|
|
|
|
|
> 综合题要求对嵌入式系统进行全面分析,答题时注意结合定义、实例和理论论述,做到有理有据。
|
|
|
|
|
|
|
|
|
|
|
|
#### 1. 嵌入式操作系统产品形式与智能移动终端的变革
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> **嵌入式操作系统的产品形式包括:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> - 智能手机与平板电脑
|
|
|
|
|
|
> - 车载电子系统(如导航、娱乐系统)
|
|
|
|
|
|
> - 智能家居设备(如智能音箱、家电控制)
|
|
|
|
|
|
> - 工业控制系统(如 PLC、嵌入式 PLC)
|
|
|
|
|
|
> - 医疗设备(如监护仪、便携诊断仪)
|
|
|
|
|
|
> - 可穿戴设备(如智能手表、健康监测器)
|
|
|
|
|
|
>
|
|
|
|
|
|
> **智能移动终端带来的变革:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> 1. **交互方式变革** —— 从传统按键操作转向触摸屏、语音、手势等自然交互。
|
|
|
|
|
|
> 2. **计算模式变革** —— 从本地计算转向云端协同计算(边缘计算 + 云计算)。
|
|
|
|
|
|
> 3. **信息获取变革** —— 移动互联网使信息获取随时随地化。
|
|
|
|
|
|
> 4. **生态系统变革** —— 应用商店模式催生了庞大的应用开发者生态。
|
|
|
|
|
|
>
|
|
|
|
|
|
> **解决对策:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> - 加强嵌入式系统的安全设计(如 TEE 可信执行环境)。
|
|
|
|
|
|
> - 推动标准化与互操作性(如统一通信协议)。
|
|
|
|
|
|
> - 优化功耗管理,延长移动设备续航。
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
#### 2. 嵌入式系统的定义、组成及特点(15 分)
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> **定义:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
|
|
|
|
|
|
>
|
|
|
|
|
|
> **组成:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> ```mermaid
|
|
|
|
|
|
> flowchart LR
|
|
|
|
|
|
> subgraph Embed["嵌入式系统组成"]
|
|
|
|
|
|
> direction TB
|
|
|
|
|
|
> HW["硬件层"] --> SW["软件层"]
|
|
|
|
|
|
> end
|
|
|
|
|
|
> HW --> H1["处理器 (CPU/SoC)"]
|
|
|
|
|
|
> HW --> H2["存储器 (ROM/RAM/Flash)"]
|
|
|
|
|
|
> HW --> H3["外设与接口"]
|
|
|
|
|
|
> SW --> S1["引导程序 (Bootloader)"]
|
|
|
|
|
|
> SW --> S2["嵌入式操作系统"]
|
|
|
|
|
|
> SW --> S3["应用软件"]
|
|
|
|
|
|
> ```
|
|
|
|
|
|
>
|
|
|
|
|
|
> **特点:**
|
|
|
|
|
|
>
|
|
|
|
|
|
> 1. **专用性强** —— 面向特定应用领域,功能定制化。
|
|
|
|
|
|
> 2. **资源受限** —— 处理器性能、内存容量有限,需要高效利用资源。
|
|
|
|
|
|
> 3. **实时性要求** —— 许多系统需要在严格时间约束内完成响应。
|
|
|
|
|
|
> 4. **可靠性高** —— 长期稳定运行,通常无人值守。
|
|
|
|
|
|
> 5. **软硬件协同** —— 开发需要软硬件紧密结合,常使用交叉开发环境。
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
#### 3. 嵌入式系统开发的软硬件结合特点分析(15 分)
|
|
|
|
|
|
|
2026-06-10 16:00:14 +08:00
|
|
|
|
> [!success]- 答案与解析
|
|
|
|
|
|
> 嵌入式系统开发的核心特点在于 **软硬件紧密耦合**,具体体现在以下方面:
|
|
|
|
|
|
>
|
|
|
|
|
|
> 1. **交叉开发环境** —— 开发在通用 PC(宿主机)上进行,目标程序运行在嵌入式设备(目标机)上。需要交叉编译器、调试器等工具链。
|
|
|
|
|
|
>
|
|
|
|
|
|
> 2. **硬件感知的软件开发** —— 软件必须充分了解硬件特性(如寄存器布局、中断机制、总线协议),直接操作硬件寄存器是常见需求。
|
|
|
|
|
|
>
|
|
|
|
|
|
> 3. **调试的复杂性** —— 软硬件联调需要 JTAG/SWD 等硬件调试接口,问题定位涉及软硬件两方面。
|
|
|
|
|
|
>
|
|
|
|
|
|
> 4. **功耗与性能的权衡** —— 软件优化(如动态电压频率调整 DVFS)需要与硬件特性配合,实现性能与功耗的最佳平衡。
|
|
|
|
|
|
>
|
|
|
|
|
|
> ```mermaid
|
|
|
|
|
|
> flowchart TD
|
|
|
|
|
|
> A["需求分析"] --> B["硬件选型与设计"]
|
|
|
|
|
|
> B --> C["BSP 开发"]
|
|
|
|
|
|
> C --> D["驱动程序开发"]
|
|
|
|
|
|
> D --> E["操作系统移植"]
|
|
|
|
|
|
> E --> F["应用软件开发"]
|
|
|
|
|
|
> F --> G["软硬件联调"]
|
|
|
|
|
|
> G --> H["测试与验证"]
|
|
|
|
|
|
> H --> I["量产部署"]
|
|
|
|
|
|
> ```
|
2026-06-10 11:08:40 +08:00
|
|
|
|
|
|
|
|
|
|
> [!tip] 答题技巧
|
|
|
|
|
|
> 综合题阅卷注重论点完整性和逻辑性,建议按"定义 → 分析 → 对策/总结"的结构作答,每个要点配合实例说明。
|
|
|
|
|
|
|
|
|
|
|
|
## 关联笔记
|
|
|
|
|
|
|
|
|
|
|
|
- [[试题1]]
|