单片机嵌入式系统原理及应用答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软实时系统的时限是一个柔性灵活的,它可以容忍偶然的超时错误。失败造成的后果并不严重,仅仅是轻微的降低了系统的吞吐量。
5、嵌入式系统的分类
按嵌入式微处理器的位数分类
a) 4位
b) 8位
c) 16位
d) 32位
e) 64位
按软件实时性需求分类
a)非实时系统
b)软实时系统
c)硬实时系统
按嵌入系统的复杂程度分类
六是数量不同。嵌入式系统的数量远大于通用计算机系统的数量。因为一个通用计算系
统中至少包括数十个嵌入式系统。更别说其它的嵌入式系统了。
17、常见的嵌入式操作系统有哪些,各自有什么特点
1) vxworks:
性能优越,开发调试便利,强大的技术支持,但是昂贵的价格让开发者望而却步。
2) windows ce:
主要包括系统需求分析(要求有严格规范的技术要求)、体系结构设计、软硬件及机械系统设计、系统集成、系统测试,最终得到最终产品。
16、嵌入式系统与通用计算机的区别一是能力不同。通用计算机系统通常什么都能做,我们买个电脑,上网、听音乐、看电影、做软件都不在话下。嵌入式系统一般面向某一特定应用,不是什么都能干。例如鼠标里的嵌入式系统任务只是监视鼠标的按键,并向主cpu发送键码,数码相机里面的嵌入式系统主要进行图像处理,让它们什么都能做,有点难也没必要。
b)小型嵌入式系统
c)中型嵌入式系统
d)复杂嵌入式系统
6、arm9处理器的工作状态有哪些
arm状态,thumb状态
7、arm9处理器的内部寄存器结构
arm处理器总共有37个寄存器,可以分为以下两类寄存器:
1)31个通用寄存器:
r0~r15;
r13_svc、r14_svc;
r13_abt、r14_abt;
其中,blcommon库是与bootloader程序链接在一起的,blcommon库的入口点为bootloadermain函数,它是startup汇编函数完成后跳转至该入口的。main函数的主要任务时调用blcommon中的bootloadermain()函数,这是bootloader的主控函数,它控制了bootloader的完整执行流程。这部分代码由c语言实现,是blcommon代码的一部分,它可以用来执行比较复杂的操作。比如检测内存和flash的有效性、检测外部设备接口、检测串口并且向已经连接的主机发送调试信息、通过串口等待命令、启动网络接口、建立内存映射等汇编无法完成的工作。
cpsr包含条件码标志、中断禁止位、当前处理器模式以及其它状态和控制信息。
10、如何实现arm状态和thumb状态的切换
arm处理器在两种工作状态之间切换方法:
进入thumb状态:
当操作数寄存器rm的状态位bit[0]为1时,执行bx rm指令进入thumb状态。如果处理器在thumb状态进入异常,则当异常处理(irq,fiq,undef,abort和swi)返回时,自动切换到thumb状态。
四是可靠性要求不同。电脑死机估计每个人都经常遇到,死机了怎么办?重启就是。但是如果火箭发射时里面的嵌入式系统死机了......,
五是二次开发能力不同。我们买来个电脑,通常也就装了个操作系统,其它的程序我们需要什么就可以装什么,我们甚至可以打开机箱,加几条内存。但嵌入式系统通常买来后就那样了,软件和硬件都不变了。数码相机相信多数人没有打开过,也没有再安装什么新软件。倒是智能手机可以装一些软件,但能力有限。
嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
2、嵌入式系统的特点
1)系统内核小
2)专用性强
3)运行环境差异大
4)可靠性要求高
5)系统精简和高实时性操作系统
6)具有固化在非易失性存储器中的代码
7)无自举开发能力
3、嵌入式系统的硬件平台由哪些部分组成
arm的risc体系结构的发展中已经提供了低功耗、小体积、高性能的方案。而为了解决代码长度的问题,arm体系结构又增加了T变种,开发了一种新的指令体系,这就是thumb指令集。它有从标准32位arm指令集抽出来的36条指令格式,可以重新编成16
位的操作码。这能带来很高的代码密度。
12、arm指令寻址方式与arm指令集中各类常用指令的用法
精简的模块化操作系统
多硬件平台支持
支持有线和无线的网络连接
稳健的实时性支持
丰富的多媒体和多语言支持
强大的开发工具
3) palm os:
3com公司产品,专门为掌上电脑开发的32位的嵌入式操作系统
占有非常小的内存,基于palm os编写的应用程序占用的空间也非常小(通常只有几十kb)
palm提供了串行通信接口和红外线传输接口,利用它可以方便地与其它外部设备通信、传输数据
二是大小不同。通用计算机系统通常对个头没有要求,台式机占据一张桌子,大型服务器可以占据一个房间,笔记本放到膝盖上就行。嵌入式系统由于要嵌入到它服务的主体里面,一般都比较小,而且要与服务的主体有机结合成为一个整体。
三是实时性要求不同。实时性指完成任务的时间要求。通用计算机系统一般实时性要求不高,但嵌入式系统往往实时性要求很高。比如汽车里的嵌入式系统,如果发动机过热,必须要求在规定的时间内作出反应,如果像pc那样不紧不慢的,后果可想而知。
4)嵌入式linux:
嵌入式linux os逐渐形成了可与windows ce等eos相抗衡的局面。目前正在开发的嵌入式系统中,49%的项目选择linux作为嵌入式操作系统。linux现已成为嵌入式操作系统的理想选择。
开放源码,丰富的软件资源,广泛的软件开发者的支持,价格低廉,结构灵活,适用面广。
精简的内核,性能高、稳定,多任务。
(内容太多,第三章全部内容!)
13、什么是交叉编译,为什么要进行交叉编译
在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,这个编译过程就叫交叉编译。
原因:有时是因为目的平台上不允许或不能够安装我们所需要的编译器,而我们又需要这个编译器的某些特征;有时是因为目的平台上的资源贫乏,无法运行我们所需要编译器;有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。
(1)启动部分
启动部分主要是实现初始化硬件的功能。在参考板的bootloader目录下,会发现一些.s文件,可能会是init.s或者是reset.s等,这样的文件是cpu加电后最先执行的代码。接着oal.exe通过startup函数完成硬件的初始化,startup函数是boot loader的入口函数。该函数一般是使用汇编语言编写,与cpu关系非常紧密,能完成初始化cpu、内存等核心硬件。
rtup函数,oalstartup函数主要完成将oemaddresstable表传递给内核,然后调用kernelstart函数跳转到内核。因此,这部分工作是bootloader的一大重点。
(2)主控部分
startup函数初始化cpu等核心硬件并跳转到main函数后,系统就会转入c语言代码执行环境。这时函数分为3个模块:blcommon、download、flash。其中blcommon模块是由微软提供的,执行一些逻辑上的功能,因此建议开发人员不要对其进行修改。而download、flash中的函数与硬件平台息息相关,因此对于每种硬件平台都要将函数的实现进行修改。
从狭义上讲,我们更加强调那些使用嵌入式微处理器构成独立系统,具有自己操作系统,具有特定功能,用于特定场合的嵌入式系统。本书所谓的嵌入式系统是指狭义上的嵌入式系统。
根据ieee(国际电气和电子工程师协会)的定义:嵌入式系统是“用于控制、监视或者辅助操作机器和设备的装置”(原文为devices used to control, monitor, or assist the operation of equipment, machinery or plants)。
常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。
针对嵌入式的存储方案,提供实时版本和完善的嵌入式解决方案。
完善的中文支持,强大的技术支持,完整的文档。
18、什么是boot loader,arm系统中boot loader的主要作用是什么
boot loader就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们能初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。
r13_und、r14_und;
r13_irq、r14_irq;
r8_frq-r14_frq。
2)6个状态寄存器
cpsr;spsr_svc、spsr_abt、spsr_und、spsr_irq和spsr_fiq。
8、arm9处理器的工作模式有哪些
用户,fiq,irq,svc,中止,未定义,系统
9、cpsr寄存器各数据位的作用
拥有开放的os应用程序接口,开发商可根据需要自行开发所需的应用程序
具有强开放性,现在有大约数千种专门为palm os编写的应用程序,从程序内容上看,小到个人管理、游戏,大到行业解决方案,palm os无所不包。在丰富的软件支持下,基于palm os的掌上电脑功能得以不断扩展。
操作系统的节能功能。在palm os的应用程序中,如果没有事件运行,则系统设备进入半休眠(doze)的状态;如果应用程序停止活动一段时间,则系统自动进入休眠(sleep)状态。
作用:硬件初始化,操作系统引导。
19、简述boot loader的启动过程
大多数bootloader都包含两种不同的操作模式:启动加载模式和下载模式。启动加载模式也称为自主模式,即bootloader从目标机上的某个固态存储设备上将操作系统加载到ram中运行,整个过程并没有用户的介入。而下载模式则是目标机上的bootloader将通过串口连接或网络连接等通信手段从主机(host)下载文件。从主机下载的文件通常首先被boot loader保存到目标机的ram中,然后再被bootloader写到目标机上的flash类固态存储设备中。这种模式通常在第一次安装内核与根文件系统时被使用,或系统更新时使用。一般嵌入式系统的boot loader较为常用的是启动加载模式,它的加载流程也是我们要重点讨论的内容。
嵌入式系统的微硬件包括嵌入式核心芯片、存储器系统及外部接口
4、什么是分时系统、软实时系统、硬实时系统,它们的区别是什么?
分时操作系统按照相等的时间片调度进程轮流运行,分时操作系统由调度程序自动计算进程的优先级,而不是由用户控制进程的优先级。这样的系统无法实时响应外部异步事件。硬实时系统有一个刚性的、不可改变的时间限制,它不允许任何超出时限的错误。超时错误会带来损害甚至导致系统失败、或者导致系统不能实现它的预期目标。
进入arm状态:
当操作数寄存器rm的状态位bit[0]为0时,执行bx rm指令进入arm状态。如果处理器进行异常处理(irq,fiq,undef,abort和swi),在此情况下,把pc放入异常模式链接寄存器lr中,从异常向量地址开始执行也可以进入arm状态。
11、arm为何集成了32位的arm指令集和16位的thumb指令集
单片机嵌入式系统原理及应用答案
【篇一:嵌入式系统原理复习题及答案】
>1、嵌入式系统的概念
广义上讲,凡是带有微处理器的专用软硬件系统都可称为嵌入式系统。如各类单片机和dsp系统。这些系统在完成较为单一的专业功能时具有简洁高效的特点。但由于他们没有操作系统,管理系统硬件和软件的能力有限,在实现复杂多任务功能时,往往困难重重,甚至无法实现。
适用于不同的cpu,支持多种体系结构,如x86、arm、mips、alpha、sparc等。能够提供完善的嵌入式gui以及嵌入式x-windows。
提供嵌入式浏览器、邮件程序、mp3播放器、mpeg播放器、记事本等应用程序。提供完整的开发工具和sdk,同时提供pc上的开发版本。
用户可定制,可提供图形化的定制和配置工具。
14、
1)ຫໍສະໝຸດ Baidu
2)
3)
4)
5)
6)
7)
8)
简述构建交叉编译链的主要步骤获取相关的源代码和补丁包它们都存放在src目录下安装binutils安装linux header安装glibc头文件编译gcc stage1使用刚编译出的gcc编译glibc重新编译gcc,即gccstage2
15、简述嵌入式系统的开发流程
合理的内存管理。palm的存储器全部是可读写的快速ram,动态ram(dynamic ram)类似于pc机上的ram,它为全局变量和其它不需永久保存的数据提供临时的存储空间;存储ram(storage ram)类似于pc机上的硬盘,可以永久保存应用程序和数据。
palm os的数据是以数据库(database)的格式来存储的。
相关文档
最新文档