嵌入式软件技术概论复习资料全

嵌入式软件技术概论复习资料全
嵌入式软件技术概论复习资料全

1.根据嵌入方式划分嵌入式系统类型不包括

A.整机嵌入式 B.部件式嵌入式 C.组件式嵌入式 D.芯片式嵌入式

2.对性能要求高的嵌入式系统是

A.嵌入式实时系统

B.嵌入式多线程系统

C.嵌入式多核系统

D.嵌入式轮转询问系统

3.不影响任务响应时间的因素为

A.操作系统调度算法

B.系统调用执行时间

C.中断延迟时间

D.任务上下文切换时间

4.单块结构嵌入式操作系统优点

A.模块化程度高

B.结构清晰

C.易于调试

D.规模较小时比较灵活

5.适用于数据交换的任务通信机制为

A.事件

B.管道

C.信号量

D.信号

6.下列不属于闪存类型的为

A.NOR

B.NAND

C.EPROM

D.AND

7.不适用于嵌入式系统的文件系统为

A.CRAMFS

B.TmpFS

C.HFS

D.ROMFS

8.属于日志型的文件系统为

A.DOSFS

B.JFFS2

C.TSFS

D.RAMFS

9.中断响应阶段要做的工作为

A.对中断进行具体处理

B.禁止可屏蔽中断和单步异常

C.执行中断返回指令

D.获取与中断相关的其他信息

10.在电源管理睡眠模式中下列描述正确的为

A.存处于工作状态

B.外设处于工作状态

C.CPU处于工作状态

D.系统时钟处于活动状态

11.用于智能手机的嵌入式操作系统为

A.Symbian

B.OSEKturbo

C.MANTIS

D.VxWorks

12.串行接口最大传输距离为

A.10m

B.15m

C.20m

D.25m

13.同步服务器级接口函数错误的为

A.SYNCOpen

B. SYNCGetPara

C. SYNCClose

D. SYNCData

14.下列属于嵌入式窗口系统核心层任务的是

A.接收键盘扫描码

B.建立新窗口

C.输出基本图元

D.将部码转换为字符编码

15.Form是J2ME里面比较重要的容器类型,它必须配合Item类来使用,不属于Item类的

子类的是

A.TextField

B.StringItem

C.ChoiceGroup

D.TextBox

16.根据嵌入程度划分嵌入式系统类型不包括

A.深度嵌入式 B.中度嵌入式 C.组件式嵌入式 D.浅度嵌入式17.嵌入式系统的软件部分不包括

A.DSP B.嵌入式操作系统 C.设备驱动程序 D.应用程序

18.不影响任务响应时间的因素为

A.中断处理时间 B.系统调用执行时间

C.中断延迟时间 D.任务上下文切换时间

19.层次结构嵌入式操作系统优点

A.模块化程度高

B.结构清晰

C.易于调试

D.规模较小时比较灵活

20.适用于数据交换的任务通信机制为

A.事件

B.信号

C.信号量

D.

21.下列不属于闪存类型的为

A.NOR

B.OTPROM

C.DiNOR

D.AND

22.不适用于嵌入式系统的文件系统为

A.CRAMFS

B.CDFS

C.YAFFS

D.ROMFS

23.属于日志型的文件系统为

A.DOSFS

B.CRAMFS

C.Ext3

D.RAMFS

24.中断响应阶段要做的工作为

A.对中断进行具体处理

B.保存关键寄存器容

C.执行中断返回指令

D.获取与中断相关的其他信息

25.在电源管理S1模式中下列描述错误的是

A.CPU关闭

B.存处于工作状态

C.总线时钟处于工作状态

D.硬盘带电

26.用于汽车电子的嵌入式操作系统为

A.Coniki

B.OSEKturbo

C.MANTIS

D.Android

27.RS-422接口最大传输距离为

A.1100m

B.1300m

C.1200m

D.900m

28.同步服务器级接口函数错误的为

A.SYNCOpen

B.SYNCGetPara

C.SYNCParam

D.SYNCGo

29.下列属于嵌入式窗口系统核心层任务的是

A.实现窗口隐藏操作

B.建立新窗口

C.追踪指针设备移动

D.将部码转换为字符编码

30.属于能够操纵List列表类中元素的方法是

A.append

B.delete

C.insert

D.以上均是

31.根据嵌入复杂程度划分嵌入式系统类型不包括

A.单微处理器嵌入式B.中度嵌入式 C.组件式嵌入式 D.分布式嵌入式

32.嵌入式系统硬件的核心是

A.存储器

B.嵌入式微处理器

C.嵌入式微控制器

D.BSP

33.不影响任务响应时间的因素为

A.中断处理时间 B.系统调用执行时间

C.中断延迟时间 D.系统禁止调度时间

34.层次结构嵌入式操作系统优点

A.模块化程度高

B.结构清晰

C.易于调试

D.规模较小时比较灵活

35.可实现一个任务与多个任务之间同步的机制是

A.事件

B.管道

C.共享存

D.

36.下列不属于闪存类型的为

A.EEPROM

B.NOR

C.DiNOR

D.AND

37.不适用于嵌入式系统的文件系统为

A.NTFS

B.DOSFS

C.YAFFS

D.ROMFS

38.属于日志型的文件系统为

A.DOSFS

B.CRAMFS

C.Ext4

D.RAMFS

39.中断响应阶段要做的工作为

A.复位引起中断的请求信号

B.保存CPU上下文

C.执行中断返回指令

D.获取与中断相关的其他信息

40.在电源管理S2模式中下列描述错误的是

A.CPU关闭

B.存处于工作状态

C.总线时钟关闭

D.硬盘带电

41.用于汽车电子的嵌入式操作系统为

A.Coniki

B.proOSEK

C.MANTIS

D.PalmOS

42.RS-485接口最大传输距离为

A.1100m

B.1300m

C.1200m

D.900m

43.SQL操作级接口函数错误的为

A.SQLGetData

B.SQLPrepare

C.SQLText

D.SQLColCount

44.下列属于嵌入式窗口系统核心层任务的是

A.接收键盘扫描码

B.建立新窗口

C.建立新字体

D.颜色处理

