文档库 最新最全的文档下载
当前位置:文档库 › 嵌入式系统的知识体系

嵌入式系统的知识体系

嵌入式系统的知识体系
嵌入式系统的知识体系

1 嵌入式系统的知识体系

嵌入式系统的应用范围可以粗略分为两大类:电子系统的智能化(工业控制、现代农业、家用电器、汽车电子、测控系统、数据采集等),计算机应用的延伸(MP3、手机、通信、网络、计算机外围设备等)。从这些应用可以看出,要完成一个以MCU为核心的嵌入式系统应用产品设计,需要硬件、软件及行业领域相关知识。硬件主要有MCU的硬件最小系统、输入/输出外围电路、人机接口设计。软件设计有固化软件的设计,也可能含PC机软件的设计。行业知识需要通过协作、交流与总结获得。

概括地说,学习以MCU为核心的嵌入式系统,需要以下软硬件基础知识与实践训练:

①硬件最小系统(电源、晶振、复位、写入调试接口);

②通用I/O(开关量输入/输出,涉及各种二值量检测与控制);

③模/数转换(各种传感器信号的采集与处理,如红外、温度、光敏、超声波、方向等);

④数/模转换(对模拟量设备利用数字进行控制);

⑤通信(串行通信接口SCI、串行外设接口SPI、集成电路互联总线I2C、CAN、USB、嵌入式以太网、ZigBee技术等);

⑥显示(LED、LCD等);

⑦控制(控制各种设备,包括PWM等控制技术);

⑧数据处理(图形、图像、语音、视频等的处理或识别);

⑨各种具体应用。

万变不离其宗,任何应用都可以归入这几类。而应用中的硬件设计、软件设计、测试等都必须遵循嵌入式软件工程的方法、原理与基本原则。所以,嵌入式软件工程也是嵌入式系统知识体系的有机组成部分,只不过它融于具体项目的开发过程之中。

以上实践训练涉及硬件基础、软件基础及相关领域知识。计算机语言、操作系统、开发环境等均是达到这些目的的工具。有些初学者,容易把工具的使用与所要达到的真正目的相混淆。例如,有的学习者学了很长时间的嵌入式操作系统移植,而不进行实际嵌入式系统产品的开发,到最后也做不好一个嵌入式系统小产品,偏离了学习目标,甚至放弃嵌入式系统领域。这就是进入了嵌入式系统学习误区,下面对此作一些分析。

2 嵌入式系统的学习误区

关于嵌入式系统的学习方法,因学习经历、学习环境、学习目的、已有的知识基础等不同,可能在学习顺序、内容选择、实践方式等方面有所不同。但是,应该明确哪些是必备的基础知识,哪些应该先学,哪些应该后学;哪些必须通过实践才能获得;哪些是与具体芯片无关的通用知识,哪些是与具体芯片或开发环境相关的知识。

由于微处理器与微控制器种类繁多,也可能由于不同公司、机构出于自身的利益,给出一些误导性宣传,特别是我国嵌入式微控制器制造技术落后,使得人们对微控制器的发展,在认识与理解上存在差异,导致一些初学者进入嵌入式系统的学习误区,浪费了宝贵的学习时间。下面分析可能存在的几个误区。

2.1 操作系统的困惑

如果说,学习嵌入式系统不是为了开发其应用产品,那就没有具体目标,诸如学习方法这样的问题也就不必谈了。实际上,这正是许多人想学,又不知从何开始学习的关键问题所在,不知道自己学习的具体目标。于是,看了一些培训广告,看了书店中种类繁多的嵌入式系统书籍,或上网以“嵌入式系统”为关键词进行查询,就参加培训或看书,开始“学习起来”。对于有计算机阅历的人,往往选择一个嵌入式操作系统就开始学习了。这有点像“瞎子摸大象”,只了解其一个侧面。这样如何能对嵌入式产品的开发过程有全面了解呢?针对许多初学者选择“xxx嵌入式操作系统+xxx处理器”的嵌入式系统入门学习模式,笔者认为是不合适的。笔者的建议是:首先把嵌入式系统软件与硬件基础打好了,再根据实际需要,

选择一种实时操作系统(RTOS)进行学习实践。要记住:RTOS是开发某些类嵌入式产品的辅助工具,是手段,不是目的;许多类嵌入式产品,并不需要RTOS。所以,一开始就学习RTOS,并不符合“由浅入深、循序渐进”的学习规律。

RTOS本身由于种类繁多,实际使用何种RTOS,一般需要由工作单位确定。基础阶段主要学习RTOS的基本原理与RTOS上的软件开发方法,而不是学习如何设计RTOS。以开发实际嵌入式产品为目标的学习者,不要把过多的精力花在设计或移植RTOS上面。正如很多人使用Windows操作系统,而设计Windows操作系统的只有Microsoft。许多人“研究”Linux,但不使用它,浪费了时间。人的精力是有限的,学习必须有所选择。

2.2 硬件与软件的困惑

以MCU为核心的嵌入式技术的知识体系必须通过具体的MCU来体现、实践。但是,选择任何型号的MCU,其芯片相关的知识只占知识体系的20%左右,80%左右是通用的软件硬件及相关知识。80%的通用知识,必须通过具体实践才能获得,所以学习嵌入式技术一般要选择一个系列的MCU。

系统含有硬件与软件两大部分,它们之间的关系如何?

有些学者,仅从电子的角度认识嵌入式系统。认为“嵌入式系统=MCU硬件系统+小程序”。这些学者大多具有良好的电子技术基础知识。实际情况是,早期MCU内部RAM小,程序存储器外接,需要外扩各种I/O,没有像USB、嵌入式以太网等这样较复杂的接口。因此,程序占总设计量比例小于50%,使人们认为嵌入式系统(单片机)是“电子系统”,以硬件为主,程序为辅。但是,随着MCU制造技术的发展,不仅MCU内部RAM越来越大,Flash进入MCU内部改变了传统的嵌入式系统开发与调试方式,固件程序可以更方便地调试与在线升级,许多情况下与开发PC机程序的方便程度相差无几,只不过开发环境与运行环境不是同一载体而已。这使得嵌入式系统的软件硬件设计方法发生了根本变化。

有些学者,仅从软件开发角度认识嵌入式系统,甚至仅从嵌入式操作系统认识嵌入式系统。这些学者大多具有良好的计算机软件开发基础知识,认为硬件是生产厂商的事。他们没有认识到,嵌入式系统产品的软件与硬件均是需要开发者设计的。笔者常常接到一些关于嵌入式产品稳定性的咨询,发现大多数是由于软件开发者对底层硬件的基本原理不理解。特别是有些功能软件开发者,过分依赖于底层硬件的驱动软件,自己对底层驱动原理知之甚少。实际上,一些功能软件开发者,名义上在做嵌入式软件,其实仅仅是使用嵌入式编辑、编译环境而已,本质与开发通用PC机软件没有两样。而底层硬件驱动软件的开发,若不全面考虑高层功能软件对底层硬件的可能调用,也会使封装或参数设计得不合理或不完备,导致高层功能软件调用困难。可以看出,若把嵌入式系统的开发孤立地分为硬件设计、底层硬件驱动软件设计、高层功能软件设计,那么一旦出现问题,就可能难以定位。实际上,嵌入式系统设计是一个软件、硬件协同设计工程,不能像通用计算机那样,软件、硬件完全分开来看,而要在一个大的框架内协调工作。

学习嵌入式系统是以软件为主还是以硬件为主,或者如何选择切入点,如何在软件与硬件之间取得平衡?对于这个困惑的建议是:要想成为一名真正的嵌入式系统设计师,在初学阶段,必须打好嵌入式系统的硬件与软件基础。以下是从事嵌入式系统设计二十多年的美国学者John Catsoulis 在《Designing Embedded Hardware》一书中关于这个问题的总结:嵌入式系统与硬件紧密相关,是软件与硬件的综合体,没有对硬件的理解就不可能写好嵌入式软件;同样,没有对软件的理解也不可能设计好嵌入式硬件。

2.3 片面认识嵌入式系统

嵌入式系统产品种类繁多,应用领域各异。在第1部分中,把嵌入式系统的应用范围粗略分为电子系统的智能化与计算机应用的延伸两大类。从初学者角度,可能存在分别从这两个角度片面认识嵌入式系统的问题。因此,一些从电子系统智能化角度认识嵌入式系统的学

习者,可能会忽视编程结构、编程规范、软件工程的要求、操作系统等知识的积累。另一些从计算机应用的延伸角度认识嵌入式系统的学习者,可能会把通用计算机学习过程中的概念与方法生搬硬套到嵌入式系统的实践中,忽视嵌入式系统与通用计算机的差异。

实际上,在嵌入式系统学习与实践的初始阶段,应该充分了解嵌入式系统的特点,根据自身的已有知识结构,制定适合自身情况的学习计划。目标应该是打好嵌入式系统的硬件与软件基础,通过实践,为成为良好的嵌入式系统设计师建立起基本知识结构。学习过程中,具体应用系统可为实践载体,但不能拘泥于具体系统,应该有一定的抽象与归纳。例如,初学者开发实际控制系统时没有使用实时操作系统,但不要认为实时操作系统不需要学习。又例如,初学者可以一个带有实时操作系统的样例为蓝本进行学习,但不要认为任何嵌入式系统都需要实时操作系统,甚至为一个十分简明的实际系统加上不必要的实时操作系统。因此,片面认识嵌入式系统,可能导致学习困惑。应该根据实际项目需要,锻炼自己分析实际问题、解决问题的能力。这是一个长期的学习与实践过程,不能期望通过短期培训完成整体知识体系的建立,应该重视自身实践,全面地理解嵌入式系统的知识体系。

