嵌入式系统习题

2012年09月17日 18:50    发布者:a861388037
一、 选择题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、0x024 μCOS-II中对关键代码段由于希望在执行的过程中不被中断干扰,通常采用关中断的方式,以下X86汇编代码正确而且不会改变关中断之前的中断开关状态的是(D)A. 先CLI、执行关键代码、再STI      B. 先STI、执行关键代码、再CLI    C. 先POPF、CLI、执行关键代码、再PUSHFD. 先PUSHF、CLI、执行关键代码、再POPF。5 RS232-C串口通信中,表示逻辑1的电平是(D )。A、0v B、3.3v C、+5v~+15v D、-5v~-15v6  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的入口地址为0x0000001CA、0x00000000 B、0x00000008 C、0x00000018 D、0x000000148  S3C2420X I/O口常用的控制器是(D)。(1)端口控制寄存器(GPACON-GPHCON)。(2)端口数据寄存器(GPADAT-GPHDAT)。(3)外部中断控制寄存器(EXTINTN)。(4)以上都是。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、0x6114、μCOS-II操作系统不属于( C)。A、RTOS  B、占先式实时操作系统  C、非占先式实时操作系统  D、嵌入式实时操作系统15、若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDR R0,!后R0的值为(D )。A. 0x2000 B. 0x86 C. 0x2008 D. 0x3916、寄存器R13除了可以做通用寄存器外,还可以做(C )。A、程序计数器 B、链接寄存器 C、栈指针寄存器     D、基址寄存器17、FIQ中断的入口地址是( A)。A、0x0000001C B、0x00000008 C、0x00000018 D、0x0000001418、ARM指令集和Thumb指令集分别是(D )位的。A. 8位,16位 B. 16位,32位 C. 16位,16位 D. 32位,16位19、ARM寄存器组有(D )个寄存器。A、7 B、32 C、6 D、3720、若R1=2000H,(2000H)=0x28,(2008H)=0x87,则执行指令LDR R0,!后R0的值为(D )。A. 0x2000 B. 0x28 C. 0x2008     D. 0x8721、寄存器R15除了可以做通用寄存器外,还可以做( A)A. 程序计数器 B. 链接寄存器 C. 堆栈指针寄存器 D. 基址寄存器22、嵌入式系统有硬件和软件部分构成,以下(C)不属于嵌入式系统软件。A. 系统软件    B. 驱动     C. FPGA编程软件     D. 嵌入式中间件 26、假设R1=0x31,R2=0x2  则执行指令ADD R0,R1,R2 LSL #3 后,R0的值是( C)A. 0x33 B. 0x34 C. 0x39 D. 0x3823、和PC机系统相比下列哪个不是嵌入式系统独具的特点(C)A、系统内核小 B、专用性强 C、可执行多任务 D、系统精简24、Unicode编码与(A)编码方式兼容。A、ASCII码 B、GBK C、GB2312 D、区位码25 、Cache用于存放主存数据的部分拷贝,主存单元地址与Cache单元地址之间的转换用(A)完成。A.硬件      B. 软件      C. 用户      D. 程序员26  在μC/OS-II系统中,OSTimeTick()函数只被以下(A)函数或过程所调用。A. OSTickISR    B. OSShed    C. OSCtxSw D. OSIntCtxSw27 每种嵌入式操作系统都有自身的特点以吸引相关用户,下列说法错误的是(D)。A. 嵌入式Linux提供了完善的网络技术支持;B. mCLinux是专门为没有MMU的ARM芯片开发的;C. mC/OS-Ⅱ操作系统是一种实时操作系统(RTOS);D. WinCE提供完全开放的源代码。28 下列关于存储管理单元(MMU)说法错误的是(B)。A. MMU提供的一个关键服务是使各个任务作为各自独立的程序在其自己的私有存储空间中运行。B. 在带MMU的操作系统控制下,运行的任务必须知道其他与之无关的任务的存储需求情况,这就简化了各个任务的设计。C. MMU提供了一些资源以允许使用虚拟存储器。D. MMU作为转换器,将程序和数据的虚拟地址(编译时的连接地址)转换成实际的物理地址,即在物理主存中的地址。29  下列CPSR寄存器标志位的作用说法错误的是(D)。A. N:负数   B. Z: 零   C. C: 进位   D. V: 借位30  S3C2410X处理器为用户进行应用设计提供了支持多主总线的IIC接口。处理器提供符合IIC协议的设备连接的串行连接线为(C)。A. SCL和RTX B. RTX和RCX C. SCL和SDA  D. SDA和RCX31 RQ中断的优先级别是(     D     )。A. 1 B. 2 C. 3 D. 432 LDR  R2, 的寻址方式是(   C       )。A. 寄存器寻址 B. 寄存器移位 C. 变址寻址     D. 间接寻址33 S3C2410有(   B        )个USB接口。A. 1 B. 2 C.3       D. 434  ARM处理器的工作模式有(  C     )种。A. 5         B.6 C. 7         D.8二、 判断题1、 程序运行过程中的资源可以是显示器、键盘,但不可以是一个数组或变量(X)2、 在μCOS-II操作系统中,已知Task1的优先级为12,Task2的优先级为26。假如在Task2运行过程中发生键盘中断,在执行中断服务程序时Task1进入就绪状态,则中断返回时Task1得到CPU的使用权。(√ )3、 若定义任务task1的优先级为12,则不能再定义其他任务的优先级也为12(√ )4、 任务创建后即开始调度(X)5、 液晶工作在文本模式下时,既可以显示英文字符也可以显示汉字(X)6、 处于就绪状态的任务只能切换到运行状态(X)7、 等待消息函数WaitMessage(0)中的“0”表示此函数的超时等待时间为0秒(X)8、 若OSTaskSuspend (prio)函数把正在延时的任务挂起,则调用一次对应的唤醒函数即可使该任务切换到就绪状态。(X)9、 调试程序时,需要停止程序运行后才可查看变量内容(√ )10、 μCOS-II操作系统中移植成功后即可使用文件系统(X)11、 将模拟信号转换成数字信号的电路是DA转换器。(×)12、 IIC是同步串行数据总线,。(√)13、 S3C2410的处理器对内存的访问只能通过Load/Store指令来实现。(√)14、 Nand Flash比Nor Flash成本高,可靠性差。(×) 15、 C语言程序可以嵌套加入汇编程序模块。  (√)16、 运算放大器的输出电压范围一般大于电源电压的范围。(×)17、 由于CPU内部寄存器的访问速度较高,根据ATPC标准,应尽可能使函数的参数控制在4个以下。(√)18、 ARM处理器结构体系中具有T变种处理器核可以工作在ARM状态和Thumb状态。(√)三、 简答题 ARM体系结构的寄存器组织:37个32位寄存器,其中31个为通用寄存器,6个为状态寄存器,哪些寄存器是可编程访问的,取决微处理器的工作状态及具体的运行模式。ARM微处理器的异常状态:7种异常4、ARM处理器有几种工作模式?并做说明每种工作模式的含义。答:ARM处理器有7种工作模式:用户模式(usr)- 正常程序执行的模式   0.5分快速中断模式(fiq)- FIQ异常响应时进入此模式 0.5分中断模式(irq)- IRQ异常响应时进入此模式 0.5分管理员模式(svc)- 系统复位和软件中断响应时进入此模式 0.5分中止模式(abt)- 用于虚拟存储及存储保护    0.5分系统模式(sys)- 与用户类似,但有直接切换到其它模式等特权 0.5分未定义模式(und)- 未定义指令异常响应时进入此模式 0.5分除了用户模式外,其他模式均可视为特权模式 0.5分四、 阅读程序题 9、 阅读下列与看门狗有关的寄存器描述,解释每一行代码的功能。看门狗定时器控制寄存器(WTCON)