45.CLDC要求的可变存数量为

A.至少320K

B.至少160K

C.至少258K

D.至少32K

46.中断延迟时间不受哪种时间因素影响

A.中断响应时间 B.处理高优先级中断的时间

C.硬件开始处理中断到第一条指令之间的时间

D.最大关中断时间

47.以下哪一项属于嵌入式系统不具备的特点

A.采用专用处理器

B. 跨平台可移植

C.软硬件协同一体化

D.小型化与有限资源

48.不影响任务响应时间的因素为

A.任务上下文切换时间 B.系统调用执行时间

C.中断延迟时间 D.系统禁止调度时间

49.微核结构嵌入式操作系统优点

A.模块化程度高

B.系统效率高

C.系统安全性高

D.规模较小时比较灵活

50.可实现一个任务与多个任务之间同步的机制是

A.事件

B.管道

C.共享存

D.

51.下列不属于闪存类型的为

A.PROM

B.NOR

C.DiNOR

D.AND

52.不适用于嵌入式系统的文件系统为

A.JFFS

B.DOS

C.YAFFS

D.ROMFS

53.属于日志型的文件系统为

A.DOSFS

B.CRAMFS

C.Ext2

D.YAFFS

54.中断处理阶段要做的工作为

A.复位引起中断的请求信号

B.保存CPU上下文

C.保存关键寄存器容

D.禁止可屏蔽中断和单步异常

55.在电源管理S3模式中下列描述错误的是

A.CPU关闭

B.存处于工作状态

C.总线时钟关闭

D.硬盘处于工作状态

56.用于汽车电子的嵌入式操作系统为

A.Coniki

B.Zyco

C.OSEKworks

D.PalmOS

57.PCI总线最接外部设备数为

A.64

B.128

C.256

D.512

58.SQL操作级接口函数错误的为

A.SQLHandle

B.SQLPrepare

C.SQLFetch

D.SQLColCount

59.下列属于嵌入式窗口系统核心层任务的是

A.发送与键盘相关的事件

B.设置窗口属性

C.建立新字体

D.获得窗口设备描述表

60.键盘事件处理方法中,以下哪个方法是用来处理键盘按键的长时间按住事件的

A.keyPressed(int keyCode)

B.keyReleased(int keyCode)

C.keyRepeated(int keyCode)

D.pointerPressed(int x, int y)

61.嵌入式操作系统设计者可以进行优化的时间为

A.保存上下文时间 B. 处理高优先级中断的时间

C.硬件开始处理中断到第一条指令之间的时间

D.最大关中断时间

62.对响应时间有严格要求的嵌入式系统是

A.嵌入式实时系统

B.嵌入式多线程系统

C.嵌入式多核系统

D.嵌入式轮转询问系统

63.不影响任务响应时间的因素为

A.任务上下文切换时间 B.中断响应时间

C.中断延迟时间 D.系统禁止调度时间

64.核外服务包括

A.存管理

B.任务管理

C.电源管理

D.中断管理

65.协作任务之间的关系不包括

A.互斥

B.并发

C.同步

D.数据交换

66.下列不属于闪存类型的为

A.PROM

B.NOR

C.DiNOR

D.NAND

67.NAND型闪存以块为单位,一般包含的字节为

A.128

B.1024

C.512

D.64

68.属于日志型的文件系统为

A.DOSFS

B.CRAMFS

C.Ext2

D.JFS

69.中断处理阶段要做的工作为

A.复位引起中断的请求信号

B.禁止可屏蔽中断和单步异常

C.保存关键寄存器容

D.恢复CPU上下文

70.在电源管理S4模式中下列描述错误的是

A.CPU关闭

B.存停止供电

C.总线时钟关闭

D.硬盘处于工作状态

71.用于微传感器上的嵌入式操作系统为

A.Hopen

B.3SOFT

C.SenSpire

D.PalmOS

72.ISA总线数据传输速度为

A.4Mb/s

B.8 Mb/s

C.16 Mb/s

D.32 Mb/s

73.数据库级接口函数错误的为

A.DBPathName

B.DBClose

C.DBDrop

D.DBOpen

74.下列对嵌入式窗口系统的特点有误的描述为

A.功能精简

B.操作系统相对独立

C.窗口功能丰富

D.对“笔”有专门支持

75.在触摸屏事件处理方法中,哪个方法是用来处理触目屏幕的拖拽事件的方法

A.pointerPressed(int x,int y)

B.pointerReleased(int x,int y)

C.pointerDragged(int x,int y)

D.pointerRepeated(int x,int y)

76.中断响应时间不包括

A.中断延迟时间 B. 保存任务上下文时间

C.执行中断服务程序入口函数时间

D.最大关中断时间

77.以下关于嵌入式系统说确的是

A.嵌入的系统中可以共存多个嵌入式系统

B.对高性能要求严格

C.软硬件缺乏协同

D.不要时性

78.不影响任务响应时间的因素为

A.任务上下文切换时间 B.最大关中断时间

C.中断延迟时间 D.系统禁止调度时间

79.核外服务包括

A.存管理

B.文件管理

C.任务通信

D.中断管理

80.协作任务之间的关系不包括

A.互斥

B.并发

C.同步

D.数据交换

81.下列不属于闪存类型的为

A.EPROM

B.NOR

C.DiNOR

D.NAND

82.NAND型闪存以块为单位,一般包含的字节为

A.128

B.512

C.1024

D.64

83.属于日志型的文件系统为

A.DOSFS

B.CRAMFS

C.Ext2

D.Ext3

84.设计实时嵌入式操作系统核的临界区代码时遵循的原则不正确的是

A.代码尽可能短小

B.避免函数调用的嵌套层次过深

C.将耗时操作放在临界区之外

D.退出临界区后暂缓打开中断

85.在电源管理S5模式中下列描述错误的是

A.CPU关闭

B.存停止供电

C.总线时钟关闭

D.硬盘带电

86.用于微传感器上的嵌入式操作系统为

A.DeltaOS

B.SOS

C.OSEKworks

D.PalmOS

87.IrDA传输距离不能超过

A.10m

B.8m

C.4m

D.1m

88.数据库级接口函数错误的为