2.4 入门芯片选择的困惑

嵌入式系统的大部分初学者需要选择一个微控制器(MCU)进行入门级学习,面对众多厂家生产的微控制器系列,往往不知如何是好。

首先是关于位数问题,目前主要有8位、16位和32位MCU。不同位数的MCU各有应用领域,这一点与通用微机有很大不同。例如做一个遥控器,不需要使用32位MCU,否则MCU芯片价格就已经超过遥控器价格需求。对于首次接触嵌入式系统的学习者,可以根据自己的知识基础选择入门芯片的位数。建议大多数初学者选择8位MCU作为快速入门芯片,了解一些汇编与底层硬件知识,之后再选16位或32位芯片进行学习实践。

关于芯片选择的另一个误区是认为有“主流芯片”存在,嵌入式系统也可以形成芯片垄断。这完全是一种误解,是套用通用计算机系统的思维模式,而忽视了嵌入式系统应用的多样性。

关于学习芯片选择还有一个误区,即误认为选择工作频率高的芯片进行入门学习,更先进。实际上,工作频率高可能给初学者带来不少困难。

实际嵌入式系统设计不是追求芯片位数、工作频率、操作系统等因素,而是追求稳定可靠、维护、升级、功耗、价格等指标。初学者选择入门芯片,是通过某一MCU作为蓝本,获得嵌入式系统知识体系的通用基础。其基本原则是:入门时间较短、硬件成本较低,知识要素较多,学习难度较低。

3 基础阶段的学习建议

基于以上讨论,下面对广大渴望学习嵌入式系统的学子提出几点基础阶段的学习建议:①嵌入式系统软件硬件密切相关,一定要打好软硬件基础。其实,只要找到正确的方法,加上努力,任何理工科学生,甚至非理工科学生,都能学好嵌入式系统。

②选择一个芯片及硬件评估板(入门芯片最好简单一点,例如8位MCU)、选择一本好书(最好有规范的例子)、找一位好老师(最好是有经验且热心的)。硬件评估板的价格一定要在1000元以下,不要太贵,最好能有自己动手的空间。不花一分硬件钱想要学好嵌入式系统不实际,因为这是实践性很强的学科。好书,可以让人少走弯路,不被误导。好老师也可以是做过一些实际项目的学长(一定要找做过几个成功项目的学长或老师做指导,否则经验不足也可能误导),有教师指导,学习进程会加快(人工智能学科里有个术语叫无教师指导学习模式与有教师指导学习模式,无教师指导学习模式比有教师指导学习模式复杂许多)。

③许多人怕硬件,其实嵌入式系统硬件比电子线路好学多了。只要深入理解MCU的硬件最小系统,对I/O口、串行通信、键盘、LED、LCD、SPI、I2C、PWM、A/D(包括一些传感器)、D/A等逐个实验理解,逐步实践,再通过动手做一个实际的小系统,底层硬件基础

就有了。各个硬件模块驱动程序的编写是嵌入式系统的必备基础。学习嵌入式系统的初期,这个过程是必须的。

④至于嵌入式实时操作系统RTOS,一定不要一开始就学,这样会走很多弯路,也会使你对嵌入式系统感到畏惧。等你软件硬件基础打好了,再学习就感到容易理解。实际上,许多嵌入式应用并不需要操作系统。也可以根据实际项目需要,再学习特定的RTOS。不要被一些嵌入式实时操作系统培训班的宣传所误导,而忽视实际嵌入式系统软硬件基础知识的学习。

⑤要避免片面地单纯从“电子”或“计算机软件”角度认识嵌入式系统。前面说过,嵌入式系统是软件与硬件的综合体。因此,要逐步从MCU的最小系统开始,一点一点理解硬件原理及底层硬件驱动编程方法。要通过规范的例子,理解软件工程封装、可复用等思想。通过规范编程,积累底层构件(component),也就是一个一个模块;但是要封装得比较好,可复用。

⑥注重实验与实践。这里说的实验主要指通过重复来验证他人的工作,目的是学习基础知识,这个过程一定要经历。实践是自己设计,有具体的“产品”目标。如果花500元左右,自己做一个具有一定功能的小产品,且能稳定运行1年以上,就可以说接近入门了。

⑦关于入门芯片的选择。不要选太复杂的微控制器作为入门芯片,不能超越学习过程。不要一下子学习几种芯片。可以通过一个芯片入门,并具有一个实践经验后,根据实际需要选择芯片开发实际产品。注意,不要把微处理器(MPU)与微控制器(MCU)概念相混淆,微处理器只是微控制器的内核。

⑧关于嵌入式操作系统的选择。可以等到具有一定实践基础后,选择一个简单、容易理解原理的嵌入式操作系统进行学习。不要一开始就学习几种操作系统,理解了基本原理,实践中确有实际需要再学习也不迟。人总是要不断学习的。

⑨关于汇编语言与C语言的取舍。随着MCU对C编译的优化支持,对于汇编语言可以只了解几个必要的语句,而直接使用C语言编程。但必须通过第一个程序理解芯片初始化过程、中断机制、程序存储情况等,区别于PC机程序的内容。另外,为了测试的需要,最好掌握一门PC机编程语言。

⑩要明确自己的学习目的,并注意学习方法。要明确学习目的是打基础,还是为了适应工作需要而进行的短训。学习方法方面,要根据学习目的选择合适的学习途径,注意理论学习与实践、通用知识与芯片相关知识、硬件知识与软件知识的平衡,要在理解软件工程基本原理基础上理解硬件构件与软件构件等基本概念。

1.不要看到别人的回复第一句话就说:给个代码吧!你应该想想为什么。当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异。

2.别小家子气,买本书几十块都舍不得,你还学个P。为了省钱看电子书,浪费的时间绝对超过书的价值。当然如果查资料,只能看PDF。

3.学习新的开发软件时,一定要看帮助手册。买的书不够全面。刚接触一个软件,什么都不懂,就盲目的问东问西,让人看起来很幼稚。

4.不要蜻蜓点水,得过且过,细微之处往往体现实力。

5.把时髦的技术挂在嘴边,还不如把过时的技术记在心里。

6.看得懂的书,请仔细看;看不懂的书,请硬着头皮看。

.别指望看第一遍书就能记住和掌握什么——请看第二遍、第三遍。

7.多实践,去焊板子、调试,去写去调,只用软件模拟,是永远成不了高手的。

8.保存好你做过的所有的源程序、PCB、原理图等----那是你最好的积累之一。

9.对于网络,还是希望大家能多利用一下,很多问题不是非要到论坛来问的,首先你要学会自己找答案,比如google、百度都是很好的搜索引擎,你只要输入关键字就能找到很多相

关资料,别老是等待别人给你希望,看的出你平时一定也很懒!

10 到一个论坛,你学会去看以前的帖子,不要什么都不看就发帖子问,也许你的问题早就有人问过了,你再问,别人已经不想再重复了,做为初学者,谁也不希望自己的帖子没人回的。

11,虽然不是打击初学者,但是这句话还是要说:论坛论坛,就是大家讨论的地方,如果你总期望有高手总无偿指点你,除非他是你亲戚!!讨论者,起码是水平相当的才有讨论的说法,如果水平真差距太远了,连基本操作都需要别人给解答,谁还跟你讨论呢。

什么样的人是浮躁的人?

浮躁的人容易问:我到底该学什么;

----踏踏实实的学点基本的吧?单片机不知道是什么就想去学ARM?

c语言不会想搞LINUX?别老是好高骛远。

浮躁的人容易问:谁有xxx源码?--(你给人家多少钱啊?自己的劳动白送你?)

浮躁的人容易说:跪求xxx ---(就算网络也要点尊严吧?)

浮躁的人容易说:紧急求救---(其实只是个简单的课程设计)

浮躁的人容易说:有没有xxx中文资料?---一个字:懒。别说别的。E文不行?谁不是从

ABC学起的啊?

浮躁的人容易说:求xxx,我的email是,然后消失---- 你以为你是大爷啊,人

家请你吃饭,还要喂到你口里不成?

浮躁的人容易问:做单片机有钱途吗----只是为了钱,搞不好技术的,你去抢银行好了。

浮躁的人容易说:哪里有xxx芯片资料?(其实大部分资料网络上都有,但是偏偏来找人问,懒!)

浮躁的人分两种:只观望而不学的人;只学而不坚持的人;

浮躁的人永远不是一个高手。

关键词LNA RF 基带处理芯片组一体化模块卫星定位授时与同步

利用导航卫星,进行物体定位、时钟授时与同步数据采集控制,可以达到传统测量控制手段所不及的精确程度。这种卫星定位授时同步技术在航空航海、陆上交通、科学考察、极地探险、地理测量、气象预报、设备巡检、系统监控等方面的应用日益广泛。近年来,很多厂商,如Atmel、ST、Motorola、Maxim、NEC、Fijitsu、Conexant等,相继推出了许多相关卫星定位授时同步的芯片组与模块,为设计出稳定可靠、简洁便携的仪表仪器,提供了很多有效的便捷途径。本文对现有的卫星信号接收芯片组或模块如何构成各种结构紧凑、成本低廉、简单易用、性能优良的卫星信号接收通道,怎样嵌入到不同的实际应用系统中实现精确的物体定位、时钟授时或同步数据采集控制的各种类型设计进行综合阐述。

