您的当前位置:首页正文

嵌入式系统考试题库

来源:个人技术集锦
嵌入式系统复习题

ARM复习题一

一、填空。

1、cpsr寄存器的作用是___________。

2、ARM926EJ-S中的“9”表示的含义是________,“E”表示的含义是________,“J”表示的含义是________。

3、LINUX下察看当前目录的命令是________,察看文件内容的命令是________,删除目录的命令是________。

4、字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,这样的存储方式我们称之为__________格式。

5、ARM9TDMI中的“T”表示的含义是_支持Thumb指令集__,“D”表示的含义是_支持片上Debug__,“M”表示的含义是__ 内嵌硬件乘法器___ ,“I”表示的含义是__支持片上断点调试___。6、ARM指令中的第二个操作数“operand2”有_立即数__、_寄存器__、__寄存器移位__三种具体形式。7、字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,这样的存储方式我们称之为__大端___格式。8、LINUX下察看当前目录的命令是__ls__,察看文件内容的命令是__cat____,压缩与解压的命令是__tar____,磁盘、目录挂接命令是__mount__。9、LINUX将设备分成__块设备____和___字符设备_______两大类。

二、简答。

1、简述嵌入式系统和通用计算机的区别?

2、VFS的功能有哪些? 记录可用的文件系统的类型;

将设备同对应的文件系统联系起来;处理一些面向文件的通用操作

3、简述硬实时操作系统和软实时操作系统的区别?

4、简述嵌入式系统的开发模式。

5、交叉编译工具(链)主要包括什么?

对目标系统的编译器 gcc、目标系统的二进制工具binutils、目标系统

的标准c库glibc、目标系统的 Linux 内核头文件。

6、简述ARM的存储器层次。

7、bootloader的stage1有哪些操作?a.硬件的初始化

b.加载stage2到RAM中。

c.设置堆栈指针SP,为执行C语言代码做准备。d.加载到stage2的C语言入口点。

8、bootloader的stage2有哪些操作? 初始化本阶段要用到的硬件设备。检测系统的内存映射。

加载内核映像和根文件系统映像。设置内核启动参数。

调用内核,即直接跳转到内核的第1条指令地址处执行。

9、S3C2410的电源管理有哪几种模式?各种模式是什么含义?

10、按设备的所属关系可以将I/O设备分为哪几类?系统设备:用户设备:

11、简述Makefile和Make的功能? Makefile是工程系统编译批处理文件。Make是Makefile文件的解释器。

Make对Makefile文件解释后,生成Linux的shell命令和gcc编译命令,接着对命令执行,最终生成目标文件。

12、S3C2410的时钟由哪几部分构成?为系统提供哪些时钟?

13、嵌入式Linux与其他嵌入式操作系统相比具有如下优点?

开放源码、所需容量小、无须版权费用、成熟且稳定、良好的支援

14、简述嵌入式系统的组成?

15、ARM有哪些工作模式?

答:用户模式、系统模式、快速中断模式、外部中断模式、管理模式、中止模式、未定义模式

16、系统移植包括哪些工作?

17、设备管理程序一般要提供哪些功能?

提供和进程管理系统的接口;进行设备分配;实现设备和设备、设备和CPU等之间的并行操作;进行缓冲管理;设备控制与驱动。

18、写出ARM9的4种电源模式? 正常模式、慢速模式、空闲模式和掉电模式。

19、对于ARM的变址寻址,偏移地址的计算方式有哪几种?答:前变址寻址、自动变址寻址、后变址寻址20、列举出嵌入式系统常用的几种文件系统。

答:ROMFS、JFFS2、YAFFS、NFS、EXT2、RAMDISK、CRAMFS

21、按设备的共享属性可将I/O设备分为哪几类? 独占设备、共享设备、虚拟设备

22、基本的嵌入式Linux系统分为哪几个层次? 导加载程序bootloader。Linux内核。文件系统。用户应用程序。

23、文件系统把逻辑盘空间分为哪几个部分?引导块、超级块、inode区以及数据区。

ARM复习题二

一、填空题

1、ARM9处理器有( )个通用寄存器,有( )个状态寄存器。

2、LINUX将设备分成( )和( )两大类。3、CPSR寄存器的作用是( )。