A.DBCreate

B.DBHandle

C.DBDrop

D.DBOpen

89.窗口管理函数功能不能实现

A.获得指定窗口属性

B.设置指定窗口属性

C.改变子窗口大小

D.获得指定窗口的父窗口

90.在Java语言中哪一个选项是用来设置可以获取一个字体字型的外观为粗体

A.Font.FACE_SYSTEM

B.Font.STYLE_BOLD

C.Font.STYLE_ITALIC

D.Font.SIZE_LARG

91.中断响应时间不受哪种时间因素影响

A.处理高优先级中断时间 B. 恢复任务上下文时间

C.执行中断服务程序入口函数时间

D.最大关中断时间

92.以下关于嵌入式系统说确的是

A.以开发为中心 B 对实时,成本,功耗要求严格

C.软硬件协同 D 软件可剪裁

93.不影响任务响应时间的因素为

A.任务上下文切换时间 B.系统调用执行时间

C.中断延迟时间 D.系统禁止调度时间

94.操作系统核包括

A.存管理

B.文件管理

C.看门狗

D.窗口管理

95.适用于实时嵌入式操作系统任务调度算法为

A.FCFS

B.HPF

C.SJF

D.RR

96.下列不属于闪存类型的为

A.OTPROM

B.AND

C.DiNOR

D.NAND

97.闪存写入次数一般为

A.10万至120万次

B.10万至80万次

C.1万至100万次

D.100万至200万次

98.属于日志型的文件系统为

嵌入式系统概论_第七章

四系统行为描述(计算)模型

计算模型(Computation Model) 概述 时序程序模型 有限状态机(FSM) 并发进程模型 数据流模型 流程图 小结

计算模型-概述(1) 计算模型(computation Model)描述系统的处理行为(过程)的方法 模型作用 帮助设计者理解和描述系统行为 减少系统缺陷(bug) Most system bugs come from mistakes made describing the desired behavior rather than from mistakes in implementing that behavior.

计算模型-概述(2) 描述嵌入式系统的模型 时序程序模型(sequential program model) 提供一组语句、语句排列的规则 说明语句如何以一次一条的方式执行 表现为程序伪码 状态机模型(State machine model) 提供系统状态及状态之间转换的条件和方式 常用于以控制为主的系统 主要行为包括监视控制输入、设置控制输出来相 应

计算模型-概述(3) 描述嵌入式系统的模型(续) 并发进程模型(parallel process model) 描述多个进程执行的时序,以及进程之间的通讯过程。 适用于多进程系统 数据流(dataflow model) 描述过程中数据流动的路径 常用于以数据为主的系统 主要行为将输入数据流转换为输出数据流 面向对象模型(Object-oriented model) 将复杂的软件分为简单而确定的片断

嵌入式软件工程师应该知道的16个问题

嵌入式软件工程师应知道的0x10个基本问题(经典收藏版) C语言测试是招聘嵌入式系统程序员过程中必须而且有效的方法。这些年,我既参加也组织了许多这种测试,在这过程中我意识到这些测试能为面试者和被面试者提供许多有用信息,此外,撇开面试的压力不谈,这种测试也是相当有趣的。 从被面试者的角度来讲,你能了解许多关于出题者或监考者的情况。这个测试只是出题者为显示其对ANSI标准细节的知识而不是技术技巧而设计吗?这是个愚蠢的问题吗?如要你答出某个字符的ASCII值。这些问题着重考察你的系统调用和内存分配策略方面的能力吗?这标志着出题者也许花时间在微机上而不是在嵌入式系统上。如果上述任何问题的答案是"是"的话,那么我知道我得认真考虑我是否应该去做这份工作。 从面试者的角度来讲,一个测试也许能从多方面揭示应试者的素质:最基本的,你能了解应试者C语言的水平。不管怎么样,看一下这人如何回答他不会的问题也是满有趣。应试者是以好的直觉做出明智的选择,还是只是瞎蒙呢?当应试者在某个问题上卡住时是找借口呢,还是表现出对问题的真正的好奇心,把这看成学习的机会呢?我发现这些信息与他们的测试成绩一样有用。 有了这些想法,我决定出一些真正针对嵌入式系统的考题,希望这些令人头痛的考题能给正在找工作的人一点帮助。这些问题都是我这些年实际碰到的。其中有些题很难,但它们应该都能给你一点启迪。 这个测试适于不同水平的应试者,大多数初级水平的应试者的成绩会很差,经验丰富的程序员应该有很好的成绩。为了让你能自己决定某些问题的偏好,每个问题没有分配分数,如果选择这些考题为你所用,请自行按你的意思分配分数。 预处理器(Preprocessor) 1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 我在这想看到几件事情: 1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2)懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。 3) 意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。 4) 如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。 2 . 写一个"标准"宏MIN ,这个宏输入两个参数并返回较小的一个。 #define MIN(A,B) ((A)<= (B) ? (A) : (B)) 这个测试是为下面的目的而设的: 1) 标识#define在宏中应用的基本知识。这是很重要的。因为在嵌入(inline)操作符变为标准C的一部分之前,宏是方便产生嵌入代码的唯一方法,对于嵌入式系统来说,为了能达到要求的性能,嵌入代码经常是必须的方法。 2)三重条件操作符的知识。这个操作符存在C语言中的原因是它使得编译器能产生比if-then-else更优化的代码,了解这个用法是很重要的。

嵌入式软件开发流程图

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成本,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

嵌入式软件开发技术 习题集