1 卫星定位授时同步概述

卫星定位授时同步技术中的关键部件是人造地球导航卫星组。目前,主要的导航卫星组有美国的全球卫星定位系统GPS、俄罗斯的全球导航卫星系统GLONASS(Global Navigation System)、中国的北斗导航系统和欧盟的伽利略全球导航系统Galileo。这几种导航卫星系统的特征与应用状况如表1所列。

表1 现存导航卫星系统的特征与状况

卫星导航系统通常由三部分组成:导航卫星、地面监测校正维护系统和用户接收机或收发机。对于北斗局域卫星导航系统,地面监测中心要帮助用户一起完成定位授时同步。本文重点阐述的是用户接收或收发部分的嵌入式硬软件应用设计。

在民用方面,GPS、GLONASS和北斗的定位精度是米级,卫星授时时钟精度是毫秒级,数据同步能力在1 μs以下。未来的Galileo导航卫星系统,其民用定位授时同步精度是GPS

的10倍左右。上述几种导航卫星系统中,GPS是能够进行全方位、全天候、长时期卫星定位授时同步的最好的卫星导航设备。目前,美国与俄罗斯一道正在维护GLONASS,共同构成GPS + GLONASS系统,卫星数目倍增,卫星定位授时同步的精度、范围、效率和可靠性将会得到更进一步的提高。

2 卫星定位授时同步的基本原理

卫星导航基于多普勒效应的多普勒频移规律:

式中,fΔ为运行物体之间的电磁波信号频率变化,λ是其信号电磁波的波长,ν是其相对速度。

上式说明所接收卫星信号的多普勒频移曲线与卫星轨道有一一对应关系。也就是说,只要获得卫星的多普勒频移曲线,就可确定卫星的轨道。反之,已知卫星运行轨道,根据所接收到的多普勒频移曲线,便能确定接收体的地面位置。

全球卫星导航的基本原理是:卫星发射导航电文,其中包括测距精度因子、开普勒参数、轨道摄动参数、卫星钟差参数νti、大气传播迟延修正参数等。地面接收机根据码分多址CDMA(Code Division Multiple Access)或频分多址FDMA(Frequency Division Multiple Access)的特点区分各导航卫星,接收并识别相应的导航电文,测量发来信号的传播时间Δti,利用导航电文中的一系列参数逐步计算出卫星的位置(xi, yi, zi)。设接收机所在待测点位置为(x, y, z),接收机时钟钟差为νt0,接收机只要能接收到至少4颗卫星信号,就可确定其位置和钟差:

在全球导航系统下,用户接收机根据卫星导航电文不断地核准其时钟钟差,可以得到很高的时钟精度,这就是精确的卫星授时;根据导航电文的规律性的时序特征,通过计数器,可以得到高精度的同步秒脉冲PPS(Pulse Per Second)信号,用于同/异地多通道数据采集与控制的同步操作。

北斗局域卫星导航的基本原理是:以2颗位置已知的卫星为圆心,各以测定的本星至用户机距离为半径构成2个球面。地面控制中心通过电子高程地图提供一个以地心为球心、球心至地球表面高度为半径的非均匀球面。三球面的交点即是用户位置。具体的定位过程是:首先由地面中心发出信号,分别经2颗卫星反射传至用户接收机,再由接收机反射2颗卫星分别传回地面中心,地面中心站计算出两种途径所需时间t1和t2,设卫星的位置为(xi, yi, zi),地面中心到卫星的距离为Ri,(xi, yi, zi)、Ri可由地面中心确定,通过下列方程组就可以计算待测点的位置(x, y, z):

式中,c为电磁波的空中传播速度,即光速。

上述一系列复杂的运算,对全球导航系统来说,在用户接收侧进行;对北斗局域导航系统来说,是在地面中心进行的。地面中心确定用户位置后,再把定位与时钟信息通过卫星传给用户。

3 全球导航卫星信号的接收端设计

3.1 卫星信号接收端的基本构成

全球导航卫星信号接收端主要由以下部分组成:卫星接收天线、低噪声放大器LNA(Lower Noise Amplifier)、前端射频下变频器EndFront RF(EndFront Radio Frequency Down Converter)、信号通道相关器、数字信号运算处理控制器DSP、实时时钟RTC(Real Time Clock)、数据存储器Memory与输入输出I/O接口组成,整个体系如图1所示。

从图1可以看出:卫星信号接收端的核心是DSP,从导航电文到卫星位置的确定,再到接收端所在待测点位置与接收端时钟钟差的确定,及其卫星通道数据的整定控制等都是该DSP完成的。在实际应用中常选用32位的通用数字信号处理器或ARM7内核的单片机,来执行这一系列复杂的运算与控制。

接收端向外输出精确的定位/授时数据结果和PPS秒脉冲信号,并且可以接收外界的通

信配置。

3.2 选择适当的卫星信号收发天线

卫星信号接收天线是卫星接收端的关键部件。

选择卫星信号接收天线,既要具有适当的信号增益,又要视其形状和大小。固定场合使用的卫星信号接收天线,可以选用高增益大体积的冠状天线;便携式移动设备的卫星接收天线可以选用微型的平板式天线和四臂螺旋式天线。常见的微型平板天线是陶瓷微波瓷介天线。陶瓷微波瓷介天线经济实用,既可以作为无源天线近距离直接连接到前端RF下变换器,也可以与LNA一起构成有源长馈线车载天线。四臂螺旋天线性能比平板天线好,无方位要求;但价格高,杆长度大,应用不多。

接收的卫星信号是右旋园极化波,发给卫星的信号要求是左旋园极化波。使用北斗局域导航卫星的用户接收机,虽然不需要复杂的运算就能得到地面中心提供的准确的定位授时结果,但它既要接收卫星信号又要向卫星发射信号,其天线的理想选择是微型笔杆状无源双频带螺旋式卫星收发天线。

3.3 选用集成组件构建卫星信号接收端

选用合适的CPU及其外围器件,按照图1所示的原理,可以很容易地设计出卫星信号接收端的硬件电路;但是由于涉及到大量复杂繁琐的运算,CPU软件设计任务十分繁重。

设计卫星信号接收端,常选用集成组件来搭建。可选的LNA组件,如Atmel的ATR0610、Maxim的MAX2641/ 2654/2655等。可选的前端RF下变频器,如Atmel的ATR0600、Maxim 的MAX2742/4/5、ST的STB5600、μNav的μN1005/8021C、NEC的μPB1029R、Fujitsu 的MB15H156等。

很多知名半导体厂商把通道相关器、DSP运算控制器、数据存储器等集成到一个芯片内,内含通道相关算法、卫星位置确定算法、待测点定位授时算法,对外通过RS232串口每秒钟输出一次定位授时等信息和PPS秒脉冲,并且可通过RS232串口接收用户的RS232通信配置信息,这种芯片就是基带处理器(Base Band Processor)。基带处理器含有8~16个卫星通道数,工作稳定可靠,价格低廉。使用这种芯片可以免除用户选用高速DSP数字信号处理器或ARM7单片机构建电路与设计卫星信号运算处理软件的麻烦。常见的卫星信号基带处理器,例如Atmel的A TR0620、Sony的CXD2932、ST的ST20GP6、μNav的μN8031B、NEC的μPD77538、Fujitsu的MB87Q2040等。

图1 全球导航卫星信号接收端结构框图

图2 集成组件构建的卫星信号的接收端框图

图2是由ATR0610、ATR0600和ATR0620构成的GPS卫星信号接收端框图。

选用LNA、前端RF下变频器、基带处理器构建卫星信号接收端的时候,应注意尽可能选用一个厂商的器件;如果不能做到,应选用成熟搭配的不同厂商的器件。表2列出了几种常用的工作稳定可靠的器件搭配组合。

表2 集成卫星信号接收组件的最佳搭配组合

还有一些知名半导体厂商,则进一步集成,如ST把RF下变频器与基带处理器集成在一起推出的多功能单芯片STB2056,Motorola把LNA、RF下变频器与基带处理器集成在一起推出的模块化多功能单芯片MG4000/MG4100/MG4200。图3是由MG4200构成的卫星信号接收端框图。卫星信号接收端芯片功能集成度的逐步提高,为简化设计提供了有效的捷径。

3.4 使用集成模块构建卫星信号接收端

使用集成组件构建卫星信号接收端简捷、明了,但是如果射频电路设计经验不足,在PCB(Print Circuit Board)制板时,布局、布线不合理,往往会因噪声干扰严重引起卫星定位授时同步数据或信号的浮动,造成过大的偏差。在初次设计卫星信号接收端或射频电路设计经验不足的情况下,设计卫星信号接收端的最好途径就是使用卫星信号接收OEM(Original

Equipment Manufacturer)板或接收模块。卫星信号接收OEM板或模块是一些知名半导体设计厂商利用集成组件设计的模块化卫星信号接收端,工作稳定可靠,精确程度高,接口规范标准。OEM板如μBlox的RCBLJ、SBRLS,Conexant的Jupiter Receiver,古野的GN77等。接收模块如μBlox的TIMLP、TIMLS,Motorola的FS Oncore,Koden的GSU16,Rackwell 的TU30,TastraX的Trax02等。接收模块形体小巧,有很多是低功耗产品,特别适合便携设备的嵌入式体系设计开发。这些卫星信号接收OEM板或模块,配上适当的无源或有源天线,就可以构成性能稳定的野外型或车载式便携接收端。还有天线与接收模块集成在一起的小尺寸一体化接收模块,如μBlox的SAMLS,应用设计起来更加方便。图4是用TIMLP 构成的卫星信号接收端,即可使用随机携带的无源天线直接在野外使用,也可外插有源车载天线在行进中使用。