寄存器

地    址

读/写

描    述

初  始  值


WTCON

0x53000000

读/写

看门狗定控制寄存器

0x8021

WTCON的标识位

WTCON

Bit

描    述

初  始  值


Prescaler Value



预装比例值,有效范围值为0~255

0x80


Reserved



保留

00


Watchdog Timer



使能和禁止看门狗定时器0=禁止看门狗定时器1=使能看门狗定时器

0


Clock Select



这两位决定时钟分频因素00:1/16            01:1/3210:1/64            11:1/128

00


Interrupt Generation



中断的禁止和使能0=禁止中断产生1=使能中断产生

0


Reserved



保留

0


ResetEnable/Disable



禁止很使能看门狗复位信号的输出1=看门狗复位信号使能0=看门狗复位信号禁止

1

看门狗定时器数据寄存器(WTDAT)

寄  存  器

地    址

读/写

描    述

初  始  值


WTDAT

0x53000004

读/写

看门狗数据寄存器

0x8000

看门狗计数寄存器(WTCNT)

寄  存  器

地    址

读/写

描    述

初  始  值


WTCNT

0x53000008

读/写

看门狗计数器当前值

0x8000

#define rWTCON   (*(volatile unsigned *)0x53000000) // 第1行#define rWTDAT   (*(volatile unsigned *)0x53000004) // 第2行#define rWTCNT   (*(volatile unsigned *)0x53000008) // 第3行void watchdog_test(void){ rWTCON = ((PCLK/1000000-1)<<8)|(3<<3)|(1<<2);         // 第4行rWTDAT = 7812; // 第5行rWTCNT = 7812;                                     // 第6行rWTCON |=(1<<5);                                // 第7行}第1-3 行:定义看门狗控制寄存器、数据寄存器和计数寄存器为rWTCON、rWTDAT和rWTCNT。第4   行:设置看门狗的预装比例值为1000000,分频因素为1/128,并使能中断。(6分)第5-6 行:对数据寄存器和计数寄存器赋值为7812。(2分)第7   行:启动看门狗。(2分)7、阅读以下S3C2410部分用户手册.求:当PCLK 或 UCLK 为40 MHz时,串口0的波特率为2400 bps ,串口1的波特率为115200bps,相应的控制寄存器如何设置.UART BAUD RATE DIVISOR REGISTERThere are three UART baud rate divisor registers(寄存器)including UBRDIV0, UBRDIV1 and UBRDIV2 in the UART block(模块). The value stored in the baud rate divisor register (UBRDIVn), is used to determine the serial Tx/Rx clock rate(baud rate) as follows:UBRDIVn = (int)(PCLK / (bps x 16) ) –1   or   UBRDIVn = (int)(UCLK / (bps x 16) ) –1Where, the divisor should be from 1 to (216-1) and UCLK should be smaller than PCLK.

Register

Address

R/W

Description

Reset Value


UBRDIV0

0x50000028

R/W

Baud rate divisor register 0




UBRDIV1

0x50004028

R/W

Baud rate divisor register 1




UBRDIV2

0x50008028

R/W

Baud rate divisor register 2




UBRDIVn

Bit

Description

Initial State


UBRDIV  



Baud rate division value  UBRDIVn >0



答: 根据UBRDIVn = (int)(PCLK / (bps x 16) ) –1寄存器UBRDIV0= (int)(40000000/2400*16)-1=1040=10000010000(B)寄存器UBRDIV1=( int)(40000000/115200*16)-1=20=10100(B)任务控制块(TCB)的数据结构OS-TCB表示任务的状态。当任务的CPU控制权被枪战后,任务控制块用来保存该任务的状态。当任务重新获得CPU的控制权后,任务控制块能够保证任务从被中断的位置继续正确执行。 任务控制块提供了任务的基本信息,如任务的执行状态、优先级和堆栈位置等。file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-11289.pngfile:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-16421.png

网友评论

春夏秋冬 2015年01月05日
谢谢分享!
raymondleung8 2015年08月22日
good