计算机三级(嵌入式系统开发技术)机试模拟试卷61 (题后含答案及
解析)
题型有:1. 选择题 2. 填空题 3. 综合题
选择题
1. 下面关于嵌入式系统的叙述中,错误的是( )。 A.嵌入式系统所涉及的应用领域非常广泛 B.嵌入式系统性能较低,价格也比较便宜 C.嵌入式系统大多具有不同程度的实时性
D.嵌入式系统与通用计算机一样,也由硬件和软件两部分组成
正确答案:B
解析:嵌入式系统所涉及的应用领域非常广泛,诸如通信、仪器、医疗、家用电器、娱乐设备、船舶、汽车等领域。嵌入式系统与通用计算机一样,也由硬件和软件两部分组成, 大多具有不同程度的实时性。在高端应用领域也需要高性能的嵌入式系统,价格也不会很便宜。综上所述,B选项表述有误,故选B。
2. 按照嵌入式系统的技术复杂程度进行分类,可以把嵌入式系统分为低端系统、中端系统和高端系统三大类。下面属于高端嵌入式系统的是( )。
A.电冰箱 B.智能手机 C.空调器 D.复印机
正确答案:B 解析:嵌入式系统所涉及的应用领域非常广泛,按系统的软硬件技术复杂度,嵌入式系统分为低端系统、中端系统和高端系统。选项中智能手机属于高端系统,低端系统一般在工业领域和家电领域有较高使用率。故本题选择B。
3. 嵌入式系统的性能在很大程度上是由CPU 决定的,CPU 的性能主要表现为指令执行速度的快慢。下列选项中不直接影响CPU速度的是( )。
A.指令系统结构 B.cache容量
C.指令流水线数目
D.I/O接口的类型和数目
正确答案:D
解析:影响CPU性能的主要因素有:主频、指令系统、高速缓冲存储器的容量和结构、逻辑结构(包括指令流水线数目)。故本题选D。
4. 片上系统(SoC)是嵌入式处理芯片的一个重要品种,下列叙述中错误的是( )。
A.SoC是集成电路加工工艺进入到深亚微米时代的产物 B.SoC既能把数字电路也能把模拟电路集成在单个芯片上
C.需要时,SoC使用单个芯片可以进行数据的采集、转换、存储和处理,并支持多种I/O功能
D.包含32位CPU的SoC设计制造难度很大,目前还未广泛使用
正确答案:D
解析:SoC是集成电路加工工艺进入到深亚微米时代的产物,既能把数字电路也能把模拟电路集成在单个芯片上;需要时,SoC使用单个芯片可以进行数据的采集、转换、存储和处理,并支持多种I/O功能。目前大多数32位的嵌入式处理芯片均为SoC,SoC逐渐呈为集成电路设计的主流发展趋势。故此题选择D。
5. 假设数码相机一次可连续拍摄1600万色(24位真彩色)的4096×3072分辨率的彩色相片可达400张,其数据压缩比为4,那么它所使用的存储卡容量大约是( )GB。
A.1 B.2 C.4 D.8
正确答案:C
解析:一幅图像的数据量可以按下面公式计算:图像数据量=图像水平分辨率*图像垂直分辨率*像素深度/8。故本题选C。
6. 手机最基本的功能是打电话和接听电话,在此过程中手机必须对话音信号进行处理,下面有关叙述中错误的是( )。
A.在发送话音信号时必须对人们的讲话声音进行数字化 B.数字话音需要进行数据压缩处理
C.在接听电话时必须把接收到的数字话音信号恢复为模拟信号 D.通话过程产生的数据流量比传输短消息要少得多
正确答案:D 解析:手机也是嵌入式系统的应用。手机在打电话和接听电话的过程中就是Udine语音信号的数字化处理过程。在发送话音信号时必须对人们的讲话声音进行数字化,在接听电话时必须把接收到的数字话音信号恢复为模拟信号。通话过程产生的数据流量比传输短消息要多得多。故本题D项错误。
7. 下面关于WiFi无线局域网叙述中,错误的是( )。 A.它借助无线电波传输信息,很快将取代有线网络 B.无线局域网需使用无线网卡、无线接入点等设备构建 C.无线接入点也称为“热点”
D.无线接入点实际上就是一个无线交换机或无线Hub,相当于手机通信中
的“基站”
正确答案:A
解析:无线接入点也称为“热点”,借助无线电波进行数据传输,无线局域网需使用无线网卡、无线接入点等设备构建,目前还不能完全脱离有线网络,只是有线网络的补充。无线接入点实际上就是一个无线交换机或无线Hub,相当于手机通信中的“基站”。故此题选A。
8. 下面关于无线接入互联网的技术中,错误的是( )。 A.使用WiFi接入互联网时,必须有可用的AP(接入点) B.WiFi的数据传输速率可达100Mb/s
C.借助3G或者4G移动电话网,也可以接入互联网 D.4G接入技术的速度最快,WiFi将被它取代
正确答案:D
解析:WiFi的传输速率目前可以达到100Mb/s,而4G指第四代移动通信技术,其传输速率可达到20Mbps,理论上最高可以达到高达100Mbps。故只有D项不正确。
9. 关于嵌入式处理器架构说法错误的是( )。 A.不同处理器有不同的指令集架构
B.ARMv7A处理器的典型代表是ARM11
C.ARMv7M版本仅支持Thumb–2指令集的子集。
D.ARMv8A使用64位寄存器,支持ARM、Thumb和A64三种指令集
正确答案:B
解析:不同的嵌入式处理器有不同的指令集架构,ARMv7A处理器的典型代表是Cortex–A系列,而ARM11采用的是ARMV6的体系结构。故此题选B。
10. 在以下ARM处理器中,面向中低端应用,成本最低的ARM Cortex嵌入式处理器是( )。
A.ARM Cortex–M0 B.ARM Cortex–M3 C.ARM Cortex–M4 D.ARM Cortex–R4
正确答案:A
解析:面向中低端应用的主要是Cortex–M系列处理器,一般面向控制领域,选项中成本最低的是ARM Cortex–M0处理器。故此题选A。
11. 以下按照ARM公司的分类,不属于ARM Cortex应用处理器的是( )。 A.Cortex–A9 B.Cortex–A7 C.Cortex–A57
D.Cortex–R7
正确答案:D 解析:ARM公司把从ARM7到ARM11为内核的系列处理器称为经典ARM处理器,而ARM6内核系列以及更早的系列已经很罕见了,很多已经淘汰不用了。把基于Cortex–R(Real Time)和Cortex–M(MicroController)为内核的系列处理器称为嵌入式Cortex处理器,这一类芯片通常被称为嵌入式微控制器,而把基于Cortex–A(A=Application)内核的系列处理器称为应用型Cortex处理器。故选D。
12. 以下不具有Thumb–2状态的ARM处理器是( )。 A.Cortex–M0 B.Cortex–M3 C.ARM9 D.SC300
正确答案:C
解析:Thumb–2状态是ARMv7版本的ARM处理器所具有的新状态,如Cortex系列。ARM9不具有Thumb–2状态。故此题选C。
13. 关于经典ARM处理器的工作模式,以下说法错误的是( )。 A.中止模式是处理普通中断的模式 B.用户模式是程序正常执行的工作模式 C.快速中断模式用来处理快速中断FIQ
D.管理模式是操作系统的保护模式,处理软中断SWI
正确答案:A 解析:ARM体系结构支持7种工作模式,取决于当前程序状态寄存器CPSR的低5位的值。工作模式间可以相互切换,但是是有条件的。中止模式是处理存储器故障,实现虚拟存储器和存储器保护。用户模式是程序正常执行的工作模式,快速中断模式用来处理快速中断FIQ,管理模式是操作系统的保护模式,处理软中断SWI。故此题选A。
14. 以下关于ARM状态寄存器CPSR的说法错误的是( )。 A.CPSR决定经典ARM处理器的工作模式 B.CPSR决定是否允许中断
C.CPSR中存放了运算结果产生的一些标志 D.CPSR可读,但不可写
正确答案:D
解析:CPSR(当前状态寄存器)可以读写,当中存放了运算结果产生的一些标志,决定经典ARM处理器的工作模式和是否允许中断。此题选择D。
15. 执行ARM指令LDRH R1,[R2,#4]!之后,以下说法错误的是( )。
A.R1的值加4 B.R2的值加4
C.内存中的数据保持不变 D.R1和R2的值均改变
正确答案:A
解析:LDRH是存储器到寄存器的数据传送指令,半字数据加载指令。题中是基址加变址寻址,且存储器值改变,即R1→[R2+4]、R2←R2+4;所以此题选择A。
16. 已知R1=0x00000088,执行ARM指令TST R1,#8后,R1的值为( )。 A.0x00000008 B.0x00000011 C.0x00000088 D.0x00000440
正确答案:C
解析:TST是位测试指令,将寄存器的值与立即数按位与。题中是立即数寻址。故选C。
17. 以下ARM指令正确的是( )。 A.SUB R4,#1 B.ORR R2,#9
C.ADCS R7,R7,#1 D.JMP PC,LR
正确答案:C
解析:A选项中SUB是减法指令,缺少寄存器;B选项中是逻辑或指令,同样缺少寄存器;C项正确;D选项JMP是无条件跳转指令。故选C。
18. 在ARM汇编语言中,小端模式下,通过伪指DataTab DCW 0x1234,0x5678,0x9ABC,0xDEF0在内存中定义了这4个16位无符号数,R1=0x00000089,则在执行伪指令LDR R0,=MyData后再执行指令STR R1,[R0,#4]!,则( )。
A.DataTab指示的内存区域数据不变 B.R1的值不变,仍为0x00000089 C.R0的值不变
D.R1中的值为0xDEF09ABC
正确答案:B
解析:在小端模式下,32位数据字的高字节存放在高地址,而低字节存放在低地址,这与通用微型计算机的存储器的信息存放格式相同。LDR是存储器到寄存器的数据传送指令,STR是寄存器到存储器的数据传送指令。故此题选B。
19. 下面是关于典型嵌入式系统的调试测试接口电路的叙述,其中错误的是( )。
A.JTAG是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试
B.基于ARM的典型嵌入式系统的调试测试接口电路常采用JTAG C.多个器件的JTAG接口可以串联在一起形成JTAG链 D.JTAG接口通常不能实现在线编程功能
正确答案:D 解析:基于ARM的典型嵌入式系统的调试测试接口电路常采用JTAG,JTAG是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试;JTAG接口可以实现在线编程功能,多个器件的JTAG接口可以串联在一起形成JTAG链。故D项错误。
20. AMBA是ARM公司公布的总线协议, 是用于连接和管理片上系统中功能模块的开放标准和片上互连规范。下面列出的ARM处理芯片中的4个组件,哪一个组件是挂在AMBA的系统总线上的?( )
A.中断控制器 B.CAN C.RTC D.SPI
正确答案:A
解析:基于AMBA总线的处理器使用系统总线和外围总线构成来连接高速系统组件和低速外围组件,高带宽高性能外围接口通常连接系统总线,而速度不高的外部接口连接外围总线。中断控制器是直接连接到系统总线上,其余三项是外围总线连接的硬件组件。故选A。
21. 下面是关于ARM处理器中模拟通道组件的叙述,其中错误的是( )。 A.利用ARM处理器内嵌的ADC可完成从模拟信号到数字信号的变换 B.利用ARM处理器内嵌的DAC可完成从数字信号到模拟信号的变换 C.有些ARM处理器内部的模拟组件除包括ADC和DAC外,还包含比较器等
D.ARM处理器内嵌的ADC的A/D转换精度与ADC的位数无关
正确答案:D 解析:有些ARM处理器内部的模拟组件除包括ADC和DAC外,还包含比较器;ADC和DAC可以分别完成模拟信号到数字信号的变换和数字信号到模拟信号的变换,其转换精度与位数正相关。故D选项错误。
22. 下面关于嵌入式系统使用的存储器的叙述中,错误的是( )。 A.新型存储器FRAM和MRAM是非易失性存储器
B.EEPROM是一种可电擦除可编程的只读存储器,可以在线改写和擦除信息
C.NOR Flash ROM的特点是以字节为单位随机存取 D.存储容量达几十GB(甚至更高)的微硬盘,其内部的存储体主要是Flash ROM
正确答案:D
解析:新型存储器FRAM和MRAM是非易失性存储器,EEPROM是一种可电擦除可编程的只读存储器,可以在线改写和擦除信息,NOR Flash ROM的特点是以字节为单位随机存取,存储容量达几十GB(甚至更高)的微硬盘,其内部的存储体主要是NAND Flash。故此题选D。
23. 下面关于SPI的叙述中,错误的是( )。 A.SPI是一种同步串行外设接口 B.SPI是一种全双工串行外设接口 C.通过SPI只能连接两个设备
D.通过SPI可以方便地实现几Mb/s(或更高)的数据传输速率
正确答案:C
解析:SPI(Serial Peripheral Interface)总线系统是一种同步串行外设接口,允许MCU与各种外围设备以串行方式进行通信、数据交换。外围设备包括Flash、RAM、ADC、网络控制器和MCU等。SPI接口总线配置灵活,可用于单主机单从机配置、单主从互换配置、单主多从配置和多主多从配置。故选C。
24. 下图为基于ARM处理器的嵌入式系统的键盘接口。下面关于该键盘接口的叙述中,正确的是( )。
A.图中所示的键盘接口采用了线性键盘的结构 B.为简化设计,图中的R1~R4可以直接短接 C.可采用中断方式读取按键的特征值
D.读取按键的特征值时,GPG4~GPG7作为输入接口
正确答案:C 解析:图中所示的键盘接口采用了矩阵键盘的结构,可采用中断方式读取按键的特征值,读取按键的特征值时,GPG5~GPG8作为输入接口。故选C。
25. S3C2410与一位共阳接法的8段LED数码管的连接如下图所示。下面与该图相关的叙述中,错误的是( )。
A.图中的U1(74HC573)具有对数码管的各LED进行驱动的功能 B.为使图中的数码管显示字符“0”,图中U1(74HC573)的8Q~1Q的状态应为00111111
C.图中的GPE7~GPE0引脚是S3C2410的GPIO端口的部分引脚
D.仅GPE7~GPE0引脚状态发生变化,不会引起数码管显示内容的变化
正确答案:B
解析:图中采用共阳极接法,所以要显示字符“0”,图中U1(74HC573)的8Q~1Q的状态应为11000000。故B项错误。
26. 下面关于USB的叙述中,错误的是( )。 A.各个USB版本均具有全双工通信能力
B.各个USB版本均采用差分方式传输数据信号
C.USB设备接入USB总线时,采用同名端(同名引脚)相连的方式 D.USB 3.0的最大数据传输速率为5Gbps
正确答案:A
解析:USB总线(1.1和2.0)有4根信号线,采用半双工差分方式,用来传送信号并提供电源:USB设备和USB总线接口的连接是采用同名端相连的方式;USB 3.0的最大数据传输速率为5Gbps。故A选项错误。
27. 若利用S3C2410的UART1进行通信,希望的波特率为19200bps,相应的波特率发生器对100MHz的时钟频率进行分频,则波特率除数寄存器UBRDIV1的值应设置为( )。
A.837 B.107 C.324 D.12
正确答案:C 解析:UART的波特率由除数寄存器决定,也取决于外部时钟,关系式如下:UBRDIVn=INT(UCLK/(波特率ⅹ16))–1,UCLK可以是PCLK,还可以是UEXTCLK,由相应控制寄存器决定。故选C。
28. 下面关于CAN的叙述中,错误的是( )。
A.CAN可实现多主工作方式,CAN网络上的节点在网络空闲时均可主动地向网络发送信息
B.CAN总线的数据帧由7个不同的域组成
C.通过CAN数据帧发送数据时,每次发送的数据必须固定为8个字节 D.CAN总线采用差分方式进行信息传输
正确答案:C
解析:CAN总线采用差分传输,控制器内置CRC校验,传输可靠性强,可构成多主多从系统,即同一时刻允许多个主从机同时进行数据传输。CAN总线的数据帧是由7个不同的域组成:帧起始、仲裁域、控制域、数据域、CRC域、应答域、帧结尾。数据域由数据帧的发送数据组成,它可以是0~8B,每字节包含8位,按照高位在前,低位在后的原则发送。故选C。
29. 下列各项中,不属于实时操作系统应该具备的特征的是( )。 A.支持时间片轮转调度算法
B.任务切换时间和中断延迟时间确定 C.必须支持多级中断嵌套处理机制 D.支持实时抢占式调度
正确答案:A
解析:IEEE的实时UNIX分委会认为实时操作系统应该具备7个特征:具有异步I/O和中断处理能力;任务切换时间和中断延迟时间确定;优先级中断和调度;抢占式调度;内存锁定;连续文件;同步。所以此题选A。
30. 下列关于HAL的描述中,不正确的是( )。 A.HAL位于硬件和操作系统内核之间
B.术语HAL和Bootloader具有相近的含义,有时甚至可以相互替代使用 C.引入HAL的目的是对硬件进行抽象 D.HAL改善了操作系统的可移植性
正确答案:B
解析:HAL(硬件抽象层)位于硬件电路板和操作系统之间,改善了PC机操作系统的稳定性,实现了Windows NT的可移植性;HAL隐藏了硬件的差异性,使得操作系统在不同的硬件平台上运行时,内核的代码不需要改动,从而改善了操作系统的可移植性;它是嵌入式硬件电路板的最基本软件。故B项不正确。
31. 下列关于Bootloader的陈述中,不正确的是( )。
A.Bootloader主要完成内存加电自检、外设存在自检、初始化外围设备、加载和启动操作系统等功能
B.QNX是支持多种嵌入式CPU的Bootloader程序
C.大多数从Flash存储器上启动的bootloader采用stage1和stage2两个阶段完成操作系统的引导加载
D.Bootloader的实现依赖于CPU的体系结构
正确答案:B 解析:嵌入式系统加电后执行的第一批最初操作称为引导或者自举,对应的程序称为引导程序或者引导加载程序(Bootloader),主要完成内存加电自检、外设存在自检、初始化外围设备、加载和启动操作系统等功能;Bootloader的实现依赖于CPU的体系结构,U–Boot可支持多种嵌入式CPU的Bootloader程序;大多数从Flash存储器上启动的bootloader采用stage1和stage2两个阶段完成操作系统的引导加载。故B项不正确。
32. 下列关于Linux的陈述中,不正确的是( )。
A.Linux内核的主要作用包括:进程管理与调度、内存管理、提供行命令解释器、进程间通信等
B.Linux系统最初以Unix为原型
C.Linux使用GPL授权,是自由软件家族中的一个软件
D.Linux的虚拟文件系统(VFS)向上层软件提供了不同逻辑文件系统的统一接口
正确答案:A
解析:Linux是目前唯一可免费获得的、能为多用户提供多任务、多线程功能的大型操作系统,Linux使用GPL授权,是自由软件家族中的一个软件;Linux内核的主要作用是:进程管理与调度、内存管理、文件管理、网络接口和进程间通信。它为用户进程提供了一个虚拟接口(系统调用)。运行在单独的内核地址空间,每个用户进程则使用自己的虚拟地址空间; Linux采用宏内核结构,驱动程序可以被直接编译到Linux内核中并在内核启动时加载到内存, 亦可以模块形式存储在文件系统中并在需要时被动态加载和卸载。故只有A项不正确。
33. 在μC/OS–II操作系统下,能使运行态任务转入等待态的系统函数是( )。
A.OSSemPost( ) B.OSTaskCreate( ) C.OSTaskDel( ) D.OSTimeDly( )
正确答案:D
解析:绝大多数情况下,μC/OS–II的每个任务都是一个无限的循环。每个任务都处在以下5种状态之一的状态下。这5种状态是休眠态、就绪态、运行态、挂起态(等待某一事件发生)和被中断态,能使等待态任务转入就绪态的系统函数是OSSemPost( )。故D选项正确。
34. 在μC/OS–II操作系统下,处于运行态的任务调用系统函数OSSemPend( )后将转入( )。
A.等待态 B.被中断态 C.就绪态 D.休眠态
正确答案:A
解析:运行态指得到了CPU的控制权正在运行之中的任务状态。因为μC/OS–II是抢占式内核,所以处于运行态的任务一定是当前就绪任务集里的最高优先级任务。处于运行态的任务调用系统函数OSSemPend( )后将转入等待态。故A项正确。
35. 在μC/OS–II操作系统下,中断服务子程序代码完成的操作不包括( )。
A.保存全部CPU寄存器到堆栈 B.将被中断的任务挂起 C.执行中断返回指令
D.调用OSIntExit( )函数
正确答案:B
解析:中断服务子程序的伪码结构如下:保存全部CPU寄存器到栈;调用OSIntEnter( )或者对OSIntNesting变量加1;执行中断服务代码,或者发出IPC
消息通知特定任务去执行中断服务;调用OSIntExit( )函数:;恢复所有CPU寄存器:执行中断返回指令。故选B。
36. 下列关于μC/OS–II操作系统内核任务调度的说法中,不正确的是( )。
A.进行中断级任务级调度的条件之一是:当前任务的优先级比处于就绪态的最高优先级任务的优先级高
B.中断级的任务调度是调用函数OSIntExit( )完成的
C.进行中断级任务级调度的条件之一是:所有的中断服务程序均已经执行完毕
D.内核通过系统函数OS_TASK_SW( )进行任务级的任务调度
正确答案:A
解析:μC/OS–II总是运行处于就绪态任务中优先级最高的那一个。当前运行态任务因等待某一事件而被阻塞时,或者当前有更高优先级的任务处于就绪态时,都有可能进行任务级的任务调度,中断级的任务调度是调用函数OSIntExit( )完成的:任务级的调度是由函数OSSched( )完成的。OSSched( )函数是任务调度的前导函数,判断进行任务调度的三个条件是否满足。这三个条件是:(1)中断嵌套层数共享全程变量OSIntNesting=0,也就是所有的ISR已经执行完毕。(2)任务调度加锁层数共享全程变量OSLockNesting=0,也就是调度没有被禁止。(3)就绪表查找到的最高优先级任务的优先级比当前任务的优先级高。当发生任务级的任务调度时,内核进行任务级的任务切换,保存当前任务的上下文,并恢复新任务的上下文。故A项不正确。
37. 下列关于μC/OS–II操作系统时间管理的陈述中,不正确的是( )。 A.调用OSTimeDly( )函数会使μC/OS–II进行一次任务调度 B.用户必须在多任务调度启动之后激活时钟节拍器 C.运行态任务调用OSTimeDly( )后将转入等待态
D.任务A调用OSTimeDlyHMSM( )后,一旦有任务B通过调用OSTimeDlyResume( )取消了延时,任务A就会立即转入运行态
正确答案:D
解析:μC/OS–II能够提供周期性时钟信号(即所谓的时钟节拍),用于实现任务的正确延时和超时确认。调用OSTimeDly( )函数会使μC/OS–II进行一次任务调度,运行态任务调用OSTimeDly( )后将转入等待态。用户必须在多任务系统启动以后再激活时钟节拍信号发生器,也就是在调用OSStart( )之后。换言之,在调用OSStart( )之后做的第一件事是初始化定时器中断。故D项错误。
38. μC/OS–II操作系统通过事件控制块ECB支持任务间通信。下列说法中错误的是( )。
A.中断服务程序不能等待信号
B.任务可以通过ECB向其他任务发信号
C.多个任务可以同时等待同一事件发生。当该事件发生后,所有等待该事
件的任务都能得到该事件并进入运行状态
D.中断服务程序可以通过ECB发信号
正确答案:C
解析:μC/OS–II的事件控制块ECB(Event Control Block)是用于实现信号量管理、互斥型信号量管理、消息邮箱以及消息队列管理的ITC功能函数的基本数据结构。任务或中断服务子程序可以给事件控制块ECB发信号。只有任务可以等待另一个任务或中断服务子程序通过事件控制块ECB给它发送信号,而中断服务子程序是不能等待事件控制块ECB给它发送信号的。处于等待状态的任务可以指定一个最长等待时间,以防止因等待的事件没有发生而无限期地等待下去。多个任务可以同时等待同一事件的发生。在这种情况下,当该事件发生后,所有等待该事件的任务中,只有优先级最高的任务得到该事件并进入就绪状态,准备执行。当事件控制块ECB是一个信号量时,任务可以等待它,也可以给它发送消息。故本题选C。
39. 嵌入式系统开发时所用的集成开发环境,包含许多软件工具。下面所列举的工具中,哪一个不属于集成开发环境所包含的软件工具。( )
A.项目管理器 B.在线仿真器 C.文本编辑器 D.编译连接器
正确答案:B 解析:嵌入式系统开发时所用的集成开发环境中一般包括项目管理器、文本编辑器和编译连接器等,而在线仿真器是属于嵌入式系统的调试工具。所以本题选B。
40. 下面有关RVDS的说法中,不正确的是( )。
A.RVDS是用于开发基于ARM系列CPU应用系统的开发套件 B.RVDS也可用来开发基于51系列CPU的应用系统
C.RVDS包含有编辑器、编译连接器、调试器,不包含指令集仿真器 D.RVDS支持基于在线仿真器的调试方式来调试目标系统
正确答案:C
解析:RVDS(RealView Development Suite)是ARM公司推出的基于ARM系列CPU进行开发的工具套件,它支持所有ARM芯片,包括Cortex全系列,还支持其他内核的处理器,如51系列等。与ADS1.2比较而言,其生成的代码紧凑、执行效率高。要利用RVDS来调试实际目标板上运行的程序,需要借助RealView–ICE仿真器。RVDS开发工具套件中,主要包括工程管理器(IDE)、编译连接器(RVCT)、调试器(RVD)和指令集仿真器(RVISS)等。故C项错误。
填空题
41. 下图是嵌入式系统硬件部分的逻辑组成及其与外部世界关系的示意图,其中CPU I,的组成部分A是41【】:组成部分B是【42】。
正确答案:【41】运算器 【42】存储器
解析:本题主要考查嵌入式系统硬件部分的逻辑组成及其与外部世界的关系,硬件的主体是中央处理器和存储器,他们通过I/O接口和I/O设备与外部世界联系,并借助总线相互连接。中央处理器(CPU)由运算器、控制器、寄存器、高速缓冲存储器(Cache)等部件组成,故A是运算器;B是存储器。
42. 数字图像的文件格式有多种,不同的文件格式采用不同的编码方法,具有不同的特点,适合不同的应用。通常,数码相机中大多使用【43】图像文件格式,www网页中具有动画效果的插图或剪贴画其文件格式是【44】。
正确答案:【43】JPEG【44】GIF
解析:此题考查数字图像的文件格式。数字图像的文件格式包括BMP,TIF(或TIEF),GIF,JPEG,PNG等,各有特点,适合不同的应用需求。JPEG是静止图像数据压缩编码的国际标准,它特别适合处理各种连续色调的彩色或灰度图像,算法复杂度适中,软硬件实现皆可,目前已在互联网和数码相机中得到广泛应用。GIF是目前互联网上广泛使用的一种图像文件格式,它的颜色数目较少(不超过256色),文件特别小,适合互联网传输。
43. 无线局域网采用的通信协议主要是【45】,通常也称为Wi–Fi,它有几种不同的数据传输速率,其中【46】协议的数据传输速率可达108Mbps甚至更高,可以满足传输语音、数据、图像等的需要。
正确答案:【45】802.11【46】802.11n
解析:此题主要考查无线局域网的主要通信协议IEEE 802.11(俗称wifi)。IEEE 802.11n使用2.4GHz频段和5GHz频段,传输速度300Mbps,最高可达600Mbps,可向下兼容802.11b、802.11g。
44. ARM处理器采用的指令集结构是【47】,其中面向实时系统的嵌入式Cortex系列是【48】。
正确答案:【47】RISC【48】ARM Cortex–R
解析:此题考查ARM处理器的指令集结构以及嵌入式Cortex系列。ARM处理器的指令集结构有两种:RISC和CISC,ARM处理器采用RISC结构。Cortex–A系列是面向高端应用的处理器核,Cortex–R系列是面向实时控制的处理器,Cortex–M系列是面向微控制器的处理器核。
45. 在ARM处理器中,作为记录程序状态的寄存器是【49】,其中状态位T的作用是在ARM状态与Thumb状态间进行切换,当T=1时处理器处于的状态是【50】状态。
正确答案:【49】程序状态寄存器CPSR【50】Thumb
解析:本题考查ARM处理器中的程序状态寄存器CPSR的相关知识。T为ARM与Thumb指令切换,T=1时执行Thumb指令,否则执行ARM指令。
46. 已知R1=0xFF115577,R2=0x11000011,则执行指令于ORR R0,R1,R2后,寄存器R0=【51】,R2=【52】。
正确答案:【51】0xFF115577【52】0x11000011
解析:本题考查逻辑或指令ORR的使用。ORR表示逻辑或。和0相或保持不变,和1相或置1。ORR R0,R1,R2中是将R1和R2相或后赋给R0,R2保持不变。
47. 已经R0=8000,R1=8800,执行指令MOV.R0,R1,15R#后,R0=【53】,R1=【54】。
正确答案:【53】2200【54】8800
解析:本题考查MOV指令和移位操作指令的使用。MOV R0,R1, LSR#2表示将R1中的内容右移两位后送到R0中,左端用0来填充。8800的二进制为1000100000000000,右移两位后变为0010001000000000,即为2200。R1保持不变。
48. 将R1指示区域中的一个字节数据读入R2,这条指令应是【55】R2,[R1]。将R2中的一个字写入由R0+4指示的内存区域中,并将地址自动更新的指令应是【56】R2,[R0+4]!。
正确答案:【55】LDRB【56】STR
解析:本题考查LDRB和STR指令的使用方法。LDRB指令用于从存储器中将一个8位的字节数据传送到目的寄存器中,同时将寄存器的高24位清零。当程序计数器PC作为目的寄存器时,指令从存储器中读取的字数据被当作目的地址,从而可以实现程序的跳转。STR指令用于从源寄存器中将一个32位的字数据传送到存储器中。该指令在程序设计中比较常用,且寻址方式灵活多样,使用方式可参考指令LDR。
49. 嵌入式系统使用的存储器有多种类型,按照所处物理位置可分为【57】存储器和片外存储器以及外部存储设备,按照存储信息的不同又可分为程序存储器和【58】存储器。
正确答案:【57】片内【58】数据 解析:本题主要考查嵌入式系统的存储器的分类。嵌入式系统使用的存储器有多种类型,按照其存取特性可分为随机存取存储器(RAM)和只读存储器(ROM):按照所处物理位置可分为片内存储器(芯片内置的存储器)和片外存储器(外部扩展的存储器)以及外部存储设备;按照存储信息的不同可分为程序存储器和数据存储器。
50. 对于内存容量而言,1 KB=【59】B:而对于外存(如磁盘、u盘等)容
量而言,1 KB=【60】B。
正确答案:【59】1024【60】1000 解析:本题主要考查内存容量和外存容量的区别以及其换算关系。存储器容量是指每一个存储芯片或模块能够存储的二进制位数,它以存储1位二进制位为最小单位(b),容量单位有字节(B)、千字节(KB)、兆字节(MB)、吉字节(GB)、太字节(TB)、拍字节(PB)、艾字节(EB)、泽字节(ZB)以及尧字节(YB)等。对于内存容量而言,这些容量单位之间的相互关系均以1024倍表示;对于外存容量而言,这些容量单位之间的相互关系却以1000倍表示。
51. UART的中文名称是通用【61】收发器,它由发送器、接收器、控制单元以及【62】发生器等构成。
正确答案:【61】异步【62】波特率
解析:本题考查UART的概念及其组成。串行异步通信接口通用异步收发器(Universal Asynchronous Receiver/Transmitter, UART)常用于全双工串行异步通信。UART由发送器、接收器、控制单元、波特率发生器等构成。
52. 三星公司基于ARM9内核的S3C2410嵌入式微处理器芯片使用由AHB总线和APB总线组成的AMBA总线。对于高速组件采用【63】总线连接,而对于低速外设接口则采用【64】总线连接。
正确答案:【63】AHB【64】APB
解析:本题考查基于ARM9内核的S3C2410嵌入式微处理器芯片的AMBA总线的相关知识。AHB(Advanced High–performance Bus,先进高性能总线)用于连接高性能系统组件或高带宽组件。APB(Advanced Peripheral Bus,先进外围总线)用于连接所有通用外设组件。
53. 三星公司基于ARM9内核的s3C2410嵌入式处理器芯片的电源管理模块共有【65】种工作模式。【66】模式下不使用PLL时钟(MPLL关闭不使用),由外部晶体或外部时钟直接提供给其它组件使用。
正确答案:【65】4【66】慢速
解析:本题考查基于ARM9内核的S3C2410嵌入式处理器芯片的电源管理模块。电源管理模块具有正常模式(NORMAL MODE)、慢速模式(SLOW MODE)、空闲模式(IDLE MODE)和掉电模式(POWER_OFF MODE)共四种模式。慢速模式下不使用PLL时钟(MPLL关闭不使用),这样功耗降低,仅使用外部晶体或外部时钟直接提供给其他组件使用,不通过锁相环电路(低速情况无需锁相处理)。
54. 在μC/OS–Ⅱ启动过程中,BootLoader执行完毕后,执行应用程序主文件中main( )时,依次执行的三个主要的函数是:①OSInit( );②【67】;③【68】。
正确答案:【67】OSTaskCreate( )【68】OSStart( ) 解析:本题主要考查μC/OS–II的启动过程。μC/OS–II的启动过程为:Bootloader执行完毕后,调用应用程序主文件中的main( )函数。main( )函数在执行过程中,除了用户函数和硬件初始化函数外,按以下次序执行3个主要的μC/OS–II函数;操作系统初始化OSInit( ),任务创建OSTaskCreate( ),任务调度开始OSStart( )。一旦OSStart( )函数开始执行,就标志着μC/OS–II进入了多任务调度的正常运行状态。
55. HAL隐藏了不同【69】平台的差异性,从而改善了操作系统的可【70】性。
正确答案:【69】硬件【70】移植
解析:本题考查硬件抽象层HAL的相关知识。HAL隐藏了硬件的差异性,使得操作系统在不同的硬件平台上运行时,内核的代码不需要改动,从而改善了操作系统的可移植性。
56. μC/OS–Ⅱ的每个任务都处在休眠态、就绪态、【71】态、挂起态和被中断态5种状态之一的状态下。其中,在就绪态中μC/OS–Ⅱ就绪表为每一个任务提供一个二进制位,登记该任务是否就绪,就绪时对应位的值为【72】。
正确答案:【71】运行【72】1
解析:本题考查μC/OS–II的五种任务状态。绝大多数情况下,μC/OS–II的每个任务都是一个无限的循环。每个任务都处在以下5种状态之一的状态下。这5种状态是休眠态、就绪态、运行态、挂起态(等待某一事件发生)和被中断态。μC/OS–II就绪表为每一个优先级的任务提供了一个位元,登记该任务是否就绪,就绪时取值为1,没有就绪时取值为0。这样,就绪位为1的所有任务构成了当前就绪任务集。
57. 启动嵌入式Ifinux时,通常Bootloader程序会提供几种不同的OS装载方式;例如通过【73】、【74】或USB接口装载。
正确答案:【73】串口【74】以太网
解析:本题考查嵌入式Linux中Bootloader提供的OS装载方式。装载操作系统映像到内存,通常Bootloader程序会提供几种装载方式;从串口或者以太网装载,从非易失性存储器(主要指Flash存储器)装载。
58. μC/OS–Ⅱ中调用中断退出函数OSIntExit( )标志着中断服务子程序的【75】,OSIntExit( )将中断嵌套层数计数器的值【76】。
正确答案:【75】终结【76】减1
解析:本题主要考查μC/OS–II中断退出函数OSIntExit( )的使用。调用中断退出函数OSIntExit( )标志着中断服务子程序的终结,OsintExit( )将中断嵌套层数计数器减1。
59. 嵌入式应用程序经过交叉工具链生成映像文件之后,需要下载到【77】进行调试。调试完毕后映像文件必须由专用工具烧写到ROM中去,这种烧写工具俗称【78】。
正确答案:【77】目标机【78】编程器 解析:本题主要考查嵌入式应用程序的下载调试过程。嵌入式应用程序经过交叉工具链生成映像文件之后需要下载到目标机进行调试。调试完毕后映像文件必须存储在目标机的非易失性存储器中,即要求生成软件的固化版本,烧写到目标机的ROM中。将程序代码烧写到ROM中去的专用设备和工具程序俗称“编程器”。
60. RVDS开发工具套件中,主要包括工程管理器、【79】、调试器和指令集仿真器等。调试器是RVDS工具套件中的功能模块之一,它支持【80】调试和软件仿真调试。
正确答案:【79】编译连接器【80】硬件在线
解析:本题主要考查RVDS开发工具套件的相关知识。RVDS开发工具套件中,主要包括工程管理器(IDE)、编译连接器(RVCT)、调试器(RVD)和指令集仿真器(RVISS)等。RVDS调试器支持硬件在线调试和软件仿真调试,通过它可以进行单步、断点调试,并观察程序运行中的变量、寄存器、主存储器单元等的内容,使设计者能够据此判断程序运行的状况是否正常。
综合题
61. 某机械设备的控制器,其基本功能要求有: 需要有8个数字量输入,用于采集设备的状态信息;且需要8个数字量输出,用于控制设备动作。 具备一个RS一232接口,可以和上位机连接,接收上位机发送的命令及参数。 需要提供一个基准定时信号,定时时间间隔为O.01秒。 需要彩色LCD显示器,用于显示状态信息等。 根据上述功能要求的描述,若采用S3C2410芯片为核心来构建该机械设备控制器的硬件平台,请完善下面的叙述和C语言程序(需要使用的控制寄存器的格式见题后说明)。 (1)若硬件设计时采用GPIO端口E的GPE0~GPE7引脚作为8个数字量输出,那么软件设计时其初始化语句是:rGPECON=(:rGPECON 1 0x00005555)& 【81】。若软件设计时需要通过GPE5引脚输出“1”来驱动执行机构动作,那么语句是:rGPEDAT=rGPEDAT| 【82】。(注:rGPECON是端口E的控制寄存器所对应的变量,rGPEDAT是端口E的数据寄存器所对应的变量) (2)硬件设计时,选用UART0来完成RS一232接口电路设计。在软件设计时,其初始化程序中波特率设置为9600bps,数据格式设置为:8位数据位、奇校验、1位停止位。请补充完善下面的UART0初始化函数(注:主频参数为PCIK): void UART0_Init( ) { rGPHCON=(rGPHCON&0xFFFFFF00)| 【83】;//端口H相应引脚功能初始化 rUFCON0=0x0;//FIFO不使能 rUMCON0=0x0: rULCON0= 【84】;//设置线路控制寄存器 rUCON0=0x145;//设置控制寄存器 rUBRDIV0=((int)(PCLK/ 【85】)-1);//设置波特率,小数采用四舍五入 } (3)按照上面UART0初始化函数所设置的通信速率,每秒钟
最多能传输 【86】个字节的信息。若上位机有大小为4KB的初始参数需要下载到控制器中,那么,约需传输 【87】秒才能完成下载(1K=1024,精确到小数点后面1位数字)。 (4)系统中所需要的0.01秒基准定时时间选用S3C2410芯片内部的Timer0部件来产生。若系统的主频参数PCLK为264MHz,分频器值选择为16,预分频系数选择为3,那么,Timer0的计数常数为 【88】。软件设计时,设计了如下的TimerO初始化函数,请补充完善。(注:下面程序中(9)、(10)、(12)用8位十六进制数表示,(11)用4位十六进制数表示) void Timer0 Int(void) { //设置定时器配置寄存器0(TCFG0) rTCFG0= 【89】;//Timer0预分频系数选择为3,该寄存器中其它无关位均为0 //设置定时器配置寄存器1(17CFG1)rTCFG1= 【90】;//Timer0分频器值为16,该寄存器中其它无关位均为0 //设置计数常数 rTCNTB0= 【91】; //设置控制寄存器TCON rTCON=【92】;//更新TCNTB0和TCMPB0,该寄存器中其它无关位均为0 rTCON=0x00000009;//设置Timer0自动装载,并启动 } (5)彩色LCD显示屏的硬件接口电路由S3C2410的专用GPIO端口 【93】和端口 【94】相关引脚配以驱动电路来设计。软件设计时,需要通过设置它们控制寄存器的值分别为 【95】和【96】来确定它们的引脚功能。 (6)系统的软件可以设计为在无操作系统的环境下运行。设计者自行设计系统的启动引导程序,在该程序中完成异常向量设置、堆栈指针设置以及必要的硬件初始化。ARM9体系结构中规定的IRQ异常所对应的异常向量地址为 【97】。Timet0部件所产生的0.01秒基准时间到时将引起IRQ异常。由于IRQ异常向量地址与下一个异常向量地址之间间隔为 【98】个字节,因此,通常在IRQ异常向量地址处设计一条转移指令。堆栈指针的设置需按工作模式来进行。设置IRQ模式下的堆栈指针,需在R0“清0”后用指令oRRR1,R0,#0x12 | 【99】和MSRCPSR—CXSF,R1来使CPU核进入IRQ模式,然后再给SP寄存器赋值作为该模式下的堆栈指针。这些初始化工作完成后,即可通过指令 【100】来引导应用程序的主函数main( )。说明:下面是试题解答时需要用到的寄存器格式及相关说明。1)端口C的控制寄存器(GPCCON)2)端口D的控制寄存器(GPDCON)4)端口H的控制寄存器(GPHCON)7)TCFG1寄存器 说明:设置TCFG0、TCFG1可以确定预分频器系数、分频器值,如:通过设置TCFG0为0x0000001F,Timer0的预分频器系数选择为31,设置TCFG1为0x00000001,Timer0的分频器值选择为4。通过下面公式计算定时器的计数常数: 定时器输入时钟频率=PCLK/(预分频系数+1)/分频器值 计数常数=定时时间间隔/(1/定时器输入时钟频率) 预分频系数的范围为0~255,分频器值的取值范围为2、4、8、16。 8)TCON寄存器(注:此处不用的位被省略,其值默认为0x0000000)
正确答案:(1)【81】0xFFFF5555【82】0x0020(2)【83】0x000000AA【84】0x23【85】(9600×16)+0.5(3)【86】872【87】4.7(4)【88】41250【89】0x00000003【90】0x00000003【91】0xA122【92】0x00000002(5)【93】C【94】D【95】0xAAAAAAAA【96】0xAAAAAAAA(6)【97】0x00000018【98】4【99】0xC0【100】BL_main
解析: (1)和0相与清零,和1相与保持不变。和0相或保持不变,和1相或置1。00为输入,01为输出,则初始化GPIO端口E的GPE0~GPE7引脚功能为输出的语句是:rGPECON=(rGPECON|0x00005555)&0xFFFF5555,空【81】为0xFFFF5555;通过GPE5引脚输出“1”来驱动执行机构动作,则将第
6位置1,即rGPEDAT= rGPEDAT |0x0020,则空【82】为0x0020。 (2)0x000000AA:8位数据位、1位停止位、奇校验。在ULCON中,[1∶0]∶11 = 8位:[2]∶0 = 1位停止位:[5∶3]∶100 = 奇校验:[6]∶0 = 正常操作模式。即rGPHCON=(rGPHCON&0xFFFFFF00)| 0x000000AA,则空【83】为0x000000AA。空【84】此处对线路控制寄存器进行相应设置。空【85】对所需的波特率进行设置。 (3)按照上面UART0初始化函数所设置的通信速率,每秒钟最多能传输9600/(8+3)=872个字节的信息。若上位机有大小为4KB的初始参数需要下载到控制器中,那么,约需传输4×1024/872=4.7秒。 (4)定时器输入时钟频率=PCLK/(预分频系数+1)/分割器值,计数常数=定时时间间隔/(1/定时器输入时钟频率),即可得本题空【88】答案。TCFG0中[7∶0]位确定Timer0的预分频系数,题设为3,则空【89】为0x00000003;TCFG1中[3∶0]位确定Timer0的分频器值,题设为16,则空【90】为0x00000003。空【91】处设置的计数常数为0xA122;更新TCNTB0和TCMPB0设置空【92】为0x00000002。 (5)GPC和GPD作为LCD液晶屏接口引脚,空【93】为C,空【94】为D;00为输入,01为输出,将端口C和D均设置为输出,空【95】【96】均为0xAAAAAAAA。 (6)ARM9体系结构中规定的IRQ异常所对应的异常向量地址为0x00000018。IRQ异常向量地址与下一个异常向量地址之间间隔为4个字节。R0“清0”后用指令ORR R1,R0,#0x12|0xC0和MSR CPSR_CXSF,R1来使CPU核进入IRQ模式。可通过指令BL_main来引导应用程序的主函数main( )。
因篇幅问题不能全部显示,请点此查看更多更全内容