第一章 嵌入式系统概述

1、嵌入式系统的定义及特点
定义
从广义的角度:嵌入式系统是一切非PC和大型机的计算机系统
从应用的角度:嵌入式系统是以应用为中心,以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统。
从技术的角度:嵌入式系统是一个以应用为中心、以计算机技术为基础,并融合微电子技术、通信技术和自动控制技术,而且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗和应用环境有特殊要求的专用计算机系统。
特点
较长的生命周期
与具体嵌入的产品同步:导入期→成长期→成熟期→衰退期
不易垄断
将计算机技术、电子技术与各行业的具体应用相结合的产物
资金密集、技术密集、高度分散、不断创新的知识集成系统
2、嵌入式系统中使用的操作系统一般是实时操作系统
例如
VxWorks Windows CE pSOS QNX uc/OS HOPEN
DeltaOS
3、嵌入式系统的硬件组成部分包括那些
嵌入式处理器(核心)
嵌入式存储器
嵌入式I/O设备
嵌入式I/O接口
4、嵌入式系统的分类:按有无操作系统及实时性分
按软件(有无嵌入式操作系统)划分
无操作系统控制的嵌入式系统
小型操作系统控制的嵌入式系统
大型操作系统控制的嵌入式系统
按实时性划分
非实时嵌入式系统 不具备实时性要求的嵌入式系统(温湿度计)
软实时嵌入式系统 外部事件在截止期限到达时偶尔未得到及时处理并不会带来致命失误的嵌入式系统(DVD播放器、机顶盒)
硬实时嵌入式系统 外部事件在截止期限到达时偶尔未得到及时处理,会带来致命失误的嵌入式系统(导弹控制系统、雷达导航系统)

5、常见的嵌入式系统应用领域
军事电子 科学探测 工业控制 智能仪表 汽车电子 路由器/交换机/防火墙 信息家电 消费电子
6、哈佛结构及冯诺依曼结构定义
指令与数据分开存储在不同的存储空间,使得指令读取和数据访问可以并行处理,显著提高了系统性能,但需要较多数量的总线。大多数嵌入式处理器都采用哈佛结构。
指令和数据不加以区分,都通过数据总线进行传输。因此,指令读取和数据访问不能同时进行,数据吞吐量低,但总线数量相对较少且管理统一。大多数通用计算机的处理器(如Intel X86)和嵌入式系统中的ARM7处理器均采用冯诺依曼结构。
7、哈佛结构及冯诺依曼结构区别
哈弗结构指令与数据分开存储在不同的存储空间,具有不同的宽度,独立编址和访问可同时读指令和数据;冯诺依曼结构指令和数据存储在同一存储空间,统一编制访问,具有相同的宽度。
哈弗体系结构总线数量较多,冯诺依曼结构总线数量相对较少。
哈弗结构相对冯诺依曼结构执行效率较高
8、嵌入式编程中为什么要加while(1)
防止程序跑飞,因为很多时候执行完某段程序后单片机的程序指针PC(就是程序指针)并不会停止,仍然会继续从ROM中读取指令并执行,这样一来可能会出现程序跑飞的情况,进而出现不确定的结果,加个while(1)就能让程序在执行完后在原地循环,相当于停在原地,防止跑飞。

第二章 嵌入式系统开发

1、嵌入式系统开发过程
第1步 嵌入式系统需求分析(前期)成果物嵌入式系统规格说明书
第2步 嵌入式系统设计(中期) 系统设计中包括体系架构设计、软硬件划分、硬件设计
第3步 嵌入式系统实现(中期)
第4步 嵌入式系统测试(中期)
第5步 嵌入式系统发布(后期)
2、嵌入式系统硬件设计包括哪些
硬件设计包含以下几个部分:
1嵌入式处理器的选择 考虑因素:处理器性能(时钟频率,寄存器大小)、功耗、成本
2外围设备的选择 考虑因素:根据嵌入式系统需求规格说明书确定相应外围设备、外设性能参数、电源电压范围
3.硬件和仿真工具的选择 选择满足处理器,外设等选择要求的集成电路芯片。如果没有,PCB自己画电路去吧。

3、嵌入式系统的软件设计包括哪些
首先进行嵌入式软件架构设计,分为有操作系统的软件架构和无操作系统的软件架构。其次再进行嵌入式软件模块的划分,如果架构是无操作系统,则进行主模块、子模块的划分,如果架构是有操作系统,择进行实时性、资源需求、任务粒度的确定。

