嵌入式系统原理考试复习(3)

这里是主观题的简答复习资料,程序设计题请见复习(4)

三、简答题

1. 【简答题】简述嵌入式系统的定义及特点。

1
2
3
考察知识:嵌入式系统概述
定义:以计算机技术为基础,以应用为中心,软件硬件可裁剪,功能可靠,成本,功耗严格要求的专用计算机系统
特点:技术密集、以应用为中心、软硬件可裁剪、高可靠性和高实时性

2. 【简答题】结合生活生产,列举嵌入式系统应用,并描述嵌入式系统发展趋势。

1
2
3
4
5
6
7
考察知识:嵌入式系统概述
应用:嵌入式系统应用于消费电子、工业控制、医疗设备、家庭智能管理系统、环境工程、机器人等(写上三个即可)
发展趋势:
(1)嵌入式发展趋势正朝着小型化、智能化、网络化、可视化发展。
(2)云计算、可重构、虚拟化等技术被进一步应用到嵌入式系统。
(3)嵌入式软件开发平台化、标准化,系统可升级、代码可复用。
(4)低功耗、绿色环保和信息安全性。

3. 【简答题】结合实际应用,设计嵌入式系统硬件架构。

1
2
3
考察知识:嵌入式系统概述
外围设备:通讯设备、控制设备、传感器
嵌入式系统电路板:电路、接口、嵌入式处理器 和 电源

4. 【简答题】ARM v7 架构分为哪几个系列?分别针对什么应用?

1
2
3
考察知识:嵌入式系统概述
分类:ARM v7架构分为 A系列(面向高性能应用),R系列(面向实时系统),M系列(面向低功耗低成本)。
应用:A系列用于高档消费电子和无线产品、R系列用于实时性高的产品、M系列用于中低档控制应用。

5. 【简答题】简述嵌入式系统软件架构。

1
2
3
4
5
考察知识:嵌入式系统概述
分类:
(1)顺序执行的前后台架构:后台是一个按顺序执行的无限大循环,前台是各类中断和中断嵌套。
(2)基于前后台的时间片轮询架构:选用一个定时器,每进行一次定时中断就对计数值自增一次,然后到达相应值时执行相应任务。
(3)多任务操作系统架构:系统创建各个任务并启动任务,之后各个任务按照一定规则被系统调度运行。
  1. 【简答题】结合所见所闻,提出一种实际应用,并分别采用 3 种软件架构实现该应用,并分析三者的优缺点。
1
2
考察知识:嵌入式系统概述

7. 【简答题】简述 GPIO 的概念。

答案:GPIO(通用输入输出)是一种接口标准,允许微控制器或芯片与外部设备进行数字信号的输入输出通信。通过配置 GPIO 引脚为输入或输出模式,实现对设备的控制或数据采集。

1
2
考察知识:

8. 【简答题】举例描述 GPIO 的应用场景。

答案:控制 LED 灯:将 GPIO 引脚设为输出模式,通过高低电平控制 LED 的亮灭,常用于设备状态指示。读取按键信号:将 GPIO 引脚设为输入模式,连接按钮开关,用于检测用户操作或外部信号输入。

  1. 【简答题】根据 IO 内部电路结构描述 GPIO 作为输出和输入的工作原理。

答案:GPIO 作为输出时,通过内部 MOS 管控制高低电平驱动外设;作为输入时,通过上拉 / 下拉电阻和缓冲器读取外部信号状态。

  1. 【简答题】IO 作为 GPIO 使用时共有几种工作模式,各种模式有何区别?

答案:GPIO 有四种工作模式:输入上拉、输入下拉、推挽输出、开漏输出。输入模式区别在于是否有上拉或下拉电阻;输出模式区别在于推挽可直接驱动高低电平,开漏需外部上拉电阻才能输出高电平。

  1. 【简答题】一个无源开关传感器,有常开(NO)和公共端(COM)两条连接线,如果 COM 接低电平,则 NO 应如何接?对应引脚应配置为何种模式?

答案:如果 COM 端接低电平,NO 应接 GPIO 引脚,该引脚应配置为输入上拉模式。这样,当开关断开时,引脚读取高电平;当开关闭合时,引脚读取低电平。

  1. 【简答题】简述 GPIO 应用步骤。

