探索嵌入式系统:原理与应用(复习总结)

第一章 嵌入式系统概论

  • 嵌入式系统的定义:
  • 以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。

    可以从以下几个方面理解:

    ①嵌入式系统是面向用户、面向产品、面向应用的;

    ②嵌入式系统一般指非PC系统,它包括硬件和软件两部分,硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件包括操作系统和应用程序编程。

  • 嵌入式系统的核心:
  • 是嵌入式微处理器和嵌入式操作系统(=硬件+操作系统)

    嵌入式微处理器的特点:

    ①具有较强的操作系统支持能力;②具有功能很强的存储区保护能力;

    ③可扩展的处理器结构;④功耗很低

    嵌入式操作系统的特点:

    ①代码精简;②实时性高;开发调试环境特殊

  • 嵌入式系统的特点:(5个)
  • (1)功能特定性;(2)规模可变性;(3)实时性与稳定性;(4)操作系统内核小;(5)有专门的开发工具和开发环境

  • 嵌入式系统的实时性分类:
  • (1)软实时系统:

    任务时限柔性灵活、可容忍偶然的超时错误。失败造成的后果不严重,仅仅是降低了系统的吞吐量。

    (2)硬实时系统:

    系统要确保在最坏情况下的服务时间,对时间响应时间的截止期限必须得到满足。

    第二章 嵌入式系统的基础知识

    一个完整的嵌入式系统应包含嵌入式计算机系统和被控对象

  • 嵌入式系统(嵌入式计算机系统)的基本结构:
  • (1)硬件层:以嵌入式处理器为核心。

    (2)中间层:介于硬件层和软件层之间,把底层硬件和系统软件隔离,将硬件的细节屏蔽,便于操作系统调用。

    (3)软件层:提供标准编程接口,降低应用程序开发难度,缩短开发周期。

    (4)应用层:是整个嵌入式系统的核心,用来完成对被控对象的控制功能。

  • 微处理器的体系结构:
  • (1)按存储器结构分类:①冯·诺依曼体系结构(程序指令存储器和数据存储器合并在一起的存储器结构);②哈佛体系结构(程序指令存储和数据存储分开)

    (2)按指令类型分类:①复杂指令集(CISC);②精简指令集(RISC)

  • 复杂指令集(CISC)特点:
  • (1)指令格式不固定、长度不一致,操作数可多可少;

    (2)寻址方式复杂多样;

    (3)采用微程序结构,执行每条指令均需完成一个微指令序列;

    (4)每条指令需要若干个机器周期才能完成。

  • 精简指令集(RISC)特点:
  • (1)指令数目少;

    (2)执行时间短;

    (3)每条指令都采用标准字长;

    (4)便于实现哈佛结构和流水线作业。

  • 复杂指令集(CISC)与精简指令集(RISC)的区别:
  • (1)从硬件角度看,CISC处理的是不等长指令集。RISC处理的是等长精简指令集,可并行处理。CPU执行RISC时速度更快且性能稳定;

    (2)从软件角度看,CISC运行的是我们熟悉的DOS,Windows操作系统,且拥有大量应用程序。RISC在运行这些系统时需翻译,且速度慢。

  • 提高CPU性能的方法:
  • (1)流水线技术:

    取指、译码、执行、存储,可实现指令并行处理 

    (2)超标量执行技术:

    设置多个平行流水线处理单元

    (3)高速缓存技术:

    是存储器子系统,复制了频繁使用的数据,利于CPU快速访问

  • 处理器信息存储的字节顺序:
  • (1)大端模式:

    字数据的高位字节存储在低地址中,字数据的低位字节则存储在高地址中。符合人类正常思维。

    (2)小端模式: 

    字数据的高位字节存储在高地址中,字数据的低位字节则存储在低地址中。利于计算机处理。

    第三章 嵌入式系统开发基础

  • 传统的嵌入式系统设计过程:(次要)
  • ①需求分析;②软硬件分别设计开发;③软硬件集成;④集成测试;⑤若正确则结束,否则继续;⑥若错误则对软硬件分别验证和修改;⑦再次集成并测试

  • 软硬件协同设计过程:(6个)(主要)
  • ①需求分析;②功能划分;③软硬件系统协同设计;④软硬件实现;⑤软件仿真、硬件测试;⑥软硬件协同调试和验证

  • 协同设计与传统设计相比的显著区别:(次要)
  • (1)描述硬件和软件使用统一的表示形式;

    (2)硬件、软件划分可以选择多种方案;

    (3)具有协同设计、协同测试和协同验证的特点,充分考虑了软硬件关系。

    第四章 ARM-Cortex-M3处理器体系结构

  • Cortex-M3的内核结构:
  • 是32位处理器内核,采用哈佛结构,拥有独立的指令总线和数据总线,可并行访问,地址统一分配编址。使用一个3级流水线:取指、译码和执行

  • Cortex-M3的寄存器组织:
  • (1)通用寄存器组(16个):

    (2)特殊功能寄存器:

    ①程序状态寄存器组(PSRs或xPSR):

    程序状态寄存器在其内部又被分为三个子状态寄存器:应用程序PSR(APSR)、中断号PSR(IPSR)、执行PSR(EPSR)

    ②中断屏蔽寄存器组(PRIMASK,FAULTMASK,BASEPRI):

    用于控制异常的使能和除能,特权级下才允许访问

    ③控制寄存器(CONTROL):

    用于特权模式选择和堆栈指针选择

  •  操作模式和特权级别:
  • 两种操作模式分别为:处理者模式(handler mode)和线程模式(thread mode)。

     

    说明:

    ①线程模式下,既可以使用特权级,也可以使用用户级;②handler模式总是特权级的;③复位后,处理器进入特权级线程模式。

    第五章 嵌入式系统常用外设驱动编程实例

  • 基于中断的键盘应用实例:
  • (1)矩阵键盘的扫描原理:

    ①按键按下,列线由高电平变为低电平,判断出在哪一列;

    ②将行线逐行置为低电平,剩余行线置为高电平;

    ③读取列线的状态,直到列线中出现低电平,判断出在哪一行;

    ④将行线和列线状态装入寄存器进行译码,配合去抖,实现扫描。

    第六章 嵌入式操作系统基础知识

  • 嵌入式操作系统的特点:
  • ①实时性;②小内核;③可裁剪、可配置;④易移植;⑤高可靠性;⑥低功耗

  • 嵌入式操作系统的基本概念:
  • (1)代码的临界段:

    代码的临界段也称为临界区(通过关闭中断把必须是“原子的”以保证系统正常运转的指令的集合定义为“临界区”),指处理时不可分割的代码。一旦这部分代码开始执行,则不允许任何中断打入。为确保临界段代码的执行,在进入临界段之前要关中断,临界段代码执行完后立即开中断。

    (2)资源:任何为任务所占用的实体都可称为资源

    (3)共享资源:可以被一个以上任务使用的资源

    (4)任务及任务状态(UCOS-Ⅱ操作系统中程序执行流程):

    任务通常为线程和进程的统称,是内核调度的基本单元。

     (5)优先级:

    ①静态优先级;②动态优先级

    (6)任务切换及调度:

    ①不可剥夺型内核与非占先式调度:

    响应中断快,且不需要使用信号量保护共享数据,但响应时间不确定

    ②可剥夺型内核与占先式调度:

    系统响应时间最优化且可知,UCOS-Ⅱ属于可剥夺型内核

  • 任务间的关系:
  • ①相互独立;②互斥;③同步;④通信

  • 常用的通信机制:
  • ①信号量;②邮箱;③消息队列

    第七章 嵌入式实时操作系统UCOS-

  • UCOS-Ⅱ操作系统的特点:(次要)
  • ①公开源代码;②可移植性;③可固化;④可裁剪性;⑤占先式;⑥多任务;

    ⑦可确定性;⑧实用性和可靠性

  • 就绪表: 
  • 例:已知某系统处于就绪的任务优先级为5,6,8,14,当前任务(运行)为9。系统支持16个任务。①计算OSRdyGrp和OSRdyTbl[2]数组的取值;②OSUnMapTbl[0x81]如何确定?

  •  UCOS-Ⅱ的事件机制:
  • 将通信、同步、互斥相关的信号看做事件,采用事件和事件控制块ECB来管理任务间的通信。

    OSEventType:定义事件的具体类型;

    OSEventCnt:当事件是信号量时,用于信号量的计数器;

    OSEventPtr指针:当事件是邮箱或消息队列时才使用;

    OSEventTbl[ ]和OSEventGrp:记录系统中处于就绪状态的任务

  • Keil5下载前的配置过程:
  • (1)连接好DAP仿真器,并且供电;

    (2)用Keil5打开例程工程文件,设置DAP仿真器所需的使用条件:

    ①选择仿真器类型,点击“Debug”选择使用DAP;

    ②点击“Settings”,选择SW模式下载;

    ③点击“Flash Download”,点击“Add”添加开发板对应的STM32的型号;

    (3)点击Keil左上角“Download”即可下载。

  • 信号量:
  • (1)释放信号量服务:

    (2)使用信号量闪烁LED-信号量实现共享资源访问:

    补充:

    物联沃分享整理
    物联沃-IOTWORD物联网 » 探索嵌入式系统:原理与应用(复习总结)

    发表评论