4、嵌入式系统开发工具的组成
1.编辑器 编辑源代码
2.编译器 用于在嵌入式应用程序交叉编译阶段根据不同目标机的处理器芯片来产生运行于目标机上的目标文件。通用编译器:GNU 专用编译器:ARM,MIPS
3.链接器 把所有的目标文件和相关的库函数组合成一个可重定址的目标程序文件,该文件由txt段(代码)、data段(初始化的全局变量)和bss段(未初始化的全局变量)构成。
4.定址器 根据预设的描述各段在存储器中地址信息的脚本文件,对可重定址的目标程序文件的每个段指定物理内存地址,并输出包含二进制内存映像的可执行文件
5.调试工具 用于在嵌入式应用程序交叉调试阶段进行代码调试软件仿真器(基于宿主机的调试)
ROM监控器
ROM仿真器
在线仿真器
片上调试 边界扫描寄存器JTAG

5、嵌入式系统开发环境
交叉编译环境:宿主机-仿真器-目标机

第三章

ARM Cortex-M3处理器由Cortex-M3内核和调试系统两部分组成。
1、Cortex M3的总线类型
I-CODE总线:用于从代码存储区取指令和向量
D-CODE总线:用于对代码存储区进行数据访问
系统总线:用于访问内存和外设
私有外设总线:用于访问私有外设,主要是访问调试组件。
2、Cortex M3的总线接口类型
I-CODE总线 D-CODE总线 系统总线 外部私有外设总线 调试访问端口总线
3、Cortex M3的寄存器及其作用
1.通用寄存器R0-R12:用来进行数据操作
2.堆指针寄存器R13(SP寄存器):被用作堆栈指针,用于访问堆栈。
3.链接寄存器:调用子程序时保存返回地址。
4.程序计数器:用于存放下一条执行的指令的地址。
5.特殊功能寄存器:预定义功能
4、Cortex M3的工作状态、特权分级及操作模式
特权分级:

  1. 用户级 不能执行特权级指令(如MSR/MRS)
  2. 特权级 可以执行所有指令,访问MPU限定外所有存储空间
    操作模式
  3. 线程模式:普通应用程序的代码运行模式
  4. 处理者模式:中断服务程序或OS内核的代码运行模式

5、Cortex M3的中断与异常的处理过程
1异常响应 (入栈 取向量 更新寄存器)
2执行异常程序
3异常返回
6、Cortex M3的双堆栈及其作用
ARM Cortex-M3有两个堆栈:MSP主堆栈和PSP进程堆栈
双堆栈机制可防止用户程序的堆栈错误破坏os使用的堆栈
7、Cortex M3的存储映射
背书上p108页图
8、位带操作的作用
位带操作使代码量减少,防止错误写入。
9、大小端格式
小端格式:将高字节数据存放到高地址,低字节数据存放到低地址,高高低低
大端格式:将高字节数据存放到低地址,低字节数据存放到低地址,高低高低
Cortex-m3既支持小端模式,也支持大端模式,基于Cortex-m3的处理器大多数情况下使用小端模式。

第五章

1、STM32 F103系列微控制器中GPIO端口特性
总共112个多功能双向i/O引脚,每个端口有16个I/O引脚
端口号以大写字母命名,从A到G.
2、GPIO的工作模式
输入浮空
输入上拉
输入下拉
模拟输入
开漏输出
推挽输出
推挽复用功能
开漏复用功能
3、GPIO的引脚复用功能重映射
用户根据实际需要可以把某些外设的“复用功能”从“默认引脚”转移到“备用引脚”上,这就是外设复用功能的I/O引脚重映射。
4、GPIO常用库函数(引脚的选择、工作模式、速度的设置及引脚的置位、复位与数据的读取)
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHZ;
GPIO_SetBits(GPIOA,GPIO_Pin_8);
GPIO_ResetBits(GPIOA,GPIO_Pin_8);
GPIO_ReadOutputDataBit(GPIOA,GPIO_Pin_8);
GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_8);
GPIO初始化过程及使用方式
GPIO_Init TypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_8;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHZ;
GPIO_Init(GPIOA,&GPIO_InitStructure);