嵌入式软件技术概论习题集 一单项选择题 1. 世界上第一台计算机研制成功的年代是( C ) Α.1944年B.1945年C.1946年D.1947年2. 十进制数235,用二进制表达为( A ) Α.11101011 B.11101010 C.11101001 D.11101110 3. ARM采用定长指令格式,所有指令都是32位,Bit[31:28]为( B ) Α.目标寄存器编码B.条件执行C.指令操作符编码D.永远是0 4. 8080处理器是(C ) Α.32位处理器B.16位处理器C.8位处理器D.4位处理器5. 把微处理器与外部设备相连接的线路称为(D ) Α.电源线B.控制线C.数据线D.总线 6. 嵌入式软件开发构建阶段的第一步是( A ) Α.编译B.链接C.定址D.打包 7. 以下有关进程和程序的说法错误的是( D ) Α.进程是动态的B.程序是静态的 C.一个程序可以对应多个进程D.程序就是进程 8. 微软开发的嵌入式操作系统是( C ) Α.RT-Linux B.MontaVista C.Windows CE D.VxWorks 9. ROM监视器是一个小程序,驻留在嵌入式系统的( B ) Α.RAM中B.ROM中C.Flash中D.DOM中10.直接存储器存取的英文缩写是( A ) Α.DMA B.DRAM C.ISA D.IRQ 11. 以下不是嵌入式系统应用领域的是( C ) Α.移动电话B.汽车电子C.办公系统D.军工航天12. 十进制数235,用八进制表达为( C ) Α.351 B.352 C.353 D.354 13. ARM采用定长指令格式,所有指令都是32位,Bit[27:26]为(C ) Α.目标寄存器编码B.指令操作符编码C.永远是0 D.条件执行14. 80286处理器是(B ) Α.32位处理器B.16位处理器C.8位处理器D.4位处理器15. 厂家和用户为性能扩充或作为特殊要求使用的信号线称为( A ) Α.备用线B.控制线C.数据线D.总线16. 嵌入式软件开发构建阶段的第二步是( B ) Α.编译B.链接C.定址D.打包17. 以下有关进程和程序的说法错误的是(B ) Α.进程是动态的B.一个进程可以对应多个程序 C.一个程序可以对应多个进程D.程序不是进程 18. WindRiver公司开发的嵌入式操作系统是( A ) Α.VxWorks B.MontaVista C.Windows CE D.RT-Linux 19. GDB中,用来设置断点的命令是( D ) Α.kill B.next C.make D.break 20.1Byte等于( D ) Α.1024KB B.1024KM C.1024GB D.8bit 21. 以下不是嵌入式系统应用领域的是( A ) Α.电子商务B.移动电话C.消费类电子产品D.军工航天

嵌入式系统开发基础——基于ARM9微处理器C语言程序设计各章习题

第一章习题 1。嵌入某种微处理器或单片机的测试和控制系统称为嵌入式控制系统(Embedded Control System)。 在应用上大致分为两个层次,以MCS-51为代表的8位单片机和以ARM技术为基础的32位精减指令系统单片机 2。目标机上安装某种嵌入式操作系统和不安装嵌入式操作系统, 以MCS-51为代表的8位单片机不安装嵌入式操作系统。 3。32位、16位和8位 5。32位、16位 6。在大端格式中,字数据的高字节存储在低字节单元中,而字数据的低字节则存放在高地址单元中。 在小端存储格式中,低地址单元存放的是字数据的低字节,高地址单元中,存放的是数据的高字节。 第二章习题 (略) 第三章习题 1。 (1)寄存器大约有17类,每个的定义都是寄存器名字前面加一个小写”r” (2)在56个中断源中,有32个中断源提供中断控制器,其中,外部中断EINT4~EINT7通过“或”的形式提供一个中断源送至中断控制器,EINT8~EINT23也通过“或”的形式提供一个中断源送至中断控制器。 第四章习题 1,56个中断源,有32个中断源提供中断控制器 2,两种中断模式,即FIQ模式(快速模式)和IRQ模式(通用模式)。通过中断模式控制寄存器设置。 3,常用的有5个,它们是中断模式控制寄存器,控制中断模式;中断屏蔽寄存器,控制中断允许和禁止;中断源挂起寄存器,反映哪个中断源向CPU申请了中断;中断挂起寄存器,反映CPU正在响应的中断是哪个中断源申请的;中断优先级寄存器,它和中断仲裁器配合,决定中断优先级。

4,中断源挂起寄存器,反映哪个中断源向CPU申请了中断;中断挂起寄存器,反映CPU正在响应的中断是哪个中断源申请的。中断源向CPU申请了中断如果该中断源没被屏蔽并且没有和它同级或高级的中断源申请中断,才能被响应。系统中可以有多个中断源向CPU申请中断,但同一时刻CPU只能响应一个最高级的中断源中断请求。中断源挂起寄存器和中断挂起寄存器反映了中断系统不同时段的状态。 5,进入中断服务程序先清中断源挂起寄存器和中断挂起寄存器;中断结束,将该中断源屏蔽。 6,将该中断源屏蔽取消;将该中断源屏蔽。 第五章习题 1,S3C2410芯片上共有117个多功能的输人/输出引脚,它们是。 ?1个23位的输出端口(端口A); 。1个11位的输入/输出端口(端口B); 。1个16位输入/输出端口(端口C); ?1个16位输入/输出端口(端口D); ?1个16位输入/输出端口(端口E); ?1个8位输人/输出端口(端口F); ?1个16位输入/输出端口(端口G); 。1个11位的输入/输出端口(端口H)。 2,S3C2410 I/O口的控制寄存器、数据寄存器、上拉电阻允许寄存器的作用? 端口控制寄存器定义了每个引脚的功能;与I/O口进行数据操作,不管是输入还是输出,都是通过该口的数据寄存器进行的,如果该端口定义为输出端口,那么可以向GPnDA T的相应位写数据。如果该端口定义为输人端端口,那么可以从GPnDAT的相应位读出数据。 端口上拉寄存器控制每个端口组上拉电阻的使能/禁止。如果上拉寄存器某一位为0,则相应的端口上拉电阻被使能,该位做基本输入/输出使用,即第1功能;如果上拉寄存器某一位是1,则相应的端口上拉电阻被禁止,该位做第2功能使用。 5, rGPBCON=rGPBCON& 0xFFFFFC∣1; //蜂鸣器配置,PB1口接蜂鸣器,输出delay(1000); rGPBDAT & = 0xFFFFFE; //蜂鸣器响,低电平有效 rGPBDAT∣=1; // 蜂鸣器停 第六章习题 3,S3C2410 UART波特率如何确定?

嵌入式底层软件开发方法