答案:GPIO 应用步骤包括:配置引脚功能为输入或输出,设置上下拉电阻(若为输入),通过数据寄存器读取或写入电平状态,最后根据需要处理信号或控制外设。

  1. 【简答题】简述中断的概念。

答案:中断是外部设备或内部事件向处理器发出的请求信号,要求暂停当前任务,转去处理紧急事件,处理完成后恢复原任务执行。

  1. 【简答题】举例描述 EXTI 的应用场景。

答案:EXTI(外部中断)常用于检测按键按下、传感器触发或外部信号变化,例如通过按键中断实现设备的快速响应,提升系统实时性与交互效率。

  1. 【简答题】根据 EXTI 内部电路结构描述它的工作原理。

答案:EXTI 通过检测引脚电平或边沿变化触发中断请求,内部包含检测电路、使能寄存器和优先级控制器,将外部事件转化为 CPU 可响应的中断信号。

  1. 【简答题】EXTI 有几种触发方式,各种触发方式有何区别?

答案:EXTI 有三种触发方式:1. 上升沿触发:仅在信号从低变高时触发中断;2. 下降沿触发:仅在信号从高变低时触发中断;3. 双边沿触发:信号变化的上升沿和下降沿均可触发中断。区别在于检测的信号变化类型不同,适用于不同外部事件的检测需求。

  1. 【简答题】一个无源开关传感器,有常开 (NO) 和公共端 (COM) 两条连接线,如果 COM 接低电平,则 NO 应如何接?对应引脚应配置为何种模式?

答案:如果 COM 端接低电平,NO 应接 GPIO 引脚,并配置为输入上拉模式。这样,开关闭合时读取低电平,开关断开时读取高电平,实现状态检测。

  1. 【简答题】简述 EXTI 应用步骤。

答案:EXTI 应用步骤包括:配置 GPIO 为输入模式,设置 EXTI 线路与触发条件,使能中断并编写中断服务程序,最后在程序中处理中断事件。

  1. 【简答题】简述定时器精确定时的应用步骤。

答案:定时器精确定时步骤包括:配置定时器模式和预分频系数,设置自动重载值以确定定时周期,使能定时器及中断,最后在中断服务程序中处理定时事件。

  1. 【简答题】简述定时器产生 PWM 的应用步骤。

答案:定时器产生 PWM 步骤包括:配置定时器为 PWM 模式,设置周期和占空比,使能定时器通道,通过调整占空比控制输出脉宽,实现对设备的精确控制。

  1. 【简答题】简述定时器产生 PWM 的工作原理。

答案:定时器产生 PWM 的工作原理是通过设定定时周期和占空比,定时器按照设定值周期性地改变输出电平高低,从而生成具有特定频率和脉宽的方波信号。

  1. 【简答题】画出异步串行通信发送数据 0x86 的数据帧格式,并分析发送过程。

答案:无

  1. 【简答题】分析 USART 用于异步串行通信的应用步骤。

答案:USART 异步通信步骤:配置波特率、数据帧格式(起始位、数据位、校验位、停止位)、发送 / 接收数据、处理完毕后释放资源。

  1. 【简答题】分析 USART 异步串行通信时发送数据和接收数据的过程。

答案:发送数据:配置 USART,加载数据到发送缓冲器,等待传输完成。接收数据:配置 USART,等待数据接收完毕,从接收缓冲器读取数据。过程中需处理好起始、停止位及可能的校验位。

  1. 【简答题】结合程序分析 RT - Thread 的启动流程。

答案:RT-Thread 启动流程:系统上电后进入main()函数,调用rtthread_startup()初始化内核,创建空闲线程与主线程,启动调度器,进入多线程运行状态。

  1. 【简答题】搭建 RT - Thread 开发环境,分析程序存储结构。

答案:RT-Thread 程序存储结构包含:代码段(.text)、只读数据段(.rodata)、已初始化数据段(.data)、未初始化数据段(.bss),以及堆栈空间,支持模块化和动态内存管理。

  1. 【简答题】简要分析 RT - Thread 的线程状态转换过程。

答案:RT-Thread 线程状态包括就绪、运行、阻塞和挂起。就绪线程被调度器选中后进入运行态;运行中线程等待资源则进入阻塞态;挂起态线程通过恢复进入就绪态,实现多任务调度与资源管理。

  1. 【简答题】画图分析相同优先级的线程执行情况。