嵌入式系统知识点总结【1-5章】相关推荐

  1. 嵌入式系统知识点总结【6-12章】

    第六章 1.嵌入式系统中延时实现的方式及其优缺点 1.完全硬件实现 优点:使用电容及电阻即可完成特定的振荡延时作用 缺点:延时时间无法改变 2纯软件方式 优点:实现简单 缺点:由于不同的微控制器,每条 ...

  2. 嵌入式系统知识点 第一周 2.25

    嵌入式系统知识点 第一周 2.25: 一:嵌入式开发概述: 1.嵌入式技术: 答: 在已有的硬件上移植操作系统:在操作系统之上做上层应用开发:在操作系统之下做底层开发. 2.嵌入式软件与非嵌入式软件的 ...

  3. 嵌入式系统-知识点总结-1

    与人们日常使用的个人计算机相比,嵌入式系统具有许多不同的特点:①专用型,嵌入式系统与具体应用紧密结合,具有很强的专用型:②隐蔽性,嵌入式系统通常总是非计算机设备(系统)中的一个部分,它们隐藏在其内部, ...

  4. [ARM嵌入式系统开发]第一章之嵌入式系统的软硬件

    本章的最后,通过描述ARM为核心的嵌入式系统,来介绍了嵌入式系统的软件和硬件构成和结构.这里根据这部分的介绍以及其他的文章,描述下通用的嵌入式系统的软件和硬件.     首先来说下硬件,书中说,包含有 ...

  5. 期末复习【嵌入式系统】

    期末复习[嵌入式系统] 前言 推荐 期末复习 推荐 题型 押题 复习 总述 问题与思考: 教学内容介绍 问题与思考 第1章 嵌入式系统基础 问题与思考 1.1 引言 1.2 嵌入式系统的概述 1.2. ...

  6. 《嵌入式系统数字视频处理权威指南》——第1章 现实世界中的视频

    本节书摘来自华章计算机<嵌入式系统数字视频处理权威指南>一书中的第1章,作者:(美)Michael Parker Suhel Dhanani 更多章节内容可以访问云栖社区"华章计 ...

  7. 《嵌入式系统开发之道——菜鸟成长日志与项目经理的私房菜》——第1章 系统•嵌入•硬件 01-01 Welcome on board!...

    本节书摘来自异步社区<嵌入式系统开发之道--菜鸟成长日志与项目经理的私房菜>一书中的第1章,第01-01节,作者 邱毅凌,更多章节内容可以访问云栖社区"异步社区"公众号 ...

  8. 《嵌入式系统原理与接口技术》第1章 绪论1.1 嵌入式系统概述

    点击查看本书目录与写作说明 课程比较多,一直没太多的时间写,打总更新一下,欢迎提出宝贵意见. 第1章 绪论 1.1 嵌入式系统概述 嵌入式系统的飞速发展已经极大的改变了我们的生活,从风靡全球的ipho ...

  9. 2022年信息安全工程师考试知识点:嵌入式系统安全

    为大家整理了2022年信息安全工程师考试知识点:嵌入式系统安全,希望对大家备考信息安全工程师考试会有帮助. 嵌入式系统安全 [考法分析] 本知识点主要是对嵌入式系统安全相关内容的考查. [要点分析] ...

最新文章

  1. RocketMQ生产者流程篇
  2. ios证书导出不了p12文件_IOS苹果证书无法生成.P12文件解决方法
  3. UVA1103分区涂色+vc使用注意事项
  4. oracle dump函数
  5. 高质量c/c++编程(5)
  6. Pycharm切换anaconda的环境
  7. 并不算复杂的正则表达式基础
  8. 文件CRC和MD5校验
  9. 验证部分表单是否重复
  10. 分子结构模拟工具UCSF Chimera的安装及基本操作
  11. 电商之争:亚马逊与阿里一较高下
  12. LVS(DR)+keepalived+nfs+raid+LVM
  13. centos8 默认nginx路径_centos8自定义目录安装nginx(教程详解)
  14. bzoj3514 Codechef MARCH14 GERALD07加强版 lct预处理+主席树
  15. 计算机组成原理(第三版)唐朔飞-课后习题(完整版)
  16. [转] eclipse安装subversive插件
  17. Python实现简单命令行版《中国象棋》不使用第三方库
  18. 微型计算机主要性能指标是什么,微型计算机的主要性能指标
  19. Squid缓存服务器原理与实战演练
  20. 关于制作基于STM32的指纹打卡器(不完全体)

热门文章

  1. C#中foreach用法总结
  2. Java LocalDate的使用
  3. 2023年兔年开工大吉
  4. Nginx 301 302重定向
  5. 数据库管理工具神器-DataGrip,可同时管理多个主流数据库[SQL Server,MySQL,Oracle等]连接
  6. [UE4/5]蓝图制作手雷(上)d=====( ̄▽ ̄*)b手雷抛物线
  7. 打印机服务print spooler 无法启动 错误代码1068
  8. 《我的第一本时间规划手册》
  9. 天气调用php代码,天气调用代码
  10. 桌面程序使用JavaDB