嵌入式底层软件开发方法 自从20世纪70年代单片机出现以来,嵌入式系统已获得了较为深入的研究, 提出了一些嵌入式软件的开发方法,但嵌入式系统仍处于发展阶段,嵌入式系统 已经显示出广阔的应用前景。 1.嵌入式系统的定义 嵌入式系统又称为嵌入式计算机系统,是指嵌入到对象体系中的专用计算机系统。对象系统则是指嵌入式系统所嵌入的宿主系统,嵌入性、专用性与计算机系统 是嵌入式系统的三个基本要素。嵌入式系统通常被描述为:以应用为中心,以计 算机技术为基础,软硬件可剪裁,适应于应用系统对功能、可靠性、成本、体积和 功耗有严格要求的专业计算机系统。 2.嵌入式系统的发展历程 嵌入式系统是在硬件和软件交替发展的支撑下逐渐趋于稳定和成熟的,它有着 悠久的历史。从20世纪70年代单片机的出现到现在各种嵌入式微处理器、微控制 器的大规模应用,嵌入式系统己经有了30多年的发展历史。纵观嵌入式技术的发展,大致经历了以下几个发展阶段。 (1)无操作系统阶段:主要是以功能简单的专用计算机或单片机为核心的可编 程控制器形式存在的系统,具有监测、伺服、设备指示等功能,一般没有操作系统 的支持,通过汇编语言编程对系统进行直接控制。主要特点是:系统结构和功能都 相对单一,处理效率较低,存储容量较小,几乎没有用户接口,比较适合于各类专 用领域。 (2)以嵌入式处理器和嵌入式操作系统为标志的嵌入式系统:主要特点是出现 了高可靠、低功耗的嵌入式处理器,嵌入式操作系统能运行于各种不同类型的微处 理器上,兼容性好;操作系统内核精小、效率高,并且具有高度的模块化和扩展性;片上系统(System On Chip,SOC)使得嵌入系统越来越小,具有大量的应用程序接口,开发应用程序简单,应用软件丰富。 3.嵌入式系统的构成及其特点 1)嵌入式系统的组成 嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件 系统等组成,具有专用性、可嵌入性、实时性、可移植性和分布式等特点。其中, 嵌入式微处理器是嵌入式硬件系统的核心部分,它担负着控制、协调系统工作的重 要任务,通常具有实时多任务处理能力、中断处理能力、存储器保护能力和低功耗 能力;支撑硬件主要包括存储介质、通信部件和显示部件等;支撑硬件的驱动程 序、操作系统、应用软件等一起构成嵌入式软件。

!嵌入式系统开发资料(入门必备)

获取更多权威电子书请登录https://www.360docs.net/doc/528289987.html, ARM嵌入式系统开发综述ARM开发工程师入门宝典

获取更多权威电子书请登录https://www.360docs.net/doc/528289987.html, 前言 嵌入式系统通常是以具体应用为中心,以处理器为核心且面向实际应用的软硬件系统,其硬件是整个嵌入式系统运行的基础和平台,提供了软件运行所需的物理平台和通信接口;而嵌入式系统的软件一般包括操作系统和应用软件,它们是整个系统的控制核心,提供人机交互的信息等。所以,嵌入式系统的开发通常包括硬件和软件两部分的开发,硬件部分主要包括选择合适的MCU或者SOC 器件、存储器类型、通讯接口及I/O、电源及其他的辅助设备等;软件部分主要涉及OS porting和应用程序的开发等,与此同时,软件中断调试和实时调试、代码的优化、可移植性/可重用以及软件固化等也是嵌入式软件开发的关键。 嵌入式系统开发的每一个环节都可以独立地展开进行详细的阐述,而本文的出发点主要是为嵌入式开发的初学者者提供一个流程参考。因为对于初学者在面对一个嵌入式开发项目的时候,往往面临着诸多困难,如选择什么样的开发平台?什么样的器件类型?在进行编译时怎样实现代码优化?开发工具该如何选择和使用?在进行程序调试时应该注意那些问题以及选择什么样的嵌入式OS 等等。希望通过本文,能帮助初学者了解有关ARM嵌入式系统开发流程。

获取更多权威电子书请登录https://www.360docs.net/doc/528289987.html, 目录 前言 (2) 1 嵌入式开发平台 (4) 1.1 ARM的开发平台: (4) 1.2 器件选型 (7) 2 工具选择 (11) 3 编译和连接 (13) 3.1 RVCT的优化级别与优化方向 (16) 3.2 Multifile compilation (21) 3.3调试 (22) 4 操作系统 (23) 4.1 哪里可以得到os 软件包 (Open Source and Linux Kernel) (25) 4.2 安装镜像 (26) 4.3 交叉编译 (26) 总结 (27)

嵌入式系统

第一章绪论 1.嵌入式系统的定义、特点和分类 2.嵌入式操作系统 3.嵌入式系统的选型 4.嵌入式系统的发展趋势 5.嵌入式系统的关键技术 6.嵌入式系统的应用 思考与练习 1.什么是嵌入式系统?嵌入式系统的特点是什么? 2.请说出嵌入式系统与其它商用计算机系统的区别。 3.嵌入式系统的关键技术有哪些? 4.请说明嵌入式系统技术发展及开发应用的趋势。 5.你知道嵌入式系统在我们日常生活中哪些设备中应用?说明其采用的处理器是什么?采用的哪一个嵌入式操作系统? 6.开发嵌入式系统的计算机语言主要有哪几种?分别用在什么场合?7. 嵌入式系统和专用集成电路的关系是什么? 第二章嵌入式系统设计方法 1. 需求分析与系统分析法 2.软硬件协同设计方法 3.嵌入式硬件开发方法 4.嵌入式软件开发方法 5.构件式开发方法 6.软件调试与软件测试方法 思考与练习 1.请说出嵌入式系统设计的主要方法及设计流程。在嵌入式系统开发的总体设计中,需要进行哪几方面的工作? 2.嵌入式硬件调试的主要方法及技术手段有哪些? 3.什么是构件式开发方法?说明该方法对嵌入式系统开发具有什么意义,并举例说明。4.需求分析阶段分为哪几个步骤?每个步骤完成什么工作? 5.在进行系统设计时,概要设计和详细设计的工作内容有什么不同? 6.在嵌入式系统实现阶段,需要选择开发平台,通常开发平台的选择包括哪些内容?7.在当今IT 时代,为了使产品尽快进入市场,就产品开发阶段,你认为有哪些方法可以加快产品的开发速度? 8.什么是“黑盒”测试?什么是“白盒”测试?什么是“灰盒”测试? 9.嵌入式系统开发中,使用软件组件技术有什么好处? 10.什么是知识产权核(Intellectual Property Core,简称IP Core)?指出“软知识产权核(Soft IP Core)”、“硬知识产权核(Hard IP Core)”、“固知识产权核(Firm IP Core)”的意义和差别。 11.根据嵌入式软件开发的不同阶段,嵌入式开发工具有哪些种类? 12.从底层硬件到上层应用,嵌入式软件的开发可以分为哪几种? 13.什么是交叉开发环境? 14.什么是OCD 调试方法?指出OCD 的主要形式JTAG 和BDM 的特点和区别? 15.嵌入式软件的调试运行环境和固化运行环境主要区别是什么?