答案:无

  1. 【简答题】简述动态线程的应用步骤。

答案:动态线程应用步骤包括:定义线程函数,使用rt_thread_create()创建线程,设置入口函数、堆栈大小和优先级,调用rt_thread_startup()启动线程,最后管理线程生命周期。

  1. 【简答题】简要分析信号量的工作机制,并说明信号量的应用步骤。

答案:信号量机制用于控制对共享资源的访问,通过 P(等待)和 V(释放)操作同步线程。应用步骤:创建信号量,P 操作申请资源,执行任务,V 操作释放资源,销毁信号量。

  1. 【简答题】简要分析互斥量的工作机制,并说明互斥量的应用步骤。

答案:互斥量机制确保一个时刻仅一个线程访问共享资源,防止竞争条件。应用步骤:创建互斥量,锁定互斥量以访问资源,完成操作后解锁互斥量,最后销毁互斥量释放资源。

  1. 【简答题】简要分析事件集的工作机制,并说明事件集的应用步骤。

答案:事件集机制允许多个线程等待多个事件的发生。应用步骤:创建事件集,线程等待特定事件,事件发生后发送通知,线程处理事件,最后根据需要清理事件集资源。

  1. 【简答题】概括信号量和互斥量的不同点。

答案:信号量用于控制对资源的访问数量,允许多个线程同时访问;互斥量确保唯一访问,防止数据竞争。信号量适用于资源池,互斥量用于保护共享数据或关键代码段。

  1. 【简答题】简要分析邮箱的工作机制,并说明邮箱的应用步骤。

答案:邮箱机制用于线程间异步传递数据,通过发送和接收消息实现通信。应用步骤:创建邮箱,发送方调用发送函数投递消息,接收方调用接收函数获取消息,处理完成后可释放或销毁邮箱资源。

  1. 【简答题】简要分析消息队列的工作机制,并说明消息队列的应用步骤。

答案:消息队列机制用于线程间高效传递较长数据,通过发送 / 接收消息实现通信。应用步骤:创建队列,使用互斥量保护队列访问,发送方入队,接收方出队,完成后释放资源并销毁队列。

  1. 【简答题】简要分析信号的工作机制,并说明事件集的应用步骤。

答案:信号机制用于线程异步通知,通过发送信号中断线程执行。事件集应用步骤:创建事件集,线程等待特定事件,事件触发后唤醒线程处理,完成后清理事件集资源。

  1. 【简答题】画出 IO 设备模型的继承和派生关系。

答案:无

  1. 【简答题】概况 PIN 设备的应用步骤。

答案:PIN 设备应用步骤包括:初始化 PIN 设备,配置 PIN 为输入或输出模式,通过 API 读取或写入电平状态,使用完毕后清理资源,确保设备正常操作。

  1. 【简答题】概括 UART 设备的应用步骤。

答案:UART 设备应用步骤:初始化 UART 设置(波特率、数据位等),配置传输格式,发送或接收数据,使用完毕后关闭 UART 通道并释放资源。确保通信正确无误。

  1. 【简答题】概括 TIM 设备的应用步骤。

答案:TIM 设备应用步骤:初始化定时器,设置计数模式和预分频值,配置自动重载值,使能定时器及中断,编写中断服务程序处理定时事件,最后根据需要停止并关闭定时器。

  1. 【简答题】概括 ADC 设备的应用步骤。

答案:ADC 设备应用步骤:初始化 ADC 模块,配置采样时间和分辨率,启动转换过程,读取转换结果,根据需要处理数据,最后关闭 ADC 通道并释放资源。确保准确采集模拟信号。

  1. 【简答题】简要概括 cJSON 的应用步骤,包括组包和解析。

答案:cJSON 应用步骤:1. 组包:创建 JSON 对象,添加键值对,使用cJSON_Print()生成 JSON 字符串。2. 解析:使用cJSON_Parse()解析接收到的 JSON 字符串,通过键名获取对应值,最后释放内存。

  1. 【简答题】简述 MQTT 的工作机制。

答案:MQTT 通过发布 / 订阅模式实现轻量级通信,客户端连接服务器(Broker)后可发布消息到主题或订阅主题接收消息,适用于低带宽、不稳定网络下的物联网设备通信。