




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1)嵌入式系统概述1.什么叫嵌入式系统?国内普遍被认同的定义:以应用为中心、以计算机技术为基础、软件硬件可剪裁、适应应用系统对功能可靠性、成本、体积、功耗严格要求的专用计算机系统。2.什么叫嵌入式处理器?嵌入式处理器分为哪几类?定义:嵌入式处理器是嵌入式系统硬件的核心,是控制、辅助系统运行嵌入式系统软件和应用软件的硬件单元。嵌入式处理器分类:嵌入式微控制器、嵌入式微处理器、嵌入式DSP处理器、嵌入式片上系统(SOC)3.什么是嵌入式操作系统?为何要使用嵌入式操作系统?叙述并比较常见嵌入式操作系统 定义:嵌入式操作系统能够管理系统资源,对硬件进行抽象,提供库函数、驱动程序、开发工具集等。嵌入式操
2、作系统在系统实时性、硬件依赖性、软件固化性以及应用专用性等方面,具有更加鲜明的特点。为何要使用嵌入式操作系统:(1)为使嵌入式系统的开发更加方便和快捷,需要嵌入式操作系统管理存储器分配、中断处理以及任务调度等功能。嵌入式操作系统是支持嵌入式应用的系统软件,是嵌入式系统中重要的组成部分,通常包括与硬件相关的底层驱动程序、系统内核、通信协议、图形用户界面等。(2)嵌入式操作系统根据应用场合可以分为两大类:一类是面向消费电子产品的非实时系统,包括个人数字助理(PDA)、移动电话、机顶盒(STB)等;另一类则是面向控制、通信、医疗等领域的实时操作系统。叙述并比较常见的嵌入式操作系统:嵌入式Linux:
3、Linux是完全符合GNUGPL公约的操作系统;广泛的硬件支持,内核高效稳定,开放源码,软件丰富,优秀的开发工具,完善的网络通信和文件管理机制:嵌入式Linux是由标准Linux的经小型化裁减处理,适合于特定嵌入式应用的专用Linux7嵌入式Win CE:1.Windows CE是微软公司开发的一个开放、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,是精简的Windows。2.是所有源代码全部由微软自行开发的嵌入式新型操作系统,具有模块化、结构化和基于Win32应用程序接口以及与处理器无关等特点。3.不仅继承了Windows的图形界面,并且该平台上可以使用Windows上
4、的编程工具(如Visual Basic、Visual C+和Visual Studio等)。使用同样的函数和界面网格,大多数的应用软件只需简单的修改和移植就可以在Windows CE平台上继续使用。COS-II :COSII一个源码公开、可移植、可固化、可裁剪及占先式的实时多任务操作系统,其绝大部分源码是用ANSIC写的,使其可以方便地移植并支持大多数类型的微处理器。COSII通过了联邦航空局(FAA)商用航行器认证。自1992年问世以来, COSII已经得到了大量的应用。COSII在高校教学使用是不需要申请许可证的,但若将COSII的目标代码嵌入到产品中去,应当购买目标代码销售许可证。4.嵌
5、入式系统项目开发的生命周期分哪几个阶段?各自的具体任务是什么? 四个阶段:1. 识别需求:确认需求,分析投资收益比,研究项目的可行性 2.提出方案:系统的规划和设计,提交标书和介绍解决方案。 3.执行项目:系统的实现和系统的测试,由于嵌入式系统的特殊性,软硬件的实现和系统测试往往要反复进行。4. 结束项目:包括移交工作成果,售后服务和进行项目评估。5 嵌入式系统的开发过程中应考虑哪些问题?有什么重要的特点?硬件平台的选择:处理器选择 软件平台的选择:操作系统、编程语言、集成开发环境 (1)处理器的选择要考虑的主要因素有:处理性能 ,技术指标,功耗,软件支持工具 ,是否内置调试工具 ,供应商是否
6、提供评估板 (2)硬件选择的其它因素 :生产规模 ,开发的市场目标 ,软件对硬件的依赖性 ,尽量选择使用普通的硬件2)嵌入式处理器 1.ARM处理器有什么主要特点?ARM处理器采用RISC架构,一般具有如下特点:体积小、低功耗、低成本、高性能支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件采用固定长度的指令格式寻址方式灵活简单,执行效率高LOAD-STORE结构,数据操作在寄存器中完成单机器周期指令,每条指令具有多种操作功能,提高了指令使用效率2.常见的ARM处理器系列有哪些?列举它们的性能和主要应用范围。ARM7系列处理器:低功耗的32位RISC处理器,主时钟
7、20133MHz;ARM720T带有高速缓存处理器宏单元,支持Linux和Windows CE等操作系统;ARM7系列广泛应用于多媒体和嵌入式设备,包括工业控制、Internet设备、网络和调制解调器设备、移动电话、PDA等设备。ARM9系列处理器:ARM9系列与ARM7兼容并提供了更高的性能,主时钟100500MHz;ARM9提供了全功能的MMU,支持Linux、和Windows CE等操作系统;ARM9系列主要应用于引擎管理、仪器仪表、安全系统、机顶盒、高端打印机、和音频视频多媒体设备ARM9E系列处理器:ARM9E强化了数字信号处理和Java功能;ARM10E系列处理器:ARM10E系列
8、微处理器主时钟可达400MHz以上;采用了新的体系结构,支持VFP10浮点处理协处理器,并且内嵌并行读/写操作部件;ARM10E特别适用于高端应用,如成像设备、视频处理和高性能打印机等ARM11系列处理器ARM11系列主时钟可达350MHz以上;采用了新的体系结构ARMv6;采用8级流水线组成,可以使8条指令同时被执行,提高了至少40%的吞吐量;ARM11内核和Cache,及协处理器之间的数据通路是64位的,以32位处理器的成本,提供64位处理器性能的解决方案。Cortex系列处理器:Cortex处理器的核心是基于哈佛架构的多级流水线内核,该内核集成了分支预测,单周期乘法,硬件除法等众多功能强
9、大的特性,使其具有出色的表现(1.25 DMIPS/MHz);采用新的Thumb®-2指令集架构,与执行Thumb指令的其它ARM处理器相比,每兆赫的效率提高了70%;具有A9,A8,R4F,R4,M3,M1,M0系列;A系列主要用于高性能复杂功能系统应用;R系列主要用于高性能实时处理和控制应用; M系列主要用于深度嵌入和低功耗实时处理和控制应用。SecurCore系列处理器:SecurCore系列微处理器专为安全需要而设计,在系统安全方面具有如下的特点:带有灵活的保护单元,以确保操作系统和应用数据的安全;采用软内核技术,防止外部对其进行扫描探测;可集成用户自己的安全特性和其他协处理
10、器。Intel的StrongARM处理器:Intel StrongARM 处理器采用在软件上兼容ARMv4体系结构;Intel StrongARM 处理器主要用于便携式通讯产品和消费类电子产品Intel的XScale处理器:XScale 处理器是基于ARMv5TE体系结构的解决方案,是一款全性能、高性价比、低功耗的处理器;支持16位的Thumb指令和DSP指令集,已使用在数字移动电话、个人数字助理和网络产品等场合3 ARM处理器模式和ARM处理器状态有何区别?分别列举ARM的处理器模式和状态。区别:处理器模式指的是处理器在执行程序时在不同时刻所处的不同状
11、态,处理器状态指的是处理器当前所执行的指令集 ARM的处理器状态分为二种:1、ARM状态,即32位,处理器执行字方式的ARM指令,处理器在系统上电时默认是ARM状态;2、Thumb状态,即16位,处理器执行半字方式的Thumb指令; 处理器模式:处理器模式说明备注用户(USR)正常程序工作模式不能直接切换到其他模式快中断(FIQ)支持高速数据传输及通道处理FIR异常响应时,进入此模式中断(IRQ)用于通用中断处理IRQ异常响应时,进入此模式管理(SVC)操作系统保护代码系统复位和软件中断响应时,进入此模式中止(ABT)用于支持虚拟内存和或存储器保护读取数据或指令发生错误未定义(UND)支持硬件
12、协处理器的软件仿真未定义指令异常响应时,进入此模式系统(SYS)用于支持操作系统的特权任务等与用户类似,但具有可以直接切换到其他模式等特权4ARM产生异常的条件是什么? 各种异常会使处理器进入哪种模式?进入异常时内核有何操作?各种异常的返回指令又是什么? 异常ARM产生异常的条件进入时的模式复位异常nRESET信号被拉低后,当它再次变为高电平时管理未定义指令ARM处理器遇到一条自己和系统内任何协处理器都无法处理的指令未定义软件中断请求一个特定的管理函数管理中止(预取)取指令失败中止中止(数据)试图存取一个非法的内存单元中止中断请求IRQnIRQ(内核信号)拉低可实现外部IRQ中断快速中断请求F
13、IQnFIQ(内核信号)拉低可实现外部产生FIQ快中断进入异常时内核有何操作?在处理异常时,ARM内核会:在异常所对应的LR中保存下一条指令的地址将CPSR复制到异常所对应的SPSR根据异常将CPSR模式强制设为某一值强制PC从相关的异常向量处取指根据需要设置屏蔽中断和快速中断屏蔽位,防止不受控制的异常嵌套各种异常的返回指令又是什么?异常或入口返回指令异常或入口返回指令BLMOV PC,R14 快中断SUBS PC,R14_fiq,#4SWIMOVS PC,R14_svc中断SUBS PC,R14_irq,#4未定义指令MOVS PC,R14_und数据中止SUBS PC,R14_abt,#8
14、预取中止SUBS PC,R14_abt,#4复位无5CPSR寄存器是如何定义的?如何禁止IRQ和FIQ的中断?CPSR程序状态字寄存器中断禁止位:I和F位都是中断禁止位,I位置位时,IRQ中断被禁止;F位置位时,FIQ中断被禁止。6叙述或列举以下内容(a) ARM的指令格式和指令ARM指令的基本格式如下<Opcode><Cond>S <Rd>,<Rn>,<Operand2> <>号内的项是必需的, 号内的项是可选的 Opcode 指令助记符,如LDR、STR等 Cond 执行条件,如EQ、NE等,如不写则无条件执行。 S
15、是否影响CPSR寄存器的值,书写时影响CPSR Rd 目标寄存器 Rn 第1个操作数的寄存器 Operand2 第2个操作数。指令:存储器访问指令;分支指令;数据处理指令;乘法指令;杂项指令;协处理器指令;伪指令(b) ARM的寻址方式:立即数寻址、寄存器寻址、寄存器间接寻址、基址寻址、寄存器移位寻址、多寄存器寻址、堆栈寻址、相对寻址、块拷贝寻址(c) ARM的指令的条件码操作码条件码助记符标志 含义操作码条件码助记符标志 含义0000 EQZ=1 相等1000 HIC=1,Z=0 无符号数大于0001 NEZ=0 不相等1001 LSC=0,Z=1 无符号数小于或等于0010 CS/HSC=
16、1 无符号数大于或等于1010 GEN=V 有符号数大于或等于0011 CC/LOC=0 无符号数小于1011 LTN!=V有符号数小于0100 MIN=1 负数1100 GTZ=0,N=V有符号数大于0101 PLN=0 正数或零1101 LEZ=1,N!=V有符号数小于或等于0110 VSV=1 溢出1110 AL任意无条件执行0111 VCV=0 没有溢出1111 保留(d) ARM指令中第二个操作数有哪几种形式?列举5个8位图立即数。#immed_8r常数表达式,对应8位位图(Pattern),即常数是由一个8位常数循环移位偶数位得到的;Rm寄存器方式,操作数即为寄存器的数值; Rm,
17、shift寄存器移位方式,寄存器的移位结果为操作数,但Rm值不变。举例-8位图立即数:0x3FC(0xFF<<2)、0、0xF0000000(0xF0<<24)、200(0xC8)、0xF0000001(0x1F<<28)(e) ARM的分支(转移)指令助记符说 明操 作 条件码位置B labe1分支指令PClabe1BcondBL labe1带链接的分支指令LRPC-4,PClabe1BLcondBX labe1带状态切换的分支指令LRPC-4,PClabe1BLcond(f) 指出MOV指令与LDR加载指令的区别及用途MOV指令的源操作数是常数或(带偏移
18、量的)寄存器,用于寄存器之间的数据传送;LDR指令的源操作数是地址,用于存储器到寄存器的数据传送。(g) ARM指令系统与你所学习过的其它指令系统相比,有什么特点。 ARM指令用的是简单指令集,每条指令长度都是一样的,而之前学的指令是复杂指令集,每条指令长度不固定。 ARM指令中的操作数可以有3个 寻址方式种类 ARM指令为单机器周期 ARM指令只能采用访问寄存器,学过的其它指令可以采用访问内存地址 ARM指令系统指令种类较少,而其它的指令复杂,冗余太多。 在流水线方面,ARM指令的处理过程可以被分割成更小的流水线并行执行单元,可以获得高的吞吐率、X86指令集执行需要调用微代码的一个微程序,在
19、执行速度上不如ARM。3)嵌入式系统的接口技术与硬件设计1.写出最小系统的定义,画出最小系统原理框图,并简述下列问题:-最小系统:提供嵌入式处理器运行所必须的条件的电路与嵌入式处理器共同构成了这个嵌入式处理器的最小系统。-最小系统原理框图:a电源电路设计有哪些要点? 输出的电压、电流和功率 输入的电压、电流 安全因素 输出纹波 电磁兼容和电磁干扰 体积限制 功耗限制及成本限制b简单论述时钟电路对嵌入式系统的重要性。-目前所有的微控制器均为时序电路,需要一个时钟信号才能工作.c嵌人式系统为何需要复位电路?-微控制器在上电时状态并不确定,需要一个复位逻辑将微控制器初始化为某个确定的状态。这个复位逻
20、辑需要一个复位信号才能工作。2ARM的UART有何特点?若要通过RS232接口与其它设备连接,应如何设计电路?-UART是通用异步串行通信接口的总称,UART允许在串行链路上进行全双工的通信,输出输入的电子为TTL电平。全双工UART定义了一个串行发送引脚(TXD)和一个串行接收引脚(RXD),可在同时发送和接收数据。但是不同芯片的UART内部电路、操作寄存器和工作模式并不相同。-设计电路补充!RS422和RS485主要电气特性:1、逻辑“1”以两线间的电压差为+(26)V表示;逻辑“0”以两线间的电压差为-(26)V表示。2、数据最高传输速率为10Mbps3、采用平衡驱动器和差分接收器的组合
21、,抗共模干扰能力增强,即抗噪声干扰性好。 4、最大的通信距离约为1219m,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加中继器。RS422和RS4851、RS-422标准全称是“平衡电压数字接口电路的电气特性”,它定义了接口电路的特性。实际上还有一根信号地线,共5根线。由于接收器采用高输入阻抗和发送驱动器RS232更强的驱动能力,故允许在相同传输线上连接多个接收节点,最多可接10个节点。即一个主设备(Master),其余为从设备(Salve),从设备之间不能通信,所以RS-422支持点对多的双向通信。
22、接收器输入阻抗为4k,故发端最大负载能力是10×4k+100(终接电阻)。 2、RS485可以是半双工的, RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。3叙述I2C总线和SPI接口的工作原理和连接方式。-I2C连接方式:工作原理: BUS是PHILIPS公司推出的芯片间串行传输总线,它以2根连线实现了完善的全双工同步数据传送,可以极方便地构成多机系统和外围器件扩展系统。I2C 总线采用了器件地址的硬件设置方法,通过软件寻址完全避免了器件的片选线寻址方法,从而使硬件系统具有最简单而灵活的扩展方法; I
23、2C总线的2根线串行数据SDA和串行时钟SCL可连接到总线上的任何一个器件,每个器件都应有一个惟一的地址,而且都可以作为一个发送器或接收器。此外,器件在执行数据传输时也可以被看作是主机或从机。 I2C总线是一个多主机的总线,也即可以连接多于一个能控制总线的器件到总线。但任一时刻只能有一个器件能真正控制总线而成为主机。I2C SPI SPI单从配置图:工作原理: SPI(串行外设接口)总线系统是一种同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信、数据交换。SPI系统可直接与各个厂家生产的多种标准外围器件直接接口,SPI系统总线一共只需35位数据线和控制线即可实现与具有SPI的各种I
24、O器件接口。将数据写到SPI发送缓冲区后,时钟信号SCK的1次作用对应一位数据的发送(MISO)和另一位数据的接收(MOSI)。在主机中数据从移位寄存器中自左向右发出送到从机(MOSl),同时从机中的数据自右向左发到主机(MISO),经过8个时钟周期完成1个字节的发送。输入字节保留在移位寄存器中,然后从接收缓冲区中读出一个字节的数据。4SRAM、DRAM和 PSRAM的结构及工作原理。 SRAM为静态RAM存储器,具有极高的读写速度,在嵌入式系统中常用来作变量/数据缓冲,或者将程序复制到SRAM上运行,以提高系统的性能。SRAM属于易失性存储器,电源掉电后SRAM中的数据将会丢失,所以不可能直
25、接使用SRAM引导程序运行。 DRAM为动态RAM存储器,具有存储容量大和价格便宜的特点。DRAM是用MOS电路和电容来作存储元件,由于电容会放电,所以需要定时充电以维持存储内容的正确,例如每隔2ms刷新一次数据。 PSRSAM(即Pseudo-SRAM)器件是异步SRAM接口技术和利用存储阵列的高密度DRAM技术相结合的产物。PSRAM实现了对主机系统透明地刷新技术.通过扩展包括刷新操作和读出操作两部分时间在内的读出周期的规定周期时间,使得透明的刷新成为可能。这种方法同样也可用于写入周期。5SRAM和 PSRAM与相比有哪些优缺点?它们怎样与ARM微控制器相连接? -SRAM容量较小,位价格
26、高读写操作简单具有极高的读写速度 属于易失性存储器,但可以用增加备用电源的方法保存数据-PRAM 向后可兼容标准异步SRAM器件它是带有SRAM接口的DRAM技术它的价格比目前使用的SRAM器件更低 器件包含有页面模式读访问,可看作是异步读协议的带宽增加的扩展特性。-与ARM微控制器连接SRAM PSRAM 6Flash存储一般可分为哪两种类型?它们分别有什么应用特点?- 分NOR型与NAND型FLASH 应用特点:接口差别,NOR型FLASH采用的是SRAM接口,提供有足够的地址引脚来寻址,可以很容易地存取其片内的每一个字节;NAND型FLASH使用复杂的I/O口来串行地读取数据,各个产品或
27、厂商的方法可能各不相同。通常是采用8个引脚来传送控制、地址和数据信息。读写的基本单位,NOR型FLASH操作是以“字”为基本单位;NAND型FLASH操作是以“页面”为基本单位,页的大小一般为512字节。性能比较,NOR型FLASH的地址线和数据线是分开的,传输效率很高,程序可以在芯片内执行。NOR型的读速度比NAND型稍快一些;NAND型的写入速度比NOR型快很多,但NAND型读写的基本单位为“页面”,对小量数据的写入,总体速度要比NOR型慢。NAND型的擦除速度远高于NOR型。容量和成本,NAND型Flash有极高的单元密度,容量可以做得比较大,生产过程更为简单,价格也就相应地降低了。NO
28、R型Flash占据了容量为116MB闪存市场的大部分,而NAND型Flash只是用在8MB以上产品中,NOR主要用于代码存储介质中,NAND适合于数据存储,占存储卡市场上的最大份额。软件支持,在NOR型Flash上运行代码不需要任何的软件支持,而NOR型Flash的写操作和NAND型Flash的读写操作需要驱动程序。7液晶显示屏根据显示原理的不同可分为哪几种?液晶模块有何特点?-按显示原理分类:可分为TN(Twist Nematic)扭曲向列型、STN(Super Twist Nematic)超扭曲向列型、TFT(Thin Film Transistor)薄膜晶体管型等。-液晶模块特点: 小点
29、阵式液晶模块一般内置控制集成电路和显示存储器,以总线或I/O接口方式由微控制器直接驱动。 大点阵式液晶模块一般不内置显示存储器,如微控制器本身带有液晶驱动控制功能,则可直接对点阵式液晶显示屏连接控制;如微控制器本身没有液晶驱动控制功能,则需要外扩液晶驱动板来连接液晶显示屏。8叙述4线电阻触摸屏的工作原理和连接方式。四线式触摸屏包含两个透明的阻性层。其中一层在屏幕的左右边缘各有一条垂直总线,另一层在屏幕的底部和顶部各有一条水平总线。触摸屏的两个金属导电层分别用来测量X轴和Y轴方向的坐标。用于X坐标测量的导电层从左右两端引出两个电极,记为X+和X-,用于Y坐标测量的导电层从上下两端引出两个电极,记
30、为Y+和Y-。在一对电极上施加电压时,在该导电层上会形成均匀连续的电压分布。若在X方向的电极对上施加一确定的电压,而Y方向电极对上不加电压时,在X平行电压场中,触点处的电压值可以在Y+(或Y-)电极上反映出来,通过测量Y+电极对地的电压大小,便可得知触点的X坐标值。同理,当在Y电极对上加电压,而X电极对上不加电压时,通过测量X+(或X-)电极的电压,便可得知触点的Y坐标值。使用触摸屏时,需要ADC转换器将模拟信号转换成数字信号,可用触摸屏控制器,也可用微处理器内部的ADC转换器实现。9叙述常见的以太网接口芯片的特点、原理和连接方式。DM9000AE特点:DM9000AE具有以下主要性能: 48
31、管脚的LQFP封装,管脚少体积小; 对内部存储器的读写支持字节和字两种形式; 集成了10M/100M自适应功能; 内部有16KB的SRAM作为接收发送数据缓冲; 支持自动从EEPROM进行配置,下载厂商ID和产品ID; 支持IP/TCP/UDP加速(checksum offload),减轻了CPU负担,提高网络速度。支持Back pressure半双工流量控制支持IEEE802.3x全双工流量控制。原理:连接方式:->>>4)嵌入式系统的开发环境和调试方法1.简述使用边界扫描测试技术JTAG原理和好处。原理: 每个边界扫描单元的检测对象都是一条引线,并假定一个边界,只在这个边
32、界位置检测和控制这条引线,对边界以外的结构不予关心。 引线A和B之间插入一个边界扫描单元,当扫描单元不工作时,A和B引线是“透明”的;当扫描单元工作时,A和B引线也可以是“透明”的,也可以是不“透明”的。串行数据输出可以采样A端信号,也可以采样B端信号。在不“透明”的情况下,串行数据输入信号可以传送到A端,也可以传送到B端。这样就可以达到检测和控制引线A和B的目的。使用边界扫描技术可以全面地解决了传统调试方法所带来的困难。近年来生产的大多数结构复杂的单片机,都使用边界扫描技术为用户提供仿真调试方法。这种调试方法具有下列特点:需要把目标CPU焊接在目标板上。仿真系统可以通用。仿真器与被调试的目标
33、CPU的复杂程度无关。仿真系统开发成本比较低。结构简单。2.以ADS为例,说明基于JTAG的调试方法的开发步骤。仿真调试的工作过程:由外部调试器发出的调试命令经由JTAG接口TDI引线进入扫描链,由TAP控制器控制扫描链的工作,对处理器进行调试;处理器的寄存器和系统内的数据经由扫描链串行到TDO引线,然后通过JTAG接口传送到调试器。以ADS为例:(一)工程的编辑(a)建立工程,使用工程模板建立工程(b)建立文件,建立一个文本文件,以便输入用户程序。(c)添加文件到工程(d)用户也可以用添加源文件和建立源文件时选择加入工程的方法添加文件到工程。(二)编译并连接工程(a)编译连接前可进行编译器中
34、工程的地址设置、输出文件设置等编译选项的设置;(b)对于简单的软件调试,可以不进行连接地址的设置,直接点击工程窗口的“Make”图标按钮,即可完成编译连接。(c)若编译出错,会有相应的出错提示,双击出错提示行信息,编辑窗即会使用光标指出当前出错的源代码行。(三)工程的调试(a)当工程编译连接通过后,在工程窗口中点击“Debug”图标按钮,即可启动AXD 进行调试(也可以通过【开始】菜单起动AXD)。(b)在Choose Target 窗口中设置调试器。在没有添加其它仿真驱动程序前,Target 项中只有两项,分别为ADP(JTAG 硬件仿真)和ARMUL(软件仿真)。(c)选择仿真驱动程序后,
35、加载ELF 格式的可执行文件,即*.axf 文件。工程编译连接通过后,在“工程名工程名_Data当前的生成目标”目录下会生成一个*.axf 调试文件。3.什么BootLoader?它主要完成哪些工作? Boot Loader是系统加电后运行在操作系统内核运行前运行的一段小程序,进行初始化硬件设置、创建内核需要的信息等工作,最后调用操作系统内核。4.简述Linux开发环境和开发步骤。(一)嵌入式Linux的开发一般采用宿主机/目标机模式。宿主机(host)一般是一台通用计算机,它通过串口、USB或者以太网接口和目标机通信。(二)宿主机/目标机模式的开发步骤:(a)利用宿主机的资源及开发环境,开发
36、和仿真调试目标机上的软件(b)通过串口、USB或者以太网络将交叉编译生成的目标代码传输并装载到目标机上(c)在监控程序或者操作系统的支持下利用交叉调试器进行分析调试(d)目标机脱离宿主机单独运行5.简述Windows CE的特点和开发环境。特点:Windows CE是一个开放的、可裁剪的、32位的实时嵌入式窗口操作系统。它具有可靠性好、实时性高、内核体积小等特点,适用于各种嵌入系统和产品。它拥有多线程、多任务、确定性的实时、完全抢先式优先级的操作系统环境,并可以根据特定硬件系统对Windows CE操作系统进行裁剪、定制。Windows CE专门面向只有有限资源的嵌入式硬件系统。Windows
37、 CE设计成为一种高度模块化的操作系统,每一模块都提供特定的功能,这些模块中的一部分被划分成组件,设计者可根据设备的性质选择必要的模块或组件包含进操作系统映像,从而使Windows CE变得非常紧凑(只占不到200KB的RAM),只占用了运行设备所需的最小的ROM、RAM以及其它硬件资源。Windows CE被分成不同的模块,其中最主要的模块有内核模块、对象存储模块、图形窗口事件子系统模块以及通信模块。Windows CE还包含一些附加的可选择模块,这些模块可支持的任务有管理可安装设备驱动程序、支持COM等。一个最小的Windows CE系统至少由内核和文件系统模块组成。5)基于C /OS-I
38、I的嵌入式系统开发技术1.COS-有哪些特点?它与你们使用过的其它操作系统有什么不同?COS-一个源码公开、可移植、可固化、可裁剪及占先式的实时多任务操作系统,其绝大部分源码是用ANSIC写的,使其可以方便地移植并支持大多数类型的微处理器。2.怎样移植COS-使其适用于特定的嵌入式处理器?所谓“移植”,就是使一个实时内核能在其它的微处理器或微控制器上运行。根据COS-的要求,移植COS-到一个新的体系结构上需要提供2个或3个文件: OS_CPU.H(C语言头文件) OS_CPU_C.C(C程序源文件) OSCPU_A.ASM(汇编程序源文件)其中OS_CPU_A.ASM在某些情况下不需要,但极
39、其罕见。3怎样在LPC2200或其它ARM处理器上编写简单的基于COS-的应用程序?开发基于C/OS-的嵌入式软件,步骤为:编写或获取启动代码挂接SWI软件中断编写中断及时钟节拍中断代码应用程序的编写和调试。编写和调试应用程序的步骤为:建立开发环境和连接JTAG仿真器添加C/OS-源代码和移植代码建立工程仿真调试工程4.使用COS-开发嵌入式应用系统有什么优点?uC/OS-II的使用可以提高了系统的可靠性,使系统不易崩溃,可以提高了开发效率,缩短了开发周期,能充分发挥了32位CPU的多任务潜力。6)基于Linux的嵌入式系统开发技术1简述存储管理的概念和MMU的工作原理。存储管理是一个很大的范
40、畴,主要包括存储地址映射和内存空间的分配,对地址访问的保护和限制,I/O地址映射等,存储管理机制的实现和具体的CPU以及MMU的结构关系非常紧密,操作系统内核的复杂性相当程度上来自内存管理,对整个系统的结构有着根本性的深远影响。MMU也就是“内存管理单元”,其主要作用是地址映射和对地址访问的保护和限制,MMU可以集成在芯片中,也可以作为协处理器。RM处理器中,MMU是作为协处理器CPI5的一部分实现的,MMU相关的最主要的寄存器有三个:控制寄存器,控制MMU的开关,高速缓存的开关,写缓冲区的开关等;地址转换表基地址寄存器;域访问控制寄存器。2.uClinux和标准Linux工作机制和开发过程有
41、何不同?工作机制:大量面向低端应用的低成本嵌入式处理器不包含MMU,uClinux就是专门为这些无MMU硬件的处理器而设计的嵌入式Linux操作系统。如果通过软件来实现地址翻译,系统的性能将会慢得不可接受,没有MMU硬件的处理器就不能再采用虚拟地址的工作方式。uClinux去掉了标准Linux内核中的虚拟存储管理模块,并且要求系统中的操作系统内核和所有应用程序在编译、链接、加载执行后都使用物理地址。开发过程: uClinux系统的开发过程中,开发人员必须事先手工指定可能使用的动态链接库的起始物理地址和占用的内存,并在需要使用动态链接库的应用程序中把相应的物理地址告诉应用程序。为了保证动态链接库
42、访问的有效性,必须让uClinux在内核启动过程中首先加载动态链接库,然后再加载其他应用程序。uClinux采用实地址模式工作,要求驱动程序都必须在编译阶段直接链接到内核的代码中,在编译的时候就确定了它运行时的物理地址。驱动程序不能像普通Linux系统那样通过动态加载的方式与内核动态链接。3简述Linux内核启动的一般流程。使用bootloader将内核映像载入;内核数据结构初始化(内核引导第一部分):start_kernel()中调用了一系列初始化函数,以完成kernel本身的设置,启动init过程,创建第一个内核线程外设初始化(内核引导第二部分):init()函数作为内核线程,首先锁定内核
43、,然后调用do_basic_setup()完成外设及其驱动程序的加载和初始化。4嵌入式Linux远程调试有什么特点?是如何实现的?远程调试的特点是,调试器运行于通用桌面操作系统的应用程序,被调试的程序则运行于基于特定硬件平台的嵌入式操作系统(目标操作系统)。 5.简述嵌入式系统中设备驱动的地位和主要作用。地位:设备驱动程序运行在内核态比应用程序执行的优先级要高得多设备驱动程序是操作系统内核和机器硬件之间的接口设备驱动程序是内核的一部分作用:对设备的初始化和释放把数据从内核传送到硬件和从硬件读取数据读取应用程序传送给设备文件的数据和回送应用程序请求的数据检测和处理设备出现的错误6.如何设计实现一
44、个设备驱动程序?模块化设计的设备驱动程序有什么优缺点?(1)实现一个嵌入式Linux设备驱动的大致流程如下: 定义主、次设备号,也可以动态获取。实现驱动初始化和清除函数.如果驱动程序采用模块方式,则要实现模块初始化和清除函数。 设计要实现的文件操作,定义file_operations结构。实现所需的文件操作调用,如read、write等。实现中断服务函数,并用request_irq向内核注册。将驱动编译到内核或编译成模块,用ismod命令加载。生成设备节点文件。(2)优点:将内核映像的尺寸保持在最小,并具有最大的灵活性便于检验新的内核代码,而不需要重新编译和引导 缺点:对系统性能和内存利用有负
45、面影响装入的内核模块与其他内核部分一样,具有相同的访问权限,因此,差的内核模块会 导致系统崩溃为了使内核模块能访问所有内核资源,内核必须维护符号表,并在加载和卸载模块时修改这些符号表模块间可能交叉使用功能,内核要维护模块之间的依赖性。内核在卸载模块时通知使用的模块,并释放分配的资源内核版本和模块版本的不兼容也可能导致系统崩溃。7分析和比较常见的嵌入式GUI(QT、MicroWindows、OpenGUI和MiniGUI)的优缺点。 QT优点:Qt是KDE等项目使用的GUl支持库,所以有许多基于Qt的X Windows程序可以非常方便地移植QtEmbedded版本上。缺点:QtEmbedded是
46、一个C+函数库,尽管QtEmbedded声称可以裁剪到最少630KB,但它还是对硬件提出了比较高的要求;QtEmbedded库目前主要针对手持式信息终端,不太适合对速度、功能和效率要求较高的嵌入式系统;商业使用一般要交纳授权费。 MicroWindows优点:提供兼容于XWindows和WindowsCE的API;提供了类似X Windows的客户端服务器体系结构,并提供了相对完善的图形功能,包括一些高级的功能,比如Alpha混合、三维支持、TreeType字体支持等;对显示速度、图形颜色和键盘等有很好的支持;还支持多线程,提供MPEG和DVD播放器等。缺点:图形引擎存在许多低效算法,代码质量
47、参差不齐。 OpenGUI在Linux系统上存在已经很长时间了,也支持持多种操作系统平台,比如MS-DOS、QNX和Linux等;OpenGUI也分为三层。最低层是由汇编编写的快速图形引擎;中间层提供了图形绘制API,包括线条、矩形、圆弧等,并且兼容于Borland的BGIAPI;第三层用C+l编写,提供了完整的GUI对象集;OpenGUI比较适合于基于x86平台的实时系统,可移植性比较差。 MiniGUI:方便的编程接口、使用了图形抽象层和输;入抽象层、多字体和多字符集支持(尤其是对中文的支持)、多线程机制等7)基于Windows CE的嵌入式系统开发技术1Windows CE主要有哪些开发
48、工具? Platform Builder 、eMbedded Visual C+ 、ActiveSync、Windows CE SDK2Windows CE你使用过的其它Windows操作系统有什么不同? Windows CE是一种嵌入式实时性的操作系统,在内存管理方面必须要比其它Windows操作系统更节约物理内存和虚拟地址空间。与Windows 95/98、Windows NT不同的是,Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,其操作界面虽来源于Windows 95/98,但Windows CE是基于WIN32 API重新开发、新型的信息设备的平台。 Wind
49、ows CE是一个32位、多任务、多线程的嵌入式操作系统,是微软专门为信息设备、移动应用、消费类电子产品、嵌入式应用等非PC领域设计的操作系统产品,在外观和使用的感觉上十分接近桌面Windows系统。它使用平面内存模式寻址,可以同时运行多个程序并支持一个程序中的多个线程,并且非常精炼,只有很小的内存要求。与基于PC的操作系统不同,Windows CE不需要标准硬件,反而支持各种各样的CPU(如X86、PowerPC、ARM、MIPS等),通过OEM适配层(OEM adaptation layer)可以把Windows CE适配到任何硬件平台。Windows CE是微软Windows操作系统家族的一个成员,支持用于Windows 2000XP和Windows 98等桌面Windows操作系统的Win32 API的一个子集。 综合:你认为应该采用怎样的学习步骤并重点学习哪些内容才能成为一个合格的嵌入式系统工程师,说明你的理由。嵌入式系统软件硬件密切相关,一定要打好软硬件基础。选择一个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年文化和旅游部直属事业单位招聘考试真题
- 2024年泉州市公办学校专项招聘编制内教师真题
- 2024年广东医科大学招聘事业编制人员真题
- 医疗行业的信息互通与资源共享策略研究
- 5G网络的优化与安全-洞察阐释
- 剧剧表演中的叙事方式创新与技术应用-洞察阐释
- 基因编辑技术在动物育种中的应用-第1篇-洞察阐释
- 中药天然产物活性成分提取与利用-洞察阐释
- 大气科学中的地球系统模式模拟-洞察阐释
- 影视IP改编中的文化价值重塑-洞察阐释
- 《运算的意义》(教学设计)-2023-2024学年六年级下册数学北师大版
- 高效养中蜂关键技术
- 广州小学六年级英语下册知识点归纳和习题(全册)
- (正式版)JTT 1482-2023 道路运输安全监督检查规范
- MH-T 5035-2017民用机场高填方工程技术规范
- MOOC 英国社会与文化-武汉大学 中国大学慕课答案
- MOOC 数据挖掘-国防科技大学 中国大学慕课答案
- 儿科护理行政查房
- 测温仪及测振仪的原理及使用 课件
- 船舶操纵与避碰智慧树知到期末考试答案2024年
- 食品加工肉类行业食品安全培训
评论
0/150
提交评论