嵌入式软件开发入门教程

C语言是嵌入式软件开发人员必须熟练掌握的编程语言。作为C语言的初学者重点掌握基本数据类型、复合数据类型、流程控制、数组、指针、函数这几方面的基本知识。本人建议通过观看视频教学的方式进行学习,这样既快速又通俗易懂,当然前提是必须找到优质的教学视频资源。此外,可以配合入门书籍谭浩强的《C语言程序设计》进行学习。如果想深入的学习可以参考美国人写的人民邮电出版社出版的《C Primer Plus》。 方法/步骤2: C语言的磨炼 掌握了基本的C语言语法以后并不代表我们就学会了C语言,关键是如何灵活的去运用。我们可以练习编写C语言学习书籍的课后习题或者在网站上搜索C语言笔试题库进行练习。也可以百度寻找经典的C 语言编程案例进行学习。总之,就是将C语言运用的越熟练越好。至于开发环境可以选择VC++ 6.0 或者linux。 方法/步骤3: 硬件电路基础

嵌入式软件工程师还必须懂一些硬件电路的基本知识。当然,对于刚入门的软件开发人员没必要非常精通电路技术,熟悉基本的电子元器件的功能即可。例如,电阻、电容、电感的作用以及符号,三极管、MOS管导通截止的条件,微处理器、晶振的基本概念等。至于,以上这些基本知识我们可以通过童诗白的第四版《模拟电子技术基础》和网上查阅的资料进行学习。 方法/步骤4: 如何看懂原理图 作为嵌入式软件开发人员我们经常会和硬件打交道,我们的程序最终会被烧录到微处理器内部运行。所以,我们必须要会看硬件原理图,看懂之后才知道如何写程序。首先,我们要知道嵌入式硬件最小系统的组成部分,包括电源电路、晶振、微处理器、复位电路。然后以微处理器为中心向四周查看,主要看我们可以操纵的外设资源。以上知识的学习我们不妨经常浏览一下某些知名IT网站其他人上传的经典原理图。 方法/步骤5: 基本外设知识

嵌入式系统概论讲解

第一章嵌入式系统概论 参考习题 1、嵌入式系统本质上是什么系统? 答:从本质上讲,嵌入式系统中的计算机总是处于一种实时计算模式,也可以认为嵌入式计算机应具有某种实时性。也就是说,从嵌入式系统的广义概念考虑,嵌入式系统都可以看成是实时系统。 2、嵌入式系统开发与PC机软件开发的区别是什么? 答:嵌入式开发就是设计特定功能的计算机系统,形象的说就是开发一种嵌入在一个机器上实现特定功能的一个系统。PC的开发往往是上层应用程序,会更多的和业务流程,数据库,UI打交道。嵌入式的开发主要是和底层打交道,例如内存,NAND, 各种控制器,中断调度等等。当然现在也有很多需要在嵌入式设备上开发上层应用程序的需求了。 3、嵌入式系统基本概念? 答:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可配置,对功能、可靠性、成本、体积、功耗有严格约束的专用系统。这类系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统(可选择)以及应用程序等四个部分组成的。 4、嵌入式系统分类?

答:(1)按微处理器位数划分 按所采用的处理器位数,可以分为4位、8位、16位、32位和64位系统。 (2)按应用类别划分 可以简单地划分为信息家电、通信、汽车电子、航空航天、移动设备、军用电子、工业控制、环境监控等各种类型。 (3)按系统的实时性划分 硬实时系统、软实时系统和自适应实时。 (4)按工业界应用的复杂程度划分 简单单处理器系统 可扩展单处理器系统 复杂嵌入式系统 制造或过程控制中使用的计算机系统 第二章ARM嵌入式微处理器技术基础 参考习题 1、ARM32位指令、16位指令的特点。 答:ARM微处理器支持32位的ARM指令集和16位Thumb指令集,每种指令集各有自己的优点和缺点:ARM指令集效率高,但代码密度低;Thumb指令集具有较高的代码密度,却仍保持ARM的大多数性能上的优势,可看做ARM指令集的子集。

29945嵌入式软件技术概论

29945嵌入式软件技术概 论 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

高纲1450 江苏省高等教育自学考试大纲 29945 嵌入式软件技术概论 南京航空航天大学编江苏省高等教育自学考试委员会办公室