4、ARM9TDMI中的“T”表示的含义是(

),“D”表示的含义是( ),“M”表示的含义是( ) ,“I”表示的含义是( )。

5、ARM是RISC型处理器,只有( )和( )指令可与存储器打交道,其余指令都不允许进行存储器操作。

6、LINUX下察看当前目录的命令是( ),察看文件内容的命令是( ),压缩与解压的命令是( ),磁盘、目录挂接命令是( )。

7、S3C2410有( )个快速中断,可扩展( )组存储器。

8、ARM体系结构定义了7种处理器模式,其中( )模式是非特权模式,除了( )模式和( )模式外其他的5种模式属于异常模式。

二、选择题

1、被称作链接寄存器的寄存器是( );被称作程序计数器的寄存器是( )。

A、R12 B、R13C、R14 D、R15

2、ARM 指令集是( )位宽,Thumb 指令集是( )位宽的。

A、8位 B、16位C、32位 D、64位

3、复位后,ARM处理器处于( )模式、( )状态。

A、SVC B、SystemC、ARM D、Thumb

4、ARM处理器中优先级别最高的异常为( )。A、IRQ B、SWIC、FIQ D、RESET5、键盘是( )类型的设备。A、块 B、字节C、网络 D、流

6、S3C2410的( )具有死区发生器的功能。A、timer0 B、timer1C、timer2 D、timer3

7、在嵌入式系统设计中可以通过( )来测量电池电压,可以用( )输出来驱动喇叭发声。

A、ADC B、PWMC、DAC D、RTC

8、ADC挂接在( )总线上。A、APB B、AHBC、ASB D、HUB

三、编程题

1、编写一程序,用查询的方式,对S3C2410的A/D转换器的第3通道连续进行100次A/D转换,然后将其结果求平均值。设预分频为49。注意:A/D转换器有独立的模拟信号输入引脚AIN0---AIN9。

ADCCON格式如下:

13 ……

15146543210

ECFLGPRSCENPRSCVLSEL_MUXSTDBMREAD_STARTENABLE_STARTADCDAT0格式如下:

15

14

13

12

1110

保留(0)

9 …… 0

转换结果

UPDOWNAUTO_PSTXY_PST

ADCCON、ADCDAT0的地址宏定义为:#define rADCCON (*(volatile *)0x58000000)

#define rADCDAT0 (*(volatile *)0x5800000c)

unsignedunsigned

#define pref 49 #define ch 3 int adc(void)

{ rADCCON=(1<<14)|(pref<<6)|(ch<<3)|1; //允许预分频,启动转换

while(rADCCON&0x01==1); //查询是否已经启动转换while(rADCCON&0x8000==0); //查询转换是否结束 return rADCDAT0&0x3ff; //读取转换结果 }

void main()

{ int adc_data=0, i;

for(i=0;i<100;i++)

adc_data+=adc();

adc_data=adc_data/100; printf(\"adc average is: %d\\n\",adc_data);

}

2、编写一程序,查找存储器从0x500000开始的200个字中为5的数目,将其结果存到0x600000中。解:

MOV R0,#0x500000 MOV R1,#0 MOV R7,#200

LP LDR R2,[R0],#4 CMP R2,#5 BNE NEXT

ADD R1,R1,#1

NEXT SUBS R7,R7,#1 BNE LP

MOV R0,#0x600000 STR R1,[R0] B $

3、实现1+2+……+N。

} N EQU 5; ; 常量的定义

} AREA Example,CODE,READONLY ; } ENTRY ; 程序入口} CODE32 ; ARM代码} START ; 行标定义

} LDR R0,=N ; R0赋值

} MOV R2,R0 ; R2充当计数器} MOV R0,#0 ; R0←0} MOV R1,#0 ; R1←0} LOOP ; 行标

} CMP R1,R2 ; 比较R1 R2

定义段名属性等} BHI ADD_END ; 如果R1>R2 跳转到 ADD_END} ; 分支的实现

} ADD R0,R0,R1 ; R0←R0+R1

} ADD R1,R1,#1 ; R1←R1+1} B LOOP ; 无条件跳转至LOOP} ; 循环的实现

} ADD_END ; 行标定义

} B ADD_END ; 无条件跳转ADD_END} END ; 代码结束

因篇幅问题不能全部显示,请点此查看更多更全内容