2014嵌入式考试试题.doc_第1页
2014嵌入式考试试题.doc_第2页
2014嵌入式考试试题.doc_第3页
2014嵌入式考试试题.doc_第4页
2014嵌入式考试试题.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

选择题1、嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件。A. 系统软件 B. 驱动 C. ADS软件 D. 嵌入式中间件 2、ARM处理器的工作模式有(C)种。A. 5 B.6 C. 7 D.83、ARM寄存器组有(D )个寄存器。A、7 B、32C、6 D、374、下列CPSR寄存器标志位的作用说法错误的是(D)。A. N:负数 B. Z: 零 C. C: 进位 D. V: 借位5、ARM复位异常的入口地址是( A )。A、0x00000000B、0x00000008C、0x00000018D、0x000000146、下列描述不属于RISC计算机的特点的是(C)。 A流水线每周期前进一步。 B更多通用寄存器。C指令长度不固定,执行需要多个周期。D独立的Load和Store指令完成数据在寄存器和外部存储器之间的传输。7、关于COS-II应用,以下说法不正确的是(B )。A、任务可以有类型说明 B、任务可以返回一个数值 C、任务可以有形参变量D、任务是一个无限循环8、COS-II操作系统不属于( C)。A、RTOS B、占先式实时操作系统 C、非占先式实时操作系统 D、嵌入式实时操作系统9、实时操作系统中,两个任务并发执行,一个任务要等待其合作伙伴发来信息,或建立某个条件后再向前执行,这种制约性合作关系被成为(A)。A. 同步 B. 互斥 C. 调度 D. 执行10、每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是(D)。A. 嵌入式Linux提供了完善的网络技术支持;B. mCLinux是专门为没有MMU的ARM芯片开发的;C. mC/OS-操作系统是一种实时操作系统(RTOS);D. WinCE提供完全开放的源代码。11、存储一个32位数0x12345678到2000H2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为( D)。A、0x21B、0x68 C、0x65D、0x0212、ARM指令集和Thumb指令集分别是(D )位的。A. 8位,16位B. 16位,32位C. 16位,16位D. 32位,16位13、寄存器R13除了可以做通用寄存器外,还可以做(C )。A、程序计数器B、链接寄存器C、栈指针寄存器 D、基址寄存器14、下列关于存储管理单元(MMU)说法错误的是(B)。A. MMU提供的一个关键服务是使各个任务作为各自独立的程序在其自己的私有存储空间中运行。B. 在带MMU的操作系统控制下,运行的任务必须知道其他与之无关的任务的存储需求情况,这就简化了各个任务的设计。C. MMU提供了一些资源以允许使用虚拟存储器。D. MMU作为转换器,将程序和数据的虚拟地址(编译时的连接地址)转换成实际的物理地址,即在物理主存中的地址。15、在C/OS-II系统中,OSTimeTick()函数只被以下(A)函数或过程所调用。A. OSTickISR B. OSShed C. OSCtxSwD. OSIntCtxSw一、 判断题1、ARM处理器结构体系中具有T变种处理器核可以工作在ARM状态和Thumb状态。()2、ARM处理器对内存的访问只能通过Load/Store指令来实现。()3、C语言程序可以嵌套加入汇编程序模块。 ()4、调试程序时,需要停止程序运行后才可查看变量内容()5、COS-II操作系统中移植成功后即可使用文件系统(X)6、将模拟信号转换成数字信号的电路是D/A转换器。()7、Nand Flash比Nor Flash成本高,可靠性差。() 8、在COS-II操作系统中,已知Task1的优先级为12,Task2的优先级为26。假如在Task2运行过程中发生键盘中断,在执行中断服务程序时Task1进入就绪状态,则中断返回时Task1得到CPU的使用权。()9、任务创建后即开始调度(X)10、液晶工作在文本模式下时,既可以显示英文字符也可以显示汉字(X)11、若定义任务task1的优先级为12,则不能再定义其他任务的优先级也为12()12、处于就绪状态的任务只能切换到运行状态(X)13、若OSTaskSuspend (prio)函数把正在延时的任务挂起,则调用一次对应的唤醒函数即可使该任务切换到就绪状态。()14、由于CPU内部寄存器的访问速度较高,根据ATPCS标准,应尽可能使函数的参数控制在4个以下。()15、程序运行过程中的资源可以是显示器、键盘,但不可以是一个数组或变量(X)16、IIC是同步串行数据总线。()17运算放大器的输出电压范围一般大于电源电压的范围。()等待消息函数WaitMessage(0)中的“0”表示此函数的超时等待时间为0秒(X)二、填空题:(每空1分,共30分)1. 嵌入式处理器通常分为4类,即(MPU)、(MCU)、(DSP)、(SOC)。2. S3C44B0X是三星公司生产的一款基于( ARM7TDMI )核的微处理器,共有160个引脚,其中GPIO多达( 71 )个。3. ARM嵌入式开发过程中常用的调试方式有:软件模拟器、( 基于JTAG调试的ICD开发 )、( Angel调试开发)和ICE在线仿真等四种。4. 随着嵌入式系统的发展,嵌入式软件规模也日益复杂,软件结构由简单到复杂有:最简单的轮询结构、( 前后台/带中断的轮询结构 ),以及较复杂的( 函数队列 )和( 实时操作系统 )等几种型式。5. CLinux名称中的代表( 微小 ),C代表( 控制 ),从字面上看就知道它是一款适合在( 微控制器应用 )领域应用的Linux操作系统6. 嵌入式系统中,BSP是指( 板级支持包 )、GUI指( 图形用户界面 )、SOC/SOPC是指( 片上(可编程)系统 )。7. ARM处理器采用(RISC)体系结构,具有指令长度固定、大量使用( 寄存器 )、执行速度快、低功耗等特点。8. ARM嵌入式最小系统一般必须包括:处理器、存储器、输入输出接口以及必要的电源电路、( 复位电路 )、( 晶振电路 )等硬件单元电路。9. 常见的商用型嵌入式操作系统有( Vxworks )、( WinCE )等,源码公开或免费的有( uC/OS-II )、( linux )等。10. C/OS-II中,任务的状态有5种,分别是( 就绪 )、( 等待 )、( 运行 )、( 中断 )、( 休眠 )。11、 ARM处理器共有(37)个寄存器,其中通用寄存器(31)个、状态寄存器(6)个。12、 ARM处理器核具有片上总线AMBA,AMBA具体定义了(AHB)、(ASB)、(APB)三类总线。13、 ARM7TDMI具有三级流水线结构,分别是(取指)、(译码)、(执行)14、 ARM嵌入式开发过程中常用的调试方式有:(软件模拟器开发方式)、(基于JTAG的ICD开发方式)、(Angel调试开发方式)、(在线仿真器开发方式)。15、 嵌入式系统一般对操作系统的实时性有比较高的要求,按照对实时性的响应等级,嵌入式操作系统可分为(强实时系统)和(弱实时系统)系统二、 简答题(共45分)1、简述嵌入式系统及特点(5分)嵌入式系统是嵌入到对象体系中的专用计算机系统。是用于控制,监视或辅助操作机器和设备的装置。国内普遍认同的定义:以应用为中心,以计算机技术为基础,软硬件可剪裁,适应应用系统对功能可靠性,成本,体积,功耗等严格要求的专用计算机系统。特点:系统内核小,专用性强,系统精简,高实时性。2、试比较ARM7与ARM9的流水线结构?(5分)ARM7是三级流水线,分别为取指、译码、执行;ARM9是五级流水线,分别为取指、译码、执行、缓冲/数据、回写。ARM9把ARM7的三级流水线重新再分配,把执行阶段放在了译码中,把写放在了第五级。3、ARM体系结构有哪几种方法存储数据?一个32位字分别如何存储?试以0x12345678存入0x0开始的地址单元中为例加以说明。(8分)答:ARM 920T 体系结构 支持两种方法存储字数据,大端格式和小端格式。大端格式是指字数据的高字节放置在地地址中,而低字节数据放置在高地址中。小端格式是指字数据的高字节放置在高地址中,而低字节数据放置在地地址中。ARM中一个字数据是4个字节即32位的数据.。在存储器中每个地址存放一个字节。如果是小端格式,读地址0x10000000是0x78563412。如果是大端格式,读内存地址0x10000000是0x12345678。4、简述ARM微处理器对异常的响应过程。(8分)当正常的程序执行流程发生暂时的停止时,称之为异常,例如处理一个外部的中断请求。在处理异常之前,当前处理器的状态必须保留,这样当异常处理完成之后,当前程序可以继续执行。处理器允许多个异常同时发生,它们将会按固定的优先级进行处理。ARM微处理器对异常的响应过程用伪码可以描述为:R14_ = Return Link ; SPSR_ = CPSRCPSR4:0 = Exception Mode NumberCPSR5 = 0;当运行于ARM工作状态时If = Reset or FIQ then CPSR6 = 1;当响应FIQ异常时,禁止新的FIQ异常CPSR7 = 1PC = Exception Vector Address5、简述启动引导代码的作用?(7分)其相当于PC机的BIOS,主要用于开机或加电复位后对硬件设备进行初始化操作6、C/OS-II如何实现就绪任务的查找?(7分)7、什么是JTAG?ARM的JTAG接口的作用是什么?(5分)答:JTAG:是Joint Test Action Group(联合测试行动小组) 的缩写,就是IEEE1149.1边界扫描测试标准,是一种用来对复杂IC与印刷电路板上的特性进行测试的工业标准方法。按此接口标准设计的CPU可以通过边界扫描便可以被测试。基于JTAG的调试技术,是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路TAP(Test Access Port,测试访问端口),通过专用的JTAG测试工具对内部结点进行测试现在许多处理器,如在ARM7TDMI等处理器中可以通过JTAG直接控制ARM的内部总线、I/O口等信息,从而达到调试的目的。8、什么是JTAG?ARM的JTAG接口硬件测试逻辑引脚各有哪些?(8分)JTAG定义:(1)JTAG:是Joint Test Action Group(联合测试行动小组) 的缩写,就是IEEE1149.1标准(2)JTAG的建立使得集成电路固定在PCB上,只通过边界扫描便可以被测试(3)在ARM7TDMI处理器中,可以通过JTAG直接控制ARM的内部总线,IO口等信息,从而达到测试的目的。JTAG典型接口:(1)TMS:测试模式选择(Test Mode Select),通过TMS信号控制JTAG状态机的状态(2)TCK:JTAG的时钟信号(3)TDI:数据输入信号(4)TDO:数据输出信号(5)nTRST:复位信号,地电平有效9、什么是异常?ARM的异常类型有哪些?(5分)当正常的程序执行流程发生暂时的停止时,称之为异常,例如处理一个外部的中断请求。ARM体系结构所支持的异常类型有7种:复位、未定义指令、软件中断、指令预取中止、数据中止、IRQ(外部中断请求)、FIQ(快速中断请求)。10、什么是板级支持包?(5分)Board Support Package,介于硬件层与软件层之间,也称为硬件抽象层。它把系统软件与底层硬件部分隔离,使得操作系统的底层设备驱动程序与硬件无关。一般应具有相关硬件的初始化、数据的输入输出操作和硬件设备的配置等功能。11、什么是任务?写出C/OS-II中任务的一般格式。(5分)任务:本质上就是一段程序,基于嵌入式操作系统中的一个概念,要求同学理解一下在操作系统下任务的代码如何编写,在uC/OS-II下通常是一个无限的循环,一个任务形式上与其他函数一样,有函数返回类型,有型参,但任务绝不会返回。12、移植C/OS-II处理器需要满足哪些条件?(5分)移植C/OS-II处理器需要满足的条件:处理器的C编译器能产生可重入代码。(代码的可重入性是保证完成多任务的基础,除了在C程序中使用局部变量以外,还需要C编译器的支持)用C语言就可以打开和关闭中断;处理器支持中断并且能产生定时中断(通常在10Hz-1000Hz);处理器能支持并容纳一定量数据的硬件堆栈;处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令13、试比较C/OS-II、CLinux各有何特点?(5分)uC/OS-II是实时多任务内核,内核代码小10K;源代码公开;抢占式;可裁减。uClinux 内核也小,但比uC/OS-II大许多;支持文件系统、Tcp/Ip;源码公开且免费;需要加装实时模块增强实时性。三、 综合题:(共20分)1、见右侧2、答:建立三个uC/OSII的任务,一个用于检测KEY按键输入(P0.20口的输入),为按键检测任务;另一个任务用于控制LED流水灯,为LED控制任务,还有一个任务是控制蜂鸣器,称作蜂鸣器控制任务。通过三个任务实现LED流水灯、蜂鸣器、按键之间的关联切换。#include config.h #include stdlib.h #define KEY (120)/ P0.20 为按键的控制I/O #define BEEP (17)/ P0.7 为蜂鸣器的控制I/O / LED 控制宏函数定义。LED1-LED8 的控制I/O 为P1.16-P1.23 #define LED_ADJ 16 #define LED_IOCON (0xFFLED_ADJ) #define LED_OFF() IO1SET=LED_IOCON #define LED_DISP(dat) LED_OFF(); IO1CLR=(dat)LED_ADJ) 蜂鸣器鸣叫No #define TaskStkLengh 100 /定义用户任务堆栈长度 OS_STK TaskStkledTaskStkLengh; /定义用户任务led 的堆栈 OS_STK TaskStkbeepTaskStkLengh; / 定义用户任务beep 的堆栈 OS_STK TaskStkkeyTaskStkLengh; / 定义用户任务key 的堆栈 OS_EVENT *Mybox;/定义邮箱指针 void Taskled(void *pdata); /声明Taskled void Taskbeep(void *pdata); /声明Taskbeep void Taskkey(void *pdata); /声明Taskkey /* 主函数 */ int main (void)/将main()函数设置为整型为了防止编码警告 OSInit(); /创建显示任务,进入低优先级任务 OSTaskCreate (Taskled,(void *)0, &TaskStkledTaskStkLengh - 1, 5); OSStart (); return 0; /* Taskled 任务 */ void Taskled(void *pdata)/显示任务(低优先级) const uint8 DISP_TAB42=0xff,0x00, 0x33,0xcc,0x55,0x33,0xcc,0xaa, 0x03,0x06,0x0c,0x18,0x30,0x60,0xc0,0x00, 0xc0,0x60,0x30,0x18,0x0c,0x06,0x03,0x00, 0x81,0xc3,0xe7,0xff,0xe7,0xc3,0x81,0x00, 0xff,0x7e,0x3c,0x18,0x00,0x18,0x3c,0x7e, 0xff,0x00; INT8U err,i; pdata = pdata;/防止编译警告 TargetInit ();/初始化系统硬件 PINSEL0 = 0x00000000; / 设置P0 口管脚连接GPIO IO0DIR = BEEP; / 设置蜂鸣器控制口为输出 IO0SET = BEEP;/初始化蜂鸣器 IO1DIR = LED_IOCON; / 设置LED1LED8 的控制口为输出 Mybox = OSMboxCreate(void*)0);/创建消息邮箱 LED_OFF(); IO0CLR = BEEP; / 控制蜂鸣器响 OSTimeDly(OS_TICKS_PER_SEC*3); IO0SET = BEEP; /创建beep任务 OSTaskCreate (Taskbeep,(void *)0, &Ta

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论