一、课程性质及其设置目的与要求 (一)课程性质和特点 《嵌入式软件技术概论》是高等教育自学考试计算机网络专业(独立本科段)考试计划规定必考的一门专业课。通过本课程的学习,不仅使学生了解嵌入式计算机系统的基本概念和组织构成,并以ARM Cortex-M0+系列微处理器为基础掌握嵌入式计算机系统软件的开发方法,重点培养学生嵌入式计算机系统的软件开发能力。 (二)本课程的基本要求 本课程共分为14章。在对嵌入式计算机的学科基础、研究和应用领域以及ARM Cortex-M0+微处理器和KL25子系列微控制器进行简要介绍的基础上,重点阐述了如何基于KL25子系列微控制器开发一个相对完整的嵌入式系统的具体过程,以及嵌入式系统中所包含的基本接口及模块的编程方法,包括串行通信、中断、定时器、GPIO、FLASH、ADC、DAC、CMP、SPI、I2C、TSI、USB2.0、系统时钟及其它接口与模块。通过对本书的学习,要求应考者对嵌入式计算机系统有一个全面和正确的了解。具体应达到以下要求: 1.了解嵌入式计算机系统的基本概念、发展过程、现状和发展趋势,嵌入式计算机系统的应用范畴,嵌入式计算机系统与通用计算机系统的区别与联系; 2.理解并掌握嵌入式计算机系统的基本构成和基本原理; 3.掌握基于KL25子系列微控制器的嵌入式计算机软件系统开发的方法以及对嵌入式计算机系统各基本接口及模块的开发编程方法。 (三)本课程与相关课程的联系 嵌入式软件技术概论是一门综合性和应用性都比较强的课程,其内容涉及计算机相关专业的大部分专业课程,学习者需要具有一定的数字电路及编程基础,也要对计算机的一般组成有所了解。因此,本课程的前修课程应至少包含《数字电路》、《程序设计语言》(以C语言为主)以及《计算机组成原理》,这些课程可以帮助学生很好的理解嵌入式计算机系统的硬件结构及尽快掌握嵌入式计算机系统的软件编程方法。 二、课程内容与考核目标 第1章概述

嵌入式系统软件开发和设计流程复习课程