3.5 仅用卫星信号同步时的特殊设计

在实际应用中,使用导航卫星信号,如果仅处于异地或同地多通道数据采集与控制的精确同步目的,诸如电力系统中的故障录波、相位测量、故障判距、继电保护等,则可以不使用价格昂贵的卫星信号接收组件、OEM板或接收模块,而选用常规器件构建接收电路,结合软件对信号的识别和脉冲计数,直接得到精确的同步PPS脉冲信号。图5是这种构思的一个典型实例。

图5中整形电路实现取得最强的一个卫星信号;整形削波部分捕获导航电文的传播帧头,启动单片机中的计数器对另一路整形脉冲计数;单片机根据导航电文传播的速度特征计算并产生精确的PPS秒脉冲信号。

图3 由MG4200构成的卫星信号接收端框图

图4 由“天线+接收模块”构成的卫星信号接收端

图5 简易卫星信号秒脉冲发生原理图

图5中扩频降噪选用NE570/571,带通滤波或信号放大选用LM1450,信号整形或削波整形选用LM311,单片机选用MCS51。

4 应用设计

4.1 应用卫星信号的同步数据采集与控制

应用卫星导航信号进行精确的异地或同地的多通道工业数据的采集与控制,主要是直接使用由卫星信号接收端得到的PPS秒脉冲信号或使用再由此PPS信号得到PPM(Pulse Per Minute)、100PPS、PPH (Pulse Per Hour)脉冲信号,同步启动多通道的数据采集模数转换器ADC、数字控制数模转换器,同步打开或关闭各个通道开关;还有用于测量判断的,制作精确时间标签的,如电力系统中的故障定位、功角测量等。除需要使用同步脉冲启动判断测量外,还需要得到精确的测量时间值。这时需用高分辨率的定时器对PPS间的时间间隔进行细分,以供CPU捕获使用。为得到精确的clk(clock)时钟还要选用高频恒温晶体振荡器。这种类型的模型如图6所示。

图6 应用卫星信号的同步数据采集与控制的模型框图

图6中,CPU可选择使用可编程逻辑器件PLD、数字信号处理器DSP或单片机MCU。CPU、ADC、DAC等的速度、类型、规格等应根据实际设计系统的状况决定。

4.2 应用卫星信号进行物体定位与时钟授时

应用卫星信号进行物体定位与时钟授时的一般过程是:设计卫星信号接收端,从中取得的待测点三维位置信息(经度、纬度、海拔)和国际标准时间UTC(Universal Coordinate Time),存储,显示,通过授时通道(RS232、RS485、CAN等)向外广播时钟或通过无线通信技术GSM/CDMA向外传播该时刻物体的实际位置。

得到的定位/时钟精度分辨值:经/纬度的分单位值可达小数点后5位,海拔的米单位值可达小数点后2位,时钟的秒单位值可达小数点后2位。

应用卫星信号接收芯片组或OEM板或接收模块设计的接收端,串行外输的数据格式通常使用美国国家海洋电子协会NMEA(National Marine Electronics Association)的NMEA183标准,接收端每秒钟向外发出一个PPS秒脉冲和一串定位、时钟等信息。PPS秒脉冲与外传数据信息有严格的时间关系,扣准PPS秒脉冲时序的跳变沿读取时钟数据可以得到更精确的时钟值。使用中,需要把所得UTC时间转换成北京时间。

进行物体定位与时钟授时的模型如图7所示。

图7 应用卫星信号的物体定位与时钟授时模型框图

4.3 注意事项

(1)卫星信号的接收失步

设计体系应用于山区、极地等不开阔或易受太阳风暴等影响的地域时,应在设计中加入防止卫星信号接收失步的软硬件措施。具体做法常常是设计本地精密的PPS产生电路、实时时钟RTC电路,当从接收端取得的NMEA格式信息中识别出所传定位/时钟信息无效时,立即启用本地PPS信号、RTC时间,并根据前面正常情况下物体的位置特征推断当前物体的位置。卫星信号接收恢复正常时,转而使用卫星定位时钟同步,同时清除本地PPS发生计数器,校正RTC时钟。图8为这种典型的防失步方案。

图8 卫星信号监测失步时的同步/时钟处理

(2)系统电源管理

卫星信号定位授时同步体系,特别是嵌入式便携设备,涉及到不同的电源供给,如5 V 的液晶显示模块、3.3 V的主系统、1.8 V的CPU核,需要从1.2~4.3 V的电池得到各种供电电压。电源管理设计时,不要直接从电池电压同时变换得到1.8 V、3.3 V、5 V,而应先升压得到最大的供电电压,再逐级降压得到所需各级供电电压,否则系统不能正常工作,操作过程如图9所示。

图9 便携式卫星信号定位仪器的系统电源规划

(3)PCB制板

需要重点考虑的是卫星信号接收部分的设计。为减少干扰,获得最好的接收效果,接收天线要尽可能靠近集成芯片的接收引脚;天线接口到芯片接收脚的微带线要尽可能短,宽度要2倍于PCB板厚,走斜切线,避免锐角、直角。要有独立的电源、地层。电源、地层要靠近顶/底层,大面积铺地,PCB边缘处,电源层面积要小于地层;地层边缘要加一圈密密的过孔,顶层要有大量过孔和大面积地。尽可能使用金属罩屏蔽全部接收部分。

结语

卫星导航技术日臻完美,深入日常生产、生活的各个领域和方面。设计稳定可靠、便携低耗、成本低廉的现代卫星信号接收体系,实现精确的物体定位、时钟授时和同步数据采集控制,具有广阔的前景。

嵌入式系统原理与应用复习知识点总结

第一章 1、嵌入式系统的应用范围:军事国防、消费电子、信息家电、网络通信、工业 控制。 2、嵌入式系统定义:嵌入式系统是以应用为中心,以计算机技术为基础,软件 与硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专 用计算机系统。(嵌入式的三要素:嵌入型、专用性与计算机系统)。 3、嵌入式系统的特点:1)专用性强;2)实时约束;3)RTOS;4)高可靠性;5) 低功耗;6)专用的开发工具和开发环境;7)系统精简; 4、嵌入式系统的组成: (1)处理器:MCU、MPU、DSP、SOC; (2)外围接口及设备:存储器、通信接口、I/O 接口、输入输出设备、电源等;(3)嵌入式操作系统:windows CE、UCLinux、Vxworks、UC/OS; (4)应用软件:Bootloader 5、嵌入式系统的硬件:嵌入式微处理器(MCU、MPU、DSP、SOC),外围电路, 外部设备; 嵌入式系统的软件:无操作系统(NOSES),小型操作系统软件(SOSE)S,大型 操作系统软件(LOSES)注:ARM 处理器三大部件:ALU、控制器、寄存器。 6、嵌入式处理器特点:(1)实时多任务;(2)结构可扩展;(3)很强的存储区 保护功能;(4)低功耗; 7、DSP处理器两种工作方式:(1)经过单片机的DSP可单独构成处理器;(2) 作为协处理器,具有单片机功能和数字处理功能; 第二章 1、IP核分类:软核、固核、硬核; 2、ARM 处理器系列:(1)ARM7系列(三级流水,thumb 指令集,ARM7TDMI); (2)ARM9系列(DSP处理能力,ARM920T)(3)ARM/OE(增强DSP)(4)SecurCone 系列(提供解密安全方案);(5)StrongARM系列(Zntle 产权);(6)XScale系列(Intel 产权);(7)Cortex 系列(A:性能密集型;R:要求实时性;M:要求低 成本) 3、ARM 系列的变量后缀:(1)T:thumb 指令集;(2)D:JTAG调试器;(3)快

嵌入式系统硬件体系结构设计

一、嵌入式计算机系统体系结构 体系主要组成包括: 1. 硬件层 硬件层中包含嵌入式微处理器、存储器(SDRAM 、ROM 、Flash 等)、通用设备接口和I/O 接口(A/D 、D/A 、I/O 等)。在一片嵌入式处理器基础上添加电源电路、时钟电路和存储器电路,就构成了一个嵌入式核心控制模块。其中操作系统和应用程序都可以固化在ROM 中。 软件层功能层

2. 中间层 硬件层与软件层之间为中间层,也称为硬件抽象层(Hardware Abstract Layer,HAL)或板级支持包(Board Support Package,BSP),它将系统上层软件与底层硬件分离开来,使系统的底层驱动程序与硬件无关,上层软件开发人员无需关心底层硬件的具体情况,根据BSP 层提供的接口即可进行开发。该层一般包含相关底层硬件的初始化、数据的输入/输出操作和硬件设备的配置功能。 3. 系统软件层 系统软件层由实时多任务操作系统(Real-time Operation System,RTOS)、文件系统、图形用户接口(Graphic User Interface,GUI)、网络系统及通用组件模块组成。RTOS是嵌入式应用软件的基础和开发平台。 4. 功能层 功能层主要由实现某种或某几项任务而被开发运行于操作系统上的程序组成。 一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,而嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。 硬件的设计 本网关硬件环境以单片机S3C2440芯片和DM9000以太网控制芯片为主,

(完整版)三级嵌入式系统

三级嵌入式系统学习总结 一第一章 1.嵌入式系统概论 嵌入式系统中的软件一般都固化在只读存储器中,用户不能随意更改其中的程序功能。 嵌入式系统的逻辑组成:1)处理器2)存储器3)I/O设备与I/O接口4)数据总线5)软件 嵌入式处理芯片有四种类型:1)微处理器2)数字信号处理器3)微控制器(单片机)4)片上系统 微控制器MCU的低端产品并不会因为高端产品的出现而衰落 在32位MCU中,绝大多数使用RAM内核 EDA:电子设计自动化 IP核可以分为三种:软核、硬核、固核 2.嵌入式系统与数字媒体 计算机中常用的最广泛的西文字符及其编码是ASCII字符集和ASCII码,即美国标准信息交换码,共有128个字符,一个字符占一个字节。 我国目前广泛使用的汉字编码国家标准有GB2312和GB18030 GB2312只有6763个汉字,不够用 GB18030字符集与国际标准UCS/Unicode字符集基本兼容。GB18030采用不等长的编码方法,单字节编码表示ASCII码,双字节编码表示汉字,与GB2312保持向下兼容,四字节编码表示其他字符 Unicode最新版本是6.3。UCS/Unicode在计算机中具体实现时采用不同的编码方案,最常用的是UTF-8和UTF-16,UTF-8采用的是单字节可变长编码;UTF-16采用的是双字节可变长编码 文本的类型可以分为简单文本、丰富格式文本、超文本 图像的数据量=图像水平分辨率*图像垂直分辨率*像素深度/8(像素深度指的是每个像素用多少个二进制数来表示) 数字视频的数据量非常大,在进行传输时必须进行压缩,压缩编码标准是国际标准化组织(ISO)制定的,其名称为MPEG。 无线局域网采用的协议主要是IEEE 802.11(俗称WIFI) 3.数字通信与计算机网络 微波是一种300MHz-300GHz的电磁波 计算机网络的组成:1)计算机等智能电子设备2)数据通信链路3)通信协议4)网络软件 以太局域网: 1)发送数据设备必须把要传输的数据分成小块(帧)进行传输,一次只能传输1帧; 2)局域网中的每一个终端都有自己唯一的标识,称为物理地址或MAC地址,在发送的每一帧数据中,必须包含自己的MAC地址和接收终端的MAC地址 3)IP协议定义了主机的概念,所有主机及使用一种统一格式的地址标识,称为IP地址。4)以太局域网大多是由集线器或者交换机组网 计算机网络的类型:1)局域网2)城域网2)广域网 IP地址分为A、B、C三类。 IP是由四段数字组成,共32位,8位一段。 A类IP段0.0.0.0 到127.255.255.255 (0段和127段不使用)

(完整版)单片机知识点总结

单片机考点总结 1.单片机由CPU、存储器及各种I/O接口三部分组成。 2.单片机即单片微型计算机,又可称为微控制器和嵌入式控制器。 3.MCS-51系列单片机为8位单片机,共40个引脚,MCS-51基本类型有8031、8051 和8751. (1)I/O引脚 (2)8031、8051和8751的区别: 8031片内无程序存储器、8051片内有4KB程序存储器ROM、8751片内有4KB程序存储器EPROM。 (3)

4.MCS-51单片机共有16位地址总线,P2口作为高8位地址输出口,P0口可分时复用 为低8位地址输出口和数据口。MCS-51单片机片外可扩展存储最大容量为216=64KB,地址范围为0000H—FFFFH。(1.以P0口作为低8位地址/数据总线;2. 以P2口作为高8位地址线) 5.MCS-51片内有128字节数据存储器(RAM),21个特殊功能寄存器(SFR)。(1)MCS-51片内有128字节数据存储器(RAM),字节地址为00H—7FH; 00H—1FH: 工作寄存器区; 00H—1FH: 可位寻址区; 00H—1FH: 用户RAM区。 (2)21个特殊功能寄存器(SFR)(21页—23页);

(3)当MCS-51上电复位后,片内各寄存器的状态,见34页表2-6。 PC=0000H, DPTR=0000H, Acc=00H, PSW=00H, B=00H, SP=07H, TMOD=00H, TCON=00H, TH0=00H, TL0=00H, TH1=00H, TL1=00H, SCON=00H, P0~P3=FFH 6. 程序计数器PC:存放着下一条要执行指令在程序存储器中的地址,即当前PC值或现行值。程序计数器PC是16位寄存器,没有地址,不是SFR. 7. PC与DPTR的区别:PC和DPTR都用于提供地址,其中PC为访问程序存储器提供地址,而DPTR为访问数据存储器提供地址。 8. MCS-51内部有2个16位定时/计数器T0、T1,1个16位数据指针寄存器DPTR,其中MOVE DPTR, #data16 是唯一的16位数据传送指令,用来设置地址指针DPTR。(46页) 定时/计数器T0和T1各由2个独立的8位寄存器组成,共有4个独立寄存器:TH1、TL1、TH0、TL0,可以分别对对这4个寄存器进行字节寻址,但不能吧T0或T1当作1个16位寄存器来寻址。即:MOV T0,#data16 ;MOV T1,#data16 都是错的,MOV TH0,#data;MOV TL0,,#data是正确的。 9.程序状态字寄存器PSW(16页) (1)PSW的格式: D7 D6 D5 D4 D3 D2 D1 D0 PSW D0H (2)PSW寄存器中各位的含义; Cy:进位标志位,也可以写为C。 Ac:辅助进位标志位。

arm嵌入式系统基础教程课后答案.doc