* 本文由hquwgz贡献 ppt文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 嵌入式系统及应用 第九章嵌入式系统软件的开发 主要内容 嵌入式软件开发工具嵌入式系统开发模式实时软件分析设计方法 第一节嵌入式软件开发工具 嵌入式软件开发工具的分类嵌入式软件的交叉开发环境嵌入式软件实现阶段的开发过程嵌入式软件开发工具的发展趋势 / 嵌入式软件开发工具 “工欲善其事,必先利其器”嵌入式软件开发工具的集成度和可用性将直接关系到嵌入式系统的开发效率。 嵌入式软件开发工具的分类 嵌入式软件开发阶段 嵌入式软件开发工具的分类 根据不同的阶段,嵌入式软件开发工具可以分为: 需求分析工具(Requirement Analysis Tools)软件设计工具(Software Design Tools) 编码、调试工具(Coding Tools) 测试工具(Testing Tools) 配置管理工具、维护工具等 Rational Rose RealTime ObjectGeode Rhapsody TAU Tornado LambdaTOOL pRISM+ Spectra Win CE Platform Builder CodeWarrior Xray Debugger Logiscope CodeTEST … Phases Requirement Analysis Software Design Coding Test Release 主要嵌入式软件开发工具产品 嵌入式软件开发工具的分类 嵌入式软件的开发可以分为以下几种: 编写简单的板级测试软件,主要是辅助硬件的调试开发基本的驱动程序开发特定嵌入式操作系统的驱动程序(板级支持包)开发嵌入式系统软件,如:嵌入式操作系统等开发应用软件 嵌入式软件开发工具的分类 从以上嵌入式软件开发分类来看,嵌入式软件开发工具可以分为: 与嵌入式OS相关的开发工具,用于开发: ` 基于嵌入式OS的应用部分驱动程序等 与嵌入式OS无关的开发工具,用于开发: 基本的驱动程序辅助硬件调试程序系统软件等 嵌入式软件的交叉开发环境 交叉开发环境是指用于嵌入式软件开发的所有工具软件的集合,一般包括: 文本编辑器交叉编译器交叉调试器仿真器下载器等 交叉开发环境由宿主机和目标机组成,宿主机与目标机之间在物理连接的基础上建立起逻辑连接。 运行平台Target ]

嵌入式软件开发流程

.嵌入式软件开发流程

————————————————————————————————作者:————————————————————————————————日期:

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成品,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。本书在4.1.5节对各种不同的嵌入式操作系统进行了比较,读者可以以此为依据进行相关的选择。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。 由于本书主要讨论嵌入式软件的应用开发,因此对硬件开发不做详细讲解,而主要讨论嵌入式软件开发的流程。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

嵌入式软件开发流程

嵌入式软件的开发流程 嵌入式系统是指用于执行独立功能的专用计算机系统。它由包括微处理器、定时器、微控制器、存储器、传感器等一系列微电子芯片与器件,和嵌入在存储器中的微型操作系统、控制应用软件组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性,软件与硬件可剪裁,以此满足系统对功能、成本、体积和功耗等要求。最简单的嵌入式系统仅有执行单一功能的控制能力,比如说单片机的应用,在唯一的ROM 中仅有实现单一功能控制程序,无微型操作系统。复杂的嵌入式系统,例如个人数字助理(PDA)、手持电脑(HPC)等,具有与PC几乎一样的功能。实质上与PC的区别仅仅是将微型操作系统与应用软件嵌入在ROM、RAM 和/或FLASH存储器中,而不是存贮于磁盘等载体中。很多复杂的嵌入式系统又是由若干个小型嵌入式系统组成的。 近些年来,随着以计算机技术,通讯技术为主的信息技术的快速发展和Internet 的广泛应用,传统的控制学科正在发生变革,出现了许多新的生长点。伴随而来的一个现象是控制专业的相当多的学生在毕业后进入了计算机,通讯行业,以致有人说学控制没有用,自动化专业可以取消了。这些情况的出现使我们控制教育工作者反复思考,传统的控制应如何拓宽它的领域?控制专业应该教什么才使学生感到有用?流行的嵌入式操作系统可以分为两类:一类是从运行在个人电脑上的操作系统向下移植到嵌入式系统中,形成的嵌入式操作系统,如微软公司的Windows CE及其新版本,SUN公司的Java操作系统,朗讯科技公司的Inferno,嵌入式Linux等。这类系统经过个人电脑或高性能计算机等产品的长期运行考验,技术日趋成熟,其相关的标准和软件开发方式已被用户普遍接受,同时积累了丰富的开发工具和应用软件资源。 另一类是实时操作系统,如WindRiver 公司的VxWorks,ISI 的pSOS,QNX系统软件公司的QNX,ATI 的Nucleus,中国科学院凯思集团的Hopen嵌入式操作系统等,这类产品在操作系统的结构和实现上都针对所面向的应用领域,对实时性高可靠性等进行了精巧的设计,而且提供了独立而完备的系统开发和测试工具,较多地应用在军用产品和工业控制等领域中。Linux 是90年代以来逐渐成熟的一个开放源代码的操作系统。PC机上的Linux 版本在全球数以百万计爱好者的合力开发下,得到了非常迅速的发展。90 年代末uClinux,RTLinux 等相继推出,在嵌入式领域得到了广泛的关注,它拥有大批的程序员和现成的应用程序,是研究开发工作的宝贵资源。 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。

归纳嵌入式系统概论习题

第一题单项选择题 1、ADDS R0,R1,R2执行完成后,不会对CPSR中的哪一位产生影响( B)? A、N B、C C、V D、F 2、FD表示( B )。 A、满递增堆栈 B、满递减堆栈 C、空递增堆栈 D、空递减堆栈 3、已知R0=0xFFFFFC0F,则执行MVN R1,R0后,R1的值为(C )。 A、0xFFFFFFFF B、0xFFFFFFF0 C、0x3F0 D、0x3F 4、在Linux中使用ls命令显示当前目录的所有内容应使用(A)参数? A、-l B、-a C、-d D、-i 5、在EMBEST IDE开发环境中,程序的默认入口地址为( C )。 A、0x C000 B、0x 1C00 C、0x 8000 D、0x 0 6、已知R0=0x1000,R1=0x2000则执行CMP R0,R1后,R0的值为(B) A、0x2000 B、0x1000 C、0xFFFFF000 D、0xFFFFEFFF 7、已知R1=0x2F,则执行mov R0,R1,ASL #2后,R0的值为(D )。 A、0xBC B、0xBF C、0x2F0 D、0x2F 8、在Linux中查看文件前10行内容的命令是( D)。 A、less B、cat C、tail D、head 9、已知R0=0xFC,则执行BIC R0,#0x3C后,R0的值为( D )。 A、0x18 B、0x24 C、0xC0 D、0x30 10、已知R0*R1=0x1C2F3E4D5C6B,则执行SMULL R2,R3,R0,R1后,R2和R3的值分别为(D)。 A、R2=0x1C2F3E4D R3=0x5C6B B、R2=0x5C6B R3=0x1C2F3E4D C、R2=0x1C2F R3=0x3E4D5C6B D、R2=0x3E4D5C6B R3=0x1C2F 11、EMPU是( B )。 A、嵌入式微控制器 B、嵌入式微处理器 C、片上系统 D、嵌入式数字信号处理器 12、以下不属于CPSR的条件码标志位的是(A)。 A、F B、N C、Z D、C 13、S3C44B0X的内核工作电压是( B )。 A、3.0V B、2.5V C、3.5V D、 1.5V 14、Linux中删除目录的命令是(B)。 A、rm B、 rmdir C、mkdir D、del 15、能实现ARM处理器在两种工作状态之间进行切换的命令是( D )。 A、B B、 BL C、 BLX D、BX 16、若CPSR寄存器的低5位(4-0)的值为10010,则ARM处理器工作于(B) 模式。 A、FIQ B、IRQ C、USER D、SVC

嵌入式软件开发流程

嵌入式软件开发流程

————————————————————————————————作者:————————————————————————————————日期:

嵌入式软件开发流程 一、嵌入式软件开发流程 1.1 嵌入式系统开发概述 由嵌入式系统本身的特性所影响,嵌入式系统开发与通用系统的开发有很大的区别。嵌入式系统的开发主要分为系统总体开发、嵌入式硬件开发和嵌入式软件开发3大部分,其总体流程图如图1.1所示。 图1.1 嵌入式系统开发流程图 在系统总体开发中,由于嵌入式系统与硬件依赖非常紧密,往往某些需求只能通过特定的硬件才能实现,因此需要进行处理器选型,以更好地满足产品的需求。另外,对于有些硬件和软件都可以实现的功能,就需要在成本和性能上做出抉择。往往通过硬件实现会增加产品的成本,但能大大提高产品的性能和可靠性。 再次,开发环境的选择对于嵌入式系统的开发也有很大的影响。这里的开发环境包括嵌入式操作系统的选择以及开发工具的选择等。比如,对开发成本和进度限制较大的产品可以选择嵌入式Linux,对实时性要求非常高的产品可以选择Vxworks等。

1.2 嵌入式软件开发概述 嵌入式软件开发总体流程为图4.15中“软件设计实现”部分所示,它同通用计算机软件开发一样,分为需求分析、软件概要设计、软件详细设计、软件实现和软件测试。其中嵌入式软件需求分析与硬件的需求分析合二为一,故没有分开画出。 由于在嵌入式软件开发的工具非常多,为了更好地帮助读者选择开发工具,下面首先对嵌入式软件开发过程中所使用的工具做一简单归纳。 嵌入式软件的开发工具根据不同的开发过程而划分,比如在需求分析阶段,可以选择IBM的Rational Rose等软件,而在程序开发阶段可以采用CodeWarrior(下面要介绍的ADS 的一个工具)等,在调试阶段所用的Multi-ICE等。同时,不同的嵌入式操作系统往往会有配套的开发工具,比如Vxworks有集成开发环境Tornado,WindowsCE的集成开发环境WindowsCE Platform等。此外,不同的处理器可能还有对应的开发工具,比如ARM的常用集成开发工具ADS、IAR和RealView等。在这里,大多数软件都有比较高的使用费用,但也可以大大加快产品的开发进度,用户可以根据需求自行选择。图4.16是嵌入式开发的不同阶段的常用软件。 图1.2 嵌入式开发不同阶段的常用软件 嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分,其中又可以分为编译和调试两部分,下面分别对这两部分进行讲解。 1.交叉编译 嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。在第3章中已经提到,编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同CPU的对应可执行二进制文件。要注意的是,编译器本身也是程序,也要在与之对应的某一个CPU平台上运行。嵌入式系统交叉编译环境如图4.17所示。

三级嵌入式系统

三级嵌入式系统学习总结 一第一章 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段不使用)

相关文档
最新文档