arm 嵌入式系统基础教程课后答案【篇一:arm 嵌入式系统基础教程习题答案周立功】 /p> 1 、举出3 个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的 专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(embedded microprocessor unit, empu) 嵌入式微控制器(microcontroller unit, mcu) 嵌入式dsp 处理器(embedded digital signal processor, edsp) 嵌入式片上系统(system on chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实 时操作系统提高了系统的可靠性。其次,提高了开发效率,缩短了 开发周期。再次,嵌入式实时操作系统充分发挥了32 位cpu 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务 是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结 束项目 4 个阶段。识别需求阶段的主要任务是确认需求,分析投资 收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定 期监控进展,分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系 统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行 的初期,在客户和开发团队都还未投入大量资源之前,风险的评估

嵌入式系统最小系统硬件设计

引言 嵌入式系统是以应用为中心,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。本文主要研究了基于SEP3202(内嵌ARM7TDMI 处理器内核)的嵌入式最小系统,围绕其设计出相应的存储器、总线扩展槽、电源电路、复位电路、JTAG、UART等一系列电路模块。 嵌入式最小系统 根据IEEE的定义,嵌入式系统是:控制、监视或者辅助装置、机器和设备运行的装置。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。不过上述定义并不能充分体现出嵌入式系统的精髓,目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 嵌入式最小系统即是在尽可能减少上层应用的情况下,能够使系统运行的最小化模块配置。以ARM内核嵌入式微处理器为中心,具有完全相配接的Flash电路、SDRAM电路、JTAG电路、电源电路、晶振电路、复位信号电路和系统总线扩展等,保证嵌入式微处理器正常运行的系统,可称为嵌入式最小系统。对于一个典型的嵌入式最小系统,以ARM处理器为例,其构成模块及其各部分功能如图1所示,其中ARM微处理器、FLASH和SDRAM模块是嵌入式最小系统的核心部分。 ?微处理器——采用了SEP3203; ?电源模块——为SEP3203内核电路提供2.5V的工作电压,为部分外围芯片提供3.3V的工作电压; ?时钟模块(晶振)——通常经ARM内部锁相环进行相应的倍频,以提供系统各模块运行所需的时钟频率输入。32.768kHz给RTC和Reset模块,产生计数时钟,10MHz作为主时钟源; ?Flash存储模块——存放嵌入式操作系统、用户应用程序或者其他在系统掉电后需要保存的用户数据等; ?SDRAM模块——为系统运行提供动态存储空间,是系统代码运行的主要区域; ?JTAG模块——对芯片内部所有部件进行访问,通过该接口对系统进行调试、编程等,实现对程序代码的下载和调试; ?UART模块——用于系统与其他应用系统的短距离双向串行通信; ?复位模块——实现对系统的复位;

嵌入式知识点整理

第一章 一:嵌入式系统基础知识 第二章 一:CM3 1.Cortex-M3 是一个32 位处理器内核。内部的数据路径是32 位的,寄存器是32 位的,存储器接口也是32 位的。CM3 采用了哈佛结构,拥有独立的指令总线和数据总线。 2.程序计数寄存器 R15 :程序计数寄存器,指向当前程序地址。 3.特殊功能寄存器 (1)程序状态字寄存器组(PSRs)记录ALU 标志(0 标志,进位标志,负数标志,溢出标志),执行状态,以及当前正服务的中断号; (2)中断屏蔽寄存器组:PRIMASK 失能所有的中断、FAULTMASK 失能所有的fault、BASEPRI 失能所有优先级不高于某个具体数值的中断; (3)控制寄存器(CONTROL ),定义特权状态(见后续章节对特权的叙述),并且决定使用哪一个堆栈指针; 4.Cortex-M3 处理器支持两种处理器的操作模式,还支持两级特权

操作。 两种操作模式:(1)处理者模式(handler mode) 异常服务例程的代码—包括中断服务(2)线程模式(thread mode)普通应用程序的代码; 两级特权:特权级和用户级,提供一种存储器访问保护机制,使得普通用户程序代码不能意外地,甚至是恶意地执行涉及到要害的操作。 复位后,处理器默认进入线程模式,特权级访问; a.在 CM3 运行主应用程序时(线程模式),既可以使用特权级, 也可 以使用用户级;但是异常服务例程必须在特权级下执行; b.在特权级下,程序可以访问所有范围的存储器,并且可以执行所 有指 令,包括切换到用户级; c.从用户级到特权级的唯一途径就是异常,用户级的程序必须执行 一条系统调用指令(SVC)触发 SVC 异常,然后由异常服务例程接管,如果批准了进入,则异常服务例程修改 CONTROL 寄存器,才能在用户级的线程模式下重新进入特权级; 5.异常以及异常类型 异常:在 ARM 编程领域中,凡是打断程序顺序执行的事件,都被称为异常(exception) 。包括:外部中断、不可屏蔽中断、指令执行了“非法操作”或者访问被禁的内存区间产生的各种错误 fault。

ARM嵌入式系统基础教程复习

《嵌入式系统基础教程》复习 1.什么是嵌入式系统?其特点有些什么? 答:嵌入式系统是“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 特点:1)是专用的计算机系统,用于特定的任务; 2)资源较少,可以裁减; 3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统; 5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大 7)大部分程序固化在ROM中; 8) 较长的生命周期; 9)嵌入式微处理器通常包含专用调试电路 2.嵌入式系统的BooTLoader的功能是什么? 答:BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。(对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系统,但在系统启动时都必须运行BootLoader,为系统运行准备好软硬件环境。) 3.目前嵌入式操作系统有哪些? 答:1)μC/OS-II 嵌入式操作系统内核;2)VxWorks嵌入式实时操作系统;3)WinCE操作系统;4)Linux操作系统;5)Symbian操作系统 4.构造嵌入式开发环境有哪几种形式? 答:1)交叉开发环境;2)软件模拟环境;3)评估电路板 5.嵌入式系统开发的基本流程? 答:1)系统定义与需求分析; 2)系统设计方案的初步确立; 3)初步设计方案性价比评估与方案评审论证; 4)完善初步方案、初步方案实施; 5)软硬件集成测试; 6)系统功能性能测试及可靠性测试。 6.什么是可编程片上系统? 答:用可编程逻辑技术把整个系统放到一块硅片上,称作可编程片上系统SOPC。它是一种特殊的嵌入式系统,首先它是SOC,即由单个芯片实现整个系统的主要逻辑功能,具有一般SOC基本属性;其次,它又具备软硬件在系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的设计方式。 7.有时要使用Thumb技术的原因 答:(Thumb指令集是把32位的ARM指令集的一个子集重新编码后形成的一个特殊的16位指令集。)在性能和代码大小之间取得平衡,在需要较低的存储代码时采用Thumb指令系统用Thumb指令编写最小代码量的程序(能够很好的解决代码长度的问题),却取得以ARM代码执行的最好性能,可以带来低功耗,小体积,低成本。 8.ARM处理器的工作模式有哪几种? 答:1)正常用户模式(user); 2)快速中断模式(fiq); 3)普通中断模式(irq); 4)操作系统保护模式(svc)或管理模式; 5)数据访问中止模式(abt); 6)处理未定义指令的未定义模式(und); 7)运行特权级的操作系统任务的系统模式(sys)。 9.寄存器R13,R14,R15的专用功能各是什么? 答:1)寄存器R13保存堆栈指针SP;

孟祥莲嵌入式系统原理及应用教程部分习题答案

习题1 1. 嵌入式系统的概念的是什么?答:嵌入式系统是以应用为中心,以计算机技 术为基础,软、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。(嵌入式系统是嵌入式到对象体系中的,用于执行独立功能的专用计算机系统。) 2. 嵌入式系统的特点是什么? 答:系统内核小;专用性强;运行环境差异大;可靠性要求高;系统精简和高实时性操作系统;具有固化在非易失性存储器中的代码嵌入式系统开发和工作环境 4. 嵌入式系统的功能是什么?答:提供强大的网络服务小型化,低成本,低 功能;人性化的人机界面;完善的开发平台 5. 嵌入式系统的硬件平台由哪些部分组成?答:嵌入式系统的硬件是以嵌入式处理器为核心,由存储器I/O 单元电路,通信模块,外部设备必要的辅助接口组成的。 7. 嵌入式操作系统的主要特点是什么?答:体积小;实时性;特殊的开发调试环境。 8. 叙述嵌入式系统的分类。答:按嵌入式微处理器的位数分类可以分为4 位、 8 位、16 位、32 位和64 位等;按软件实时性需求分类可以分为非实时系统(如PDA), 软实时系统(如消费类产品)和硬实时系统(如工业实时控制系统)按嵌入式系统的复杂程度分类可以分为小型嵌入式系统,中型嵌入式系统和复杂嵌入式系统。 习题2 处理器和工作状态有哪些?

答:ARM犬态:此时处理器执行32位的的字对齐的ARS旨令。 Thumb犬态:此时处理器执行16位的,半字对齐的Thumb旨令 2.叙述ARM9内部寄存器结构,并分别说明R13 R14 R15寄存器的 作用。 答:共有37个内部寄存器,被分为若干个组(BANK,这些寄存器包括31个通用寄存器,包括程序计数器(PC指针)6个状态寄存器。R13用作堆栈指针,R14称为子程序链接寄存器,R15用作程序计数器。处理器的工作模式有哪些? 答:用户模式:ARM处理器正常的程序执行状态。 快速中断模式:用于高速数据传输或通道处理 外部中断模式:用于通用中断处理管理模式:操作系统使用的保护模式数据访问终止模式:当数据或指令预期终止时进入该模式,可用于虚拟存储器及存储保护 系统模式:运行具有特权的操作系统任务 未定义指令终止模式:当未定义的指令执行时进入该模式,可用 于支持硬件协处理器的软件仿真。 微处理器支持的数据类型有哪些? 答:ARM微处理器中支持字节(8位)、半字(16位),字(32 位)

(完整版)通用PC系统与嵌入式系统的区别.doc

通用 PC系统与嵌入式系统的区别.txt精神失常的疯子不可怕,可怕的是精神正常的疯子! 一什么是嵌入式系统 嵌入式系统一般指非 pc 系统,有计算机功能但又不称之为计算机的设备或器材。它是以应用 为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格 要求的专用计算机系统。简单地说,嵌入式系统集系统的应用软件与硬件于一体,类似于pc 中 bios 的工作方式,具有软件代码小、高度自动化、响应速度快等特点,特别适合于要 求实时和多任务的体系。嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统 及应用软件系统等组成,它是可独立工作的“器件”。 嵌入式系统几乎包括了生活中的所有电器设备,如掌上pda、移动计算设备、电视机顶盒、 手机上网、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化系统、电梯、空调、安 全系统、自动售货机、蜂窝式电话、消费电子设备、工业自动化仪表与医疗仪器等。 嵌入式系统的硬件部分,包括处理器 / 微处理器、存储器及外设器件和 i/o 端口、图形控制器等。嵌 入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而 大多使用eprom、eeprom 或闪存 (flash memory)作为存储介质。软件部分包括操作系统软件 ( 要求实时和多任务操作 ) 和应用程序编程。应用程序控制着系统的运作和行为;而操作系统控制 着应用程序编程与硬件的交互作用。 二嵌入式处理器 嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般具备 4 个特点: (1) 对实时和多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时 操作系统的执行时间减少到最低限度;(2) 具有功能很强的存储区保护功能,这是由于嵌入 式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强 大的存储区保护功能,同时也有利于软件诊断;(3) 可扩展的处理器结构,以能迅速地扩展 出满足应用的高性能的嵌入式微处理器;(4) 嵌入式微处理器的功耗必须很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,功耗只能为mw 甚至μ w 级。 据不完全统计,目前全世界嵌入式处理器的品种总量已经超过1000 种,流行的体系结构有 30 多个系列。其中 8051 体系占多半,生产这种单片机的半导体厂家有20 多个,共 350 多种衍生产品,仅 philips 就有近 100 种。现在几乎每个半导体制造商都生产嵌入式处理器,越来越多的公司有自己的处理器设计部门。嵌入式处理器的寻址空间一般从64kb 到 16mb,处理速度为 0.1~2000mips ,常用封装 8~144 个引脚。 根据现状,嵌入式计算机可分成下面几类: (1) 嵌入式微处理器(embedded microprocessor unit, empu) 嵌入式微处理器采用“增强型”通用微处理器。由于嵌入式系统通常应用于环境比较恶劣的 环境中,因而嵌入式微处理器在工作温度、电磁兼容性以及可靠性方面的要求较通用的标准 微处理器高。但是,嵌入式微处理器在功能方面与标准的微处理器基本上是一样的。根据实

(完整word版)计算机三级嵌入式知识点(2),推荐文档

计算机三级嵌入式考试知识点整理 (计算机三级嵌入式考试只考选择题和填空题) 1.嵌入式系统的设计的三个阶段之一:1. 设计 2.实现 3.测试 2.RISC架构的ARM微处理器的一般特点:1. 体积小、低功耗 2.大量使用寄 存器3. 寻址方式灵活简 3.通常所讲的交叉编译就是在X86架构的宿主机上生成适用于ARM架构的格式 (elf)的可执行代码 4.Boot Loader阶段1所完成的步骤的是:1. 硬件设备初始化 2. 拷贝 Boot Loader的阶段2到RAM空间中3. 设置堆栈 5.ARM的7种运行状态之一:1. 快中断状态2. 中断状态3. 无定义状态4.管 理状态5.快速中断状态6.系统状态7.用户状态 6.命令可以把server的/tmp mount到client的/mnt/tmp并且是: mount-o ro server:/tmp/mnt/tmp 7.哪个GUI是由中国人主持的一个自由软件项目:MinuGUI 8.嵌入式图形用户接口(GUI)的主要特点:1. 运行时占用的系统资源少 2.模 块化结构,便于移植和定制3.可靠性高 9.RISC指令系统特点的是:1. 指令长度固定,指令种类少2.设置大量通用 寄存,访问存储器指令简单3. 选取使用频率较高的一些简单指令 10.通常所说的32位微处理器是指CPU字长为32位 11.在嵌入式软件交叉调试过程中,宿主机与目标机之间的连接与通信方式有:1. 串口2.并口3.网络4.JTAG 12.ADD R0,R1,[R2]属于寄存器间接寻址 13.ADD R0,R0,#1属于立即寻址 14.数据字越长则精度越高 15.典型的计算机系统结构是冯诺依曼体系结构 16.将传统的计算机系统芯片化,是嵌入式系统诞生后的∑发展模式发展模式 17.RISC指令系统特点的是:1. 大量使用寄存器2.采用固定长度指令格式3. 使用单周期指令4.寻址方式多 18.与通用操作系统相比嵌入式操作系统还必须具有的特点是:1. 强稳定性, 弱交互性2. 较强实时性 19.嵌入式系统产品:1. PDA 2.ATM机 3. 机顶盒 20.开源的嵌入式操作系统的是嵌入式linux 21.虚拟文件系统的是vfs 22.嵌入式系统通常执行特定功能 23.在嵌入式产品需求分析阶段完成的任务是操作系统和硬件选型 24.ARM处理器异常工作模式的是1. 快速中断模式2. 未定义模式 3. 数据访问 终止模式 25..嵌入式软件开发与通用软件开发增加了代码固化环节 26.嵌入式系统调试方式中不占用系统资源的调试方式是ICE在线仿真器 27.ARM汇编程序中实现程序跳转的方式使用跳转指令 28.ADD R0,R1,[R2]中的第二操作数属于寄存器间接寻址方式 29.烧写到FLASH里的是.bin格式的文件 二、填空题 1.ARM内核有(T)(D)(M)(I)四个功能模块。

嵌入式系统基础知识总结

必读:嵌入式系统基础知识总结 2016-07-22电子发烧友网 本文主要介绍嵌入式系统的一些基础知识,希望对各位有帮助。 嵌入式系统基础 1、嵌入式系统的定义 (1)定义:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 (2)嵌入式系统发展的4个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向Internet阶段。 (3)知识产权核(IP核):具有知识产权的、功能具体、接口规范、可在多个集成电路设计中重复使用的功能模块,是实现系统芯片(SOC)的基本构件。(4)IP核模块有行为、结构和物理3级不同程度的设计,对应描述功能行为的不同可以分为三类:软核、固核、硬核。 2、嵌入式系统的组成 包含:硬件层、中间层、系统软件层和应用软件层 (1)硬件层:嵌入式微处理器、存储器、通用设备接口和I/O接口。 嵌入式核心模块=微处理器+电源电路+时钟电路+存储器

Cache:位于主存和嵌入式微处理器内核之间,存放的是最近一段时间微处理器使用最多的程序代码和数据。它的主要目标是减小存储器给微处理器内核造成的存储器访问瓶颈,使处理速度更快。 (2)中间层(也称为硬件抽象层HAL或者板级支持包BSP). 它将系统上层软件和底层硬件分离开来,使系统上层软件开发人员无需关系底层硬件的具体情况,根据BSP层提供的接口开发即可。 BSP有两个特点:硬件相关性和操作系统相关性。 设计一个完整的BSP需要完成两部分工作: A、嵌入式系统的硬件初始化和BSP功能。 片级初始化:纯硬件的初始化过程,把嵌入式微处理器从上电的默认状态逐步设置成系统所要求的工作状态。 板级初始化:包含软硬件两部分在内的初始化过程,为随后的系统初始化和应用程序建立硬件和软件的运行环境。 系统级初始化:以软件为主的初始化过程,进行操作系统的初始化。 B、设计硬件相关的设备驱动。 (3)系统软件层:由RTOS、文件系统、GUI、网络系统及通用组件模块组成。RTOS是嵌入式应用软件的基础和开发平台。 (4)应用软件:由基于实时系统开发的应用程序组成。

嵌入式系统原理与设计知识点整理

第一章嵌入式处理器 1嵌入式系统的概念组成: 定义:以应用为主,以计算机技术为基础,软硬件可裁剪,满足系统对功能、性能、可靠性、体积和功耗有严格要求的计算机系统。 组成:硬件:处理器、存储器、I / O设备、传感器 软件:①系统软件, ②应用软件。 2.嵌入式处理器分类特点: 分类:①MPU(Micro Processor Unit)微处理器。一块芯片,没有集成外设接口。部主要由运算器,控制器,寄存器组成。 ②MCU(Micro Controller Unit)微控制器(单片机)。一块芯片集成整个计算机系统。 ③EDSP(Embled Digital Signal Processor)数字信号处理器。运算速度快,擅长于大量重复数据处理 ④SOC(System On Chip)偏上系统。一块芯片,部集成了MPU和某一应用常用的功能模块 3.嵌入式处理器与通用计算机处理器的区别: ①嵌入式处理器种类繁多,功能多样 ②嵌入式处理器能力相对较弱,功耗低 ③嵌入式系统提供灵活的地址空间寻址能力 ④嵌入式系统集成了外设接口 4.①哈佛体系结构:指令和数据分开存储————————(嵌入式存储结构) 特征:在同一机器周期指令和数据同时传输 ②·诺依曼体系结构:指令和数据共用一个存储器——(通用式存数结构) 数据存储结构(多字节): 大端方式:低地址存高位;小端方式:高地址存高位 6.ARM指令集命名:V1~V8 (ARMV表示的是指令集)

7.ARM核命名:. 命名规则:ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{S}{x}——系列(版本) {y}——当数值为“2”时,表示MMU(存管理单元) {z}——当数值为“0”时,表示缓存Cache {T}——支持16位Thumb指令集 {D}——支持片上Debug(调试) {M}——嵌硬件乘法器 {I}——嵌ICE(在线仿真器)——支持片上断点及调试点 {E}——支持DSP指令 {J}——支持Jazzle技术 {F}——支持硬件浮点 {S}——可综合版本 8. JTAG调试接口的概念及作用: ①概念:(Joint Test Action Group)联合测试行动小组→检测PCB和IC芯片标准。(P CB→印刷电路板IC→集成芯片) ②作用(1)硬件基本功能测试读写 (2)软件下载:将运行代码下载到目标机RAM中 (3)软件调试:设置断点和调试点 (4)FLASH烧写:将运行最终代码烧写到FLASH存储器中。 9.GPIO概念:(General Purpose I/O Ports)通用输入/输出接口,即处理器引脚。 10.S3C2410/S3C2440 GPIO引脚 S3C2410共有117个引脚,可分成A——H共8个组,(GPA,GPB,…GPH组) S3C2440共有130个引脚,可分成A——J共9个组,(GPA,GPB,…,GPH,GPJ 组) 11.GPxCON寄存器,GPxDAT寄存器,GpxUP寄存器的功能,各位含义和用法 ①GPxCON寄存器(控制寄存器)——设置引脚功能 →GPACON(A组有23根引脚,一位对应一个引脚,共32位,拿出0~22位,其余没用) (若某一位是)0:(代表该位的引脚是一个)输出引脚 1:地址引脚 →GPBCON——GPH/JCON(用法一致,两位设置一个引脚) 00:输入引脚 01:输出引脚 10:特殊引脚 11:保留不用 GPBCON ②GPxDAT寄存器(数据寄存器)——设置引脚状态及读取引脚状态 若某一位对应的是输出引脚,写此寄存器相应位可令引脚输出高/低电平。 若某一位对应的是输入引脚,读取此寄存器可知相应引脚电平状态。GPBDAT

周立功-ARM嵌入式系统基础教程课后习题答案11

第一章 思考与练习 1、举出3个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系 统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(Embedded Microprocessor Unit, EMPU) 嵌入式微控制器(Microcontroller Unit, MCU) 嵌入式DSP 处理器(Embedded Digital Signal Processor, EDSP) 嵌入式片上系统(System On Chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实时操作系统提高了系统的可靠性。 其次,提高了开发效率,缩短了开发周期。再次,嵌入式实时操作系统充分发挥了32 位CPU 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结束项目4 个阶段。 识别需求阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定期监控进展, 分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行的初期,在客户和开发团队都还未投入大量资源之前,风险的评估可以用来预估项目进行可能会遭遇的难题。 需求风险;时间风险;资金风险;项目管理风险 3、何谓系统规范?制定系统规范的目的是什么? 规格制定阶段的目的在于将客户的需求,由模糊的描述,转换成有意义的量化数据。 4、何谓系统规划?为何要做系统规划 系统规划就是拟定一个开发进程,使项目在合理的进程范围中逐渐建构完成。其目地是让客户可以进一步地掌握系统开发的进程,并确定检查点,以让双方确定项目是否如预期中的进度完成。 5、为什么在项目结束前需要进行项目讨论? 项目的讨论一个项目进行的反馈机制。通过这一个程序,项目团队的经验才可以被记录 下来,也就是说,这是一个撰写项目历史的过程。 第三章 1、ARM7TDMI中的T、D、M、I的含义是什么? 64 位乘法指令(带M 后缀的)、支持片上调试(带D 后缀的)、高密度16 位的Thumb 指令机扩展(带T 后缀的)和EmbededICE 观察点硬件(带I 后缀的) 2、ARM7TDMI采用几级流水线?使用何种存储器编址方式? 三级流水线(取指译码执行);使用了冯·诺依曼(V on Neumann )结构,指令和数据共用一条 32 位总线。 3、ARM处理器模式和ARM处理器状态有何区别? 处理器模式指的是处理器在执行程序时在不同时刻所处的不同状态,处理器状态指的是处理器当前所执行的指令集。 4、分别列举ARM的处理器模式和状态。 状态: ARM 状态32 位,这种状态下执行的是字方式的ARM 指令

(完整版)单片机原理及应用期末考试必考知识点重点总结

单片机概述: 单片机是微单片微型计算机的简称,微型计算机的一种。 它把中央处理器(CPU),随机存储器(RAM),只读存储器(ROM),定时器\计数器以及I\O 接口,串并通信等接口电路的功能集成与一块电路芯片的微型计算机。 字长:在计算机中有一组二进制编码表示一个信息,这组编码称为计算机的字,组成字的位数称为“字长”,字长标志着精度,MCS-51是8位的微型计算机。 89c51 是8位(字长)单片机(51系列为8位) 单片机硬件系统仍然依照体系结构:包括CPU(进行运算、控制)、RAM(数据存储器)、ROM(程序存储器)、输入设备和输出设备、内部总线等。 由于一块尺寸有限的电路芯片实现多种功能,所以制作上要求单片机的高性能,结构简单,工作可靠稳定。 单片机软件系统包括监控程序,中断、控制、初始化等用户程序。 一般编程语言有汇编语言和C语言,都是通过编译以后得到机器语言(二进制代码)。 1.1单片机的半导体工艺 一种是HMOS工艺,高密度短沟道MOS工艺具有高速度、高密度的特点; 另一种是CHMOS工艺,互补金属氧化物的HMOS工艺,它兼有HMOS工艺的特点还具有CMOS的低功耗的特点。例如:8051的功耗是630mW,80C51的功耗只有110mW左右。1.2开发步5骤: 1.设计单片机系统的电路 2.利用软件开发工具(如:Keil c51)编辑程序,通过编译得到.hex的机器语言。 3.利用单片机仿真系统(例如:Protus)对单片机最小系统以及设计的外围电路,进行模拟的硬软件联合调试。 4.借助单片机开发工具软件(如:STC_ISP下载软件)读写设备将仿真中调试好的.hex程序拷到单片机的程序存储器里面。 5.根据设计实物搭建单片机系统。 2.1MCS-51单片机的组成:(有两个定时器) CPU(进行运算、控制)、RAM(数据存储器)、ROM(程序存储器)、I/O口(串口、并口)、内部总线和中断系统等。 工作过程框图如下: 运算器 组成:8位算术逻辑运算单元ALU(Arithmetic Logic Unit)、8位累加器A(Accumulator)、8位寄存器B、程序状态字寄存器PSW(Program Status Word)、8位暂存寄存器TMP1和TMP2等。 功能:完成算术运算和逻辑运算

《ARM嵌入式系统基础教程》试题及答案

《ARM嵌入式系统基础教程》试题及答案 一、选择题 1、以下说法不正确的是(B )。 A、任务可以有类型说明 B、任务可以返回一个数值 C、任务可以有形参变量 D、任务是一个无限循环 2下列描述不属于RISC计算机的特点的是(C)。 A.流水线每周期前进一步。B.更多通用寄存器。 C.指令长度不固定,执行需要多个周期。 D.独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。 3 存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容 为(D)。 A、0x21 B、0x68 C、0x65 D、0x02 4 μCOS-II中对关键代码段由于希望在执行的过程中不被中断干扰,通常采用关中断的方式,以下X86汇编代码正确而且不会改变关中断之前的中断开关状态的是(D) A.先CLI、执行关键代码、再STI B. 先STI、执行关键代码、再CLI C. 先POPF、CLI、执行关键代码、再PUSHF D. 先PUSHF、CLI、执行关键代码、再POPF。 5 RS232-C串口通信中,表示逻辑1的电平是(D )。 A、0v B、3.3v C、+5v~+15v D、-5v~-15v 6 ARM汇编语句“ADD R0, R2, R3, LSL#1”的作用是(A)。 A.R0 = R2 + (R3 << 1) B. R0 =( R2<< 1) + R3 C. R3= R0+ (R2 << 1) D. (R3 << 1)= R0+ R2 7 IRQ中断的入口地址是(C)。FIQ的入口地址为0x0000001C A、0x00000000 B、0x00000008 C、0x00000018 D、0x00000014 8 S3C2420X I/O口常用的控制器是(D)。 A.端口控制寄存器(GPACON-GPHCON)。 B.端口数据寄存器(GPADAT-GPHDA T)。 C.外部中断控制寄存器(EXTINTN)。 D.以上都是。 9 实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来信息,或建立某个条件后再向前执行,这种制约性合作关系被成为(A)。 A. 同步 B. 互斥 C. 调度 D. 执行 10 和PC系统机相比嵌入式系统不具备以下哪个特点(C)。 A、系统内核小 B、专用性强 C、可执行多任务 D、系统精简 11 、ADD R0,R1,#3属于(A)寻址方式。 A. 立即寻址 B. 多寄存器寻址 C. 寄存器直接寻址 D. 相对寻址 12、GET伪指令的含义是(A) A. 包含一个外部文件 B. 定义程序的入口 C. 定义一个宏 D. 声明一个变量 13、存储一个32位数0x876165到2000H~2003H四个字节单元中,若以小端模式存 储,则2000H存储单元的内容为(C)。 A、0x00 B、0x87 C、0x65 D、0x61 14、μCOS-II操作系统不属于(C)。 A、RTOS B、占先式实时操作系统 C、非占先式实时操作系统 D、嵌入式实时操作系统 15、若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDR R0,[R1,#8]!后R0的值为(D )。 A. 0x2000 B. 0x86 C. 0x2008 D. 0x39 16、寄存器R13除了可以做通用寄存器外,还可以做(C )。 A、程序计数器 B、链接寄存器 C、栈指针寄存器 D、基址寄存器 17、FIQ中断的入口地址是(A)。

ARM嵌入式系统基础教程第二版课后习题答案

第1章嵌入式系统概述 (1)举出3个本书中未提到的嵌入式系统的例子。 答:键盘、鼠标、扫描仪。 (2)什么叫嵌入式系统? 答:嵌入到对象体系中的专用计算机应用系统。 (3)什么叫嵌入式处理器?嵌入式处理器分为哪几类? 答:嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。分为3类:1.注重尺寸、能耗和价格;2.关注性能;3.关注全部4个需求——性能、尺寸、能耗和价格。 (4)什么是嵌入式操作系统?为何要使用嵌入式操作系统? 答:嵌入式操作系统是操作系统的一种类型,是在传统操作系统的基础上加入符合嵌入式系统要求的元素发展而来的。原因:1.提高了系统的可靠性;2.提高了开发效率,缩短了开发周期。3.充分发挥了32位CPU的多任务潜力。 第2章ARM7体系结构 1.基础知识 (1)ARM7TDMI中的T、D、M、I的含义是什么? 答:T:高密度16位Thumb指令集扩展;D:支持片上调试;M:64位乘法指令;I:Embedded ICE硬件仿真功能模块。 (2)ARM7TDMI采用几级流水线?使用何种存储器编址方式? 答:3级;冯·诺依曼结构。 (3)ARM处理器模式和ARM处理器状态有何区别? 答:ARM处理器模式体现在不同寄存器的使用上;ARM处理器状态体现在不同指令的使用上。 (4)分别列举ARM的处理器模式和状态? 答:ARM的处理器模式:用户模式、系统模式、管理模式、中止模式、未定义模式、中断模式、快速模式;ARM的处理器状态:ARM状态、Thumb状态。 (5)PC和LR分别使用哪个寄存器? 答:PC:R15;LR:R14。 (6)R13寄存器的通用功能是什么? 答:堆栈指针SP。 (7)CPSR寄存器中哪些位用来定义处理器状态?

相关文档
相关文档 最新文档