嵌入式设计复习题答案

嵌入式设计复习题答案
嵌入式设计复习题答案

一、填空题

1、哈佛体系结构数据空间和地址空间(分开),ARM920T采用(哈佛)的内核架构。

2、 ARM7TDMI采用( 3 )级流水线结构,ARM920TDMI采用( 5 )级流水线。

3、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(在片可调式),M表示内嵌

乘法器Multiplier,I表示(嵌入式ICE ),支持在线断点和调试。

4、“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素。

5、ARM处理器共有37个寄存器,31个通用寄存器,6个状态寄存器。寄存器R13通常

用作堆栈指针,称作SP。寄存器R14用作子程序链接寄存器,也称为链接寄存器LK (Link Register)。

6、程序状态寄存器CPSR的N、Z、C、V分别指--,I=1指-禁止IRQ中断-、F=1指-禁

止FIQ中断-,M[4:0]用做-处理器模式选择-。

7、ARM微处理器支持四种类型的堆栈,即:满递增堆栈、满递减堆栈、空递增堆栈、

空递减堆栈。

8、ARM微处理器有 7 种工作模式,它们分为两类特权模式、非特权模式。

其中用户模式属于非特权模式

9、ARM支持两个指令集, ARM核因运行的指令集不同,分别有两个状态 ARM状态、thumb状态,状态寄存器CPSR的 T (或者填 D5 )位反映了处理器运行不同指令

的当前状态

10、ARM处理器有两种总线架构,数据和指令使用同一接口的是冯诺依曼结构,数

据和指令分开使用不同接口的是哈佛结构

11、ARM核有多个寄存器,其中大部分用于通用寄存器,有小部分作为专用寄存器, R15 寄存器用于存储PC,R13通常用来存储 SP (或者填堆栈指针)

12、编译链接代码时,有两种存储代码和数据的字节顺序,一种是小端对齐,另一种

是大端对齐

13、不同的中断处理不同的处理模式,具有不同的优先级,而且每个中断都有固定的中

断入口地址。当一个中断发生时,相应的R14存储中断返回地址,SPSR存储状态寄存

器CPSR的值。

14、嵌入式微处理器有嵌入式微处理器、嵌入式微控制器、曲入式DSP处理器和嵌入式

片上系统四种类型。

15、ARM9TDMI采用5级流水线:取指、译码、执行、访存和写回。

16、AMBA总线结构包括ASB、AHB和APB总线。ASB/AHB用于CPU与存储器、DMA控制器、总线仲裁控制器等片上系统中芯片的连接,APB用于连接低速的外围设备。

17、函数的参数传递方法有两种:R0~R3寄存器和堆栈

二、选择题

1、在嵌入式ARM处理器中,下面哪种中断方式优先级最高。( A )

A. Reset

B. 数据中止

C. FIQ

D. IRQ

2、 NAND FLASH和NOR FLASH的区别正确的是。( D )

A. NOR的读速度比NAND稍慢一些

B. NAND的写入速度比NOR慢很多

C. NAND的擦除速度远比NOR的慢

D.大多数写入操作需要先进行擦除操作

3、在将UC/OS操作系统移植到ARM处理器上时,以下哪些文件不需要修改。( A )

(A)OS_CORE.C (B)INCLUDE.H

(C)OS_CPU.H (D)OST ASK I NIT

4、在下列ARM处理器的各种模式中,只有_ A_ 模式不可以可以自由地改变处理器的工作模式。

A、用户模式(User)

B、系统模式(System)

C、终止模式(Abort)

D、中断模式(IRQ)

5、相对于ARM指令集,Thumb指令集的特点是__ B__

A、指令执行速度快

B、16位指令集,可以得到密度更高的代码,对于需要严格控制成本的设计非常有意义

C、Thumb模式有自己独立的寄存器

D、16位指令集,代码密度高,加密性能好

6、在ARM寄存器结构中,栈指针使用_ B _寄存器,

A、R0

B、R13

C、R14

D、R15

7、下列条件码中表示无符号数小于的是__D _

A、HI

B、LS

C、CS

D、CC

8、下列ARM指令中,可用于满递增堆栈操作的是__D _

A、STMDA

B、STMIA

C、STMDB

D、STMIB

9、下列32位数中,不可作为立即数的是__A__

A、0x81000007

B、0x04800000

C、0x00000012

D、0x8000007

10、ATPCS规定数据栈是__A__类型

A、满递减

B、满递增

C、空递减

D、空递增

11、S3C2410采用的是 D 核心

A、 ARM7TDMI

B、 ARM9TDMI

C、 ARM926EJ-S

D、 ARM920T

12、在串行异步通讯中,发送端串口的TxD要和接收端串口的 B 相连接

[A] TxD [B] RxD [C ] nCTS [D ] nRTS

13、MMU的作用有 A B

[A] 内存保护 [B] 地址转换(将虚地址转换成物理地址) [C ] 加快存取速度 [D ] 安全保密 [E] 内存分配

14、以下属于DMA特点的有 B C

[A] 占用CPU [B] 占用总线 [C ] 不占用CPU [D ] 不占用总线

15、存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为 D

A、0x21

B、0x68

C、0x65

D、0x02

16、RS232-C串口通信中,表示逻辑1的电平是 D 。

A、0v

B、3.3v

C、+5v~+15v

D、-5v~-15v

17、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

18、IRQ中断的入口地址是 C 。FIQ的入口地址为0x0000001C

A、0x00000000

B、0x00000008

C、0x00000018

D、0x00000014

19、 S3C2420X I/O口常用的控制器是 (4)

(1)端口控制寄存器(GPACON-GPHCON)。

(2)端口数据寄存器(GPADAT-GPHDAT)。

(3)外部中断控制寄存器(EXTINTN)。

(4)以上都是。

20、ADD R0,R1,#3属于 A 寻址方式。

A. 立即寻址

B. 多寄存器寻址

C. 寄存器直接寻址

D. 相对寻址

21、GET伪指令的含义是 A

A. 包含一个外部文件

B. 定义程序的入口

C. 定义一个宏

D. 声明一个变量

22、μCOS-II操作系统不属于 C

A、RTOS

B、占先式实时操作系统

C、非占先式实时操作系统

D、嵌入式实时操作系统

23、若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDR R0,[R1,#8]!后R0的值为 D 。

A. 0x2000

B. 0x86

C. 0x2008

D. 0x39

24、ARM寄存器组有 D 个寄存器。

A、7

B、32

C、6

D、37

25、在μC/OS-II系统中,OSTimeTick()函数只被以下 A 函数或过程所调用。

A. OSTickISR

B. OSShed

C. OSCtxSw

D. OSIntCtxSw

26、下列关于存储管理单元(MMU)说法错误的是 B 。

A. MMU提供的一个关键服务是使各个任务作为各自独立的程序在其自己的私有存储空间中运行。

B. 在带MMU的操作系统控制下,运行的任务必须知道其他与之无关的任务的存储需求情况,这就简化了各个任务的设计。

C. MMU提供了一些资源以允许使用虚拟存储器。

D. MMU作为转换器,将程序和数据的虚拟地址(编译时的连接地址)转换成实际的物理地址,即在物理主存中的地址。

27、下列CPSR寄存器标志位的作用说法错误的是 D 。

A. N:负数

B. Z: 零

C. C: 进位

D. V: 借位

28、LDR R2,[R3,#128] 的寻址方式是 C 。

A. 寄存器寻址

B. 寄存器移位

C. 变址寻址

D. 间接寻址

29、当一个中断发生时,相应的 A (LR) 存储中断返回地址。

A.R14 B.R1 C.R2 D.R15

30、通常所说的 32 位微处理器是指 C 。

A.地址总线的宽度为32 位

B. 处理的数据长度只能为 32 位

C.CPU 字长为 32 位

D.通用寄存器数目为 32 个

31、S3C2410X微处理器有以下外围资源: A 个LCD控制器

A.1

B.2

C.3

D.4

32、S3C2410X存储控制器支持大端、小端模式存储,可寻址 C 的空间。

A.1MB

B.1TB

C.1GB

D.1B

33、S3C2410X微处理器有3个通道的UART, D 个通道的DMA。

A.1 B.2 C.5 D.4

三、指令解析

1、LDR R0,[R1] ;从R1寄存器指向的地址中取出一个字的数据,存储到R0寄存器中

2、 STR R0,[R1],#8 ;将R0中的字数据写入R1为地址的存储器中,并将新地址R1+8写入R1

3、 ADDS R1,R1,#1 ;R1+1给R1

4、 LDMFD R13!,{R0,R4-R12,PC} ;将堆栈内容恢复到寄存器(R0,R4 到R12,LR)。

5、初始值R1=23H,R2=0FH执行指令BIC R0,R1,R2,LSL #1后,寄存器R0,R1的值分别是多少?

R0=21H, R1=23H, R2=1EH

6、写一条 ARM 指令,完成操作r1 = r2 * 3(4分)

add r1, r2, r2 LSL #1

7、说明指令STMIA r12!, {r0-r11}的操作功能。(4分)

将R0-R11十二个寄存器中的32位数据,存储到R12地址指针为起始地址的内存中,地址的操作方式是先操作、后增加,并更新地址。

8、ADD R0,R0,#1 ;将R0+1的结果送R0是保存

9、ADD R0,R1,[R2] ;将以R2中的内容为地址的单元中的值与R1相加,结果送R0保存

10、LDR R0,[R1+4] ;指令实现的功能是将R1的内容加4后送R0

4.LDR R0,[R1+4]!;将R1的内容加4后送R0,然后R1的内容自增4个字节5.B Lable ;程序无条件跳转到标号Lable处执行

6.MOV R1,R0 ;指令实现的功能是将寄存器R0的值传送到寄存器R1

7.CMP R1,R0 ;寄存器R1的值与寄存器R0的值相减,根据结果设置CPSR的标志位

8.CMN R1,R0 ;将寄存器R1的值与寄存器R0的值相加,根据结果设置CPSR的标志位

9.ORR R0,R0,#3 ;该指令设置R0的0、1位,其余位保持不变

10.MRS R0,SPSR ;传送SPSR的内容到R0

11.CMP R1,R2 ;寄存器R1的值与寄存器R2的值相减,根据结果设置CPSR的标志位

12.MRS R0,CPSR ;传送SPSR的内容到R0

13.MOV R2,R0 ;将寄存器R0的值传送到寄存器R2

14.ADD R1,R1,#3 ;将R1+3的结果送R1是保存

15.ADD R2,R1,[R0] ;将以R0中的内容为地址的单元中的值与R1相加,结果送R2保存

16.LDR R1,[R0+4] ;将R1的内容加4后送R0

17.LDR R1,[R0+4]!;将R1的内容加4后送R0,然后R1的内容自增4个字节。18.AND R0,R0,#3 ;保持R0的0、1位,其余位清零

19.B 0x1200 ;程序无条件跳转到0x1200处执行

20.CMN R1,R2 ;将寄存器R1的值与寄存器R2的值相加,并根据结果设置CPSR 的标志位

四、 看图回答

1、下图是ARM9处理器的当前程序状态寄存器,请简单说明各位的功能。

N V

C Z F T I M4M1M2M3167312043M0

528293027

8ARM7当前程序状态寄存器

N :负标志位,运算结果的第31位值,记录标志设置的结果。 Z :零标志位,如果标志设置操作的结果为0,则置位。

C :进位标志位,记录无符号加法溢出,减法无错位,循环移位。 V :溢出标志位,记录标志设置操作的有符号溢出。

I :中断禁止标志位,置位时禁止IRQ 中断,否则允许IRQ 中断使能。 F :中断禁止标志位,置位时禁止FIQ 中断,否则允许FIQ 中断使能。

T :控制位,置位时处理器运行在Thumb 状态下,清零时处理器运行在ARM

状态下。 M0~M4:模式控制位,定义处理器的7中模式。

其余位为保留位,留作将来使用。

2、阅读下列与看门狗有关的寄存器描述,解释每一行代码的功能。 看门狗定时器控制寄存器(WTCON ) WTCON 的标识位 WTCON Bit 描 述

初 始 值

Prescaler Value [15:8] 预装比例值,有效范围值为0~255 0x80 Reserved

[7:6]

保留

00

Watchdog Timer [5]

使能和禁止看门狗定时器

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

Clock Select

[4:3]

这两位决定时钟分频因素 00:1/16 01:1/32

00

寄存器 地 址 读/写 描 述

初 始 值 WTCON

0x53000000

读/写

看门狗定控制寄存器

0x8021

10:1/64 11:1/128

Interrupt Generation [2] 中断的禁止和使能

0=禁止中断产生

1=使能中断产生

Reserved [1] 保留0

Reset

Enable/Disable [0]

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

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行

}

3、阅读以下S3C2410部分用户手册.求:当PCLK 或UCLK 为40 MHz时,串口0的

波特率为2400bps ,串口1的波特率为115200bps,相应的控制寄存器如何设置.

UART BAUD RATE DIVISOR REGISTER

There 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) ) –1 Where, 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 [15:0] Baud rate division value UBRDIVn >0 –

五、简答题

1、根据嵌入式系统的特点,写出嵌入式系统的定义。

答:嵌入式系统是以应用为中心,以计算机技术为基础,软/硬件可裁减,功能。可靠性,成本,体积,功耗要求严格的专用计算机系统。

2、嵌入式系统的主要应用领域有哪些?

3、什么是RISC?什么是CISC?

答:RISC是英文Reduced Instruction Set Computer的缩写,汉语意思为"精简指令系统计算机"。相对应的CISC就是"复杂指令系统计算机"的意思。

CPU从指令集的特点上可以分为两类:CISC和RISC。

4、ARM9TDMI中的T、D、S、I分别表示什么含义?

答:T表示支持16位Thumb指令集,

D表示在片可调式(Debug),

M表示内嵌乘法器Multiplier,

I表示嵌入式ICE ,支持在线断点和调试。

4、ARM处理器模式和ARM处理器状态有什么区别?

答:(1)ARM7T ARM 体系结构支持7种处理器模式,分别为:用户模式、快中断模式、中断模式、管理模式、中止模式、未定义模式和系统模式。

(2)ARM 处理器状态:ARM状态、Thumb状态。

(3)两种处理器状态都有这7种处理器模式;两个状态之间切换并不影响处理器模式或寄存器内容。

5、ARM9TDMI有几种寻址方式?

答:立即寻址

寄存器寻址

基地址变址寻址

寄存器偏移寻址

寄存器间接寻址

多寄存器寻址

6、ARM9的内部寄存器R13、R14、R15的主要功能和作用?

7、FIQ、IRQ有什么不同?向量IRQ和非向量IRQ有什么不同?

答:(1)FIQ的优先级比IRQ高,对外部事件响应比IRQ快。

(2)A:向量IRQ 具有中等优先级,对外部事件响应比较及时;非向量IRQ优先级最低,中断延迟时间比较长。

B:向量IRQ能为每个向量IRQ中断源设置服务程序地址;而所有的非向量IRQ中断都共用一个相同的服务程序入口地址。

8、ARM9TDMI支持哪几种指令集,各有什么特点?

9、ARM9TDMI有几种处理器模式,简单介绍该几种模式的工作特点?

答:P45

ARM7T ARM 体系结构支持7种处理器模式

1.用户模式:正常处理程序时的模式

2.快中断模式:响应快速中断时的处理模式

3.中断模式:响应普通中断时的模式

4.管理模式:操作系统的保护模式

5.中止模式:指令或数据预取操作中止时的模式,该模式下实现虚拟存储器或存储器保护

6.未定义模式:当执行未定义的指令时进入该模式

7.系统模式:运行特权操作系统任务时的模式

10、ARM9TDMI采用了几级流水线工作方式,简要说明。

11、ARM9TDMI支持的数据类型有几种?各有什么要求?

12、ARM920T体系结构支持哪两种方法存储字数据?

13、ARM920T体系结构所支持的哪几种异常?说明其具体含义。

14、简述ARM处理器对异常的响应的步骤。

15、简述ARM处理器从异常返回的步骤

16、写出基于ARM920T核的处理器的异常优先级(Exception Priorities)。

17.写出基于ARM920T核的处理器的异常向量(Exception Vectors)及异常进入的模式

18.画出采用大端格式存放01020304H的存储器示意图。

19.画出采用小端格式存放05060708H的存储器示意图。

20、ARM920T有哪些运行模式,其中哪些属于特权模式?

21、用ARM汇编指令写出实现64位加法和64位减法的代码段,使用的寄存器请自行分配

假定低32位数存放在r0和r1里面,高32位数存放在r2和r3里面。

答:加法:

ADDS r0, r0, r1 //加S是因为要让这个操作影响标志位

ADC r2, r2, r3 //ADC是带进位的加法,如果上一条指令产生进位则一起加进来

减法:

SUBS r0, r0, r1 //加S是因为要让这个操作影响标志位

SBC r2, r2, r3 // SBC是带进位的减法指令

22、S3C2410 支持几种引导方式(或者说是内存映射方式)?简述Nand引导方式S3C2410硬件做的事情。

1)nor flash启动方式。

2)nand flash启动方式。

从Nand flash 启动时,S3C2410首先会执行固化在片上ROM中的一段小程序,这段程序负责将nand flash前2K的代码搬移到片上RAM,然后将PC指针指向0x0地址(注意这个时候片上RAM被映射到0x0的起始地址)

23、ARM微处理器内核是如何进行异常处理的?

答:1)当异常产生时,ARM内核拷贝CPSR到SPSR_,设置适当的CPSR 位:改变处理器状态进入ARM态,改变处理器模式进入相应的异常模式,设置中断禁止位禁止相应中断(如果需要);保存返回地址到LR_,设置PC为相应的异常向量。2)返回时,异常处理需要从SPSR_恢复CPSR,从LR_恢复PC,注意:这些操作只能在ARM态执行。

24、ARM提供的可执行映像文件的模板包括哪3个生成目标?各包含什么调试信息?

答:ARM提供的可执行的映像文件的模板包括了下面3个生成目标:

1)Debug使用本生成目标生成的映像文件中包含了所有的调试信息,用于在开发过程中使用;

2)2)Release使用本生成目标生成的映像文件中不包含调试信息,用于生成实际发行的软件版本;3)DebugRel使用本生成目标生成的映像文件中包含了基本的调试信息。

25、为什么需要嵌入式操作系统?

答:嵌入式系统与一般的系统不同,设计成为执行特定的操作,但是初期的嵌入式系统比较单纯,不需要特殊的操作系统,由人来编写程序并顺序执行,只有当中间发生中断时才会暂时脱离此顺序程序。过去的嵌入式系统主要与简单而顺序的操作有关,使用操作系统成为浪费和不必要的举措。但是最近的嵌入式系统领域中系统本身相当庞大,网络和多媒体成为系统的基本功能,嵌入式系统要做的事情既多又复杂,顺序程序的操作变得越来越难。因而在嵌入式系统中出现了操作系统的概念,要满足其实时的要求,进而产生了实时操作系统。

26、简述μC/OS-Ⅱ操作系统的移植条件。

答:要使μc/os-ii能正常运行,处理器必须满足以下要求。

(1)处理器的c编译器能产生可重入代码

可重入代码是指可以被多个任务同时调用,而不会破坏数据的一段代码;或者说代码具有在执行过程中打断后再次被调用的能力。

(2)处理器支持中断,并且能产生定时中断

arm处理器支持中断并能产生定时中断。

(3)c语言可以开/关中断

arm处理器核包含一个cpsr寄存器,该寄存器包括一个全局中断禁止位,控制它打开和关闭中断。

(4)处理器支持一定数量的数据存储硬件堆栈

对于一些只有10根地址线的8位控制器,芯片最多可访问1kb存储单元,在这样的条件下移植是比较困难的。

(5)处理器有将堆栈指针以及其他cpu寄存器的内容读出并存储到堆栈或内存中去的指令

arm处理器中汇编指令stmfd可以将所有寄存器压栈,对应的也有一个出栈指令ldmfd。

27、简要说明嵌入式操作系统多任务通讯的常用方式。

答:多任务通讯的方式:a)共享内存,主要是数据的共享;b)信号量,用于基本的互斥和任务同步;c)消息队列和管道,单CPU的消息传送;d)Socket和远程过程调用,用于网络间任务消息传送。

28、嵌入式开发环境主要包括哪些组件?

嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括

宿主机

●目标机(评估电路板)

●基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE

●运行于宿主机的交叉编译器和链接器、以及开发工具链或软件开发环境

●嵌入式操作系统

29、在进行基于ARM核的嵌入式系统软件开发时,调用如下函数:

int do_something(int arg1,void *arg2,char arg3,int *arg4)

这四个参数通过什么方式从调用程序传入被调函数?

根据ATPCS编程规范,调用函数和子程序通过R0——R3四个寄存器传递参数,超过四个参数使用堆栈传递。因此arg1通过R0传入,arg2, 通过R1传入,arg3通过R2传入,arg4通过R3传入

30、简述MMU的含义及主要工作。

答:MMU,也就是“内存管理单元”(memory management unit)。

其主要作用是两个方面:一是地址映射;二是对地址访问的保护和限制。

31、ARM9TDMI核中TDMI的基本含义是:

P42

T表示支持16位Thumb指令集,

D表示在片可调式(Debug),

M表示内嵌乘法器Multiplier,

I表示嵌入式ICE ,支持在线断点和调试。

32、简述ARM微处理器支持的指令集。

ARM微处理器支持32位的ARM指令集和16位的Thumb指令集。ARM指令集效率

高,但代码密度低;Thumb指令集具有较高的代码密度,可保持ARM的大多数性

能上的优势,可看做是ARM指令集的子集。ARM程序和Thumb程序可以相互调用,

且没有状态切换开销。

33、解释以下标识符的作用

ENTRY

EXPORT

AREA

END

MACRO

33、描述嵌入式系统中存储系统结构,存储器分类以及各类存储器的常规用途

分类:随机存储器(RAM):方便读写,

但掉电后信息丢失。

只读存储器(ROM):读取方便,

但写入需要特殊时序,

掉电后信息不丢失。

34、最小系统框图原理

寄存器

cache

主存储器

辅助存储器

寄存器

cache

主存储器

辅助存储器

时钟模块:为ARM工作提供时钟复位模块:实现复位

JTAG:实现代码的下载与调试UART:实现对调试信息的终端显示FLASH模块:存放启动代码,操作系统,用户程序

SDRAM模块:为程序提供存储空间

六、编程题

1、编程题

1.用汇编语言编写程序读取存储器0x40003100地址上的数据,将数据加1,若结果小于10则使用STR指令把结果写回原地址,若结果大于等于10,则把0写回原地址。

2、用汇编语言调用C语言实现n个数相加,n为C函数的参数,由汇编语言传递,结果存放在R5寄存器中。

C程序:

嵌入式系统期末考试试卷 习题

1.下面哪一种工作模式不属于ARM特权模式(A)。 A.用户模式B.系统模式C.软中断模式D.FIQ模式 2.ARM7TDMI的工作状态包括( D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态 3.下面哪个Linux操作系统是嵌入式操作系统( B )。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器 5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 A.寄存器段B.代码段 C.堆栈段D.数据段 选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机 2.在Makefile中的命令必须要以(A)键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式( B )。 A.Ext B.FA T32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一( D )。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一( C )。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1) 手机,(2) 机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。) 2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab 键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFA T,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。

嵌入式系统设计大作业

嵌入式系统设计大作业 学号:14020520009 姓名:罗翔 1、叙述JTAG接口在嵌入式开发中的作用。 答: (1)用于烧写FLASH 烧写FLASH的软件有很多种包括jatg.exe fluted flashpgm等等,但是所有这些软件都是通过jtag接口来烧写flash的,由于pc机上是没有jtag接口的,所以利用并口来传递信息给目标板的jtag接口。所以就需要并口转jtag接口的电路。 (2)用于调试程序 同时应该注意到jtag接口还可以用来调试程序。而调试程序(如ARM开发组件中的AXD)为了通过jtag接口去调试目标板上的程序,同样是使用pc的并口转jtag接口来实现与目标板的通信。这样,并口转jtag接口的电路就有了两种作用。 (3)仿真器 根据(1)和(2)的总结,并口转jtag接口的电路是两种应用的关键,而这种电路在嵌入式开发中就叫仿真器。并口转jtag接口的电路有很多种,有简单有复杂的,常见的仿真器有Wigger,EasyJTAG,Multi-ICE等。这些所谓的仿真器的内部电路都是并口转jtag接口,区别只是电路不同或使用的技术不同而已。 2、叙述嵌入式平台的搭建过程,以linux为例。 答: 1) 一:建立宿主机开发环境 建立交叉编译的环境即在宿主机上安装与开发板相应的编译器及库函数,以便能够在宿主机上应用开发工具编译在目标板上运行的Linux引导程序,内核,文件系统和应用程序 交叉编译:在特殊的环境下,把嵌入式程序代码编译成不同的CPU所对应的机器代码。

开发时使用宿主机上的交叉编译,汇编及链接工具形成可执行的二进制代码(该代码只能在开发板上执行),然后下载到开发板上运行 2) 下载和安装arm-Linux-gcc编译工具链下载最新的arm-Linux-gcc并解压至当前目录下 在系统配置文件profile中设置环境变量方法:直接在profile文件中加入搜索路径立即使新的环境变量生效:运行source命令,检查是否将路径加入到path,测试是否安装成功, 编译程序,测试交叉工具链 3) 配置超级终端minicom minicom是宿主机与目标板进行通信的终端:在宿主机Linux终端中输入:minicom-s或输入minicom然后按ctrl+A+O对超级终端minicom进行配置,再选择串口并配置串口,最后保存即可 4) 建立数据共享服务:NFS服务是Linux系统中经常使用的数据文件共享服务 5) 编译嵌入式系统内核:内核配置,建立依存关系,建立内核 6) 制作文件系统 3、给出现今有哪些用于嵌入式开发的芯片名称,他们分别是哪些公司的产品? 体系结构是什么? S3C2410X基于ARM的Sumsang; XscalePXA255/PXA270基于ARM的Intel; 摩托罗拉MC基于68k; Power 601基于Power PC; MIPS32Kc基于MIPS 4、现今较流行的嵌入式操作系统有哪些? 答: (1) VxWorks (2)wince (3)linux (4)android

嵌入式系统及应用 实验大纲

《嵌入式系统及应用》课程实验 一、实验课程的性质、目的和任务 性质:《嵌入式系统及应用》课程是自动化专业的专业基础课程,本实验课是该课程教学大纲中规定必修的实验教学内容。 目的和任务:通过实验环节来巩固和加深学生对嵌入式系统的理解,使学生掌握MCS51单片机和ARM的基本原理和应用技术。通过熟悉MCS51开发环境和ARM集成开发环境,使学生掌握嵌入式系统开发的一般规律和方法。在集成开发环境下,进行系统功能程序的编写和调试的训练,掌握嵌入式系统软硬件调试的一般方法和系统设计的能力。 二、实验内容、学时分配及基本要求

三、考核及实验报告 (一)考核 本课程实验为非独立设课,实验成绩占课程总成绩的15%,综合评定实验成绩。(二)实验报告 实验报告应包括: 实验名称 实验目的 实验内容与要求 设计思路(如:分析、程序流程图等) 实验步骤 实验代码(含必要注释) 实验结果分析 实验小结(本题调试过程中遇到的问题和解决方法、注意事项、心得体会等)注:综合型实验需写出系统功能、设计过程 实验报告的要求: 实验报告以文本形式递交,实验报告要书写规范、文字简练、语句通顺、图表清晰。 四、主要仪器设备 硬件:微型计算机;嵌入式系统开发平台。 软件:Keil C51;ADT 五、教材及参考书 教材

[1] 高锋.单片微型计算机原理与接口技术(第二版).北京:科学出版社,2007 [2] 自编.嵌入式系统及应用 参考书 [1] 王田苗.嵌入式系统设计与实例开发.北京:清华大学出版社,2003 [2] 陈赜.ARM9 嵌入式技术及Linux高级实践教程.北京:北京航空航天大学出版社,2005 [3] 李忠民等.ARM嵌入式VxWorks实践教程.北京:北京航空航天大学出版社,2006

嵌入式系统模拟试题及答案

学习中心/函授站_ 姓名学号 西安电子科技大学网络与继续教育学 院 2014学年下学期 《嵌入式系统》期末考试试题 (综合大作业) 题号一二三四五总分 题分2010302020 得分 考试说明: 1、大作业于2014年12月25日下发,2015年1月10日交回; 2、考试必须独立完成,如发现抄袭、雷同均按零分计; 3、答案须手写完成,要求字迹工整、卷面干净。 一、问题简述(每小题4分,共20分) 1、简述嵌入式系统的定义和组成结构。 答:嵌入式系统是以应用为中心,以计算机技术为基础,并软硬件可剪裁、功能、 ,可靠性、体积、重量、成本、功耗、成本、安装方式等方面符合要求的专用计算机系统。 嵌入式系统一般由嵌入式微处理器、存储与I/O部分、外设与执行部分、嵌入式软件等四个部分组成。 2、简单说明ARM微处理器的特点。 答:(1) 体积小、低功耗、低成本、高性能。 (2) 支持Thumb(16位)/ARM(32位)双指令集,能很好地兼 容8位/16位器件。

(3) 大量使用寄存器,指令执行速度更快。 (4) 大多数数据操作都在寄存器中完成,通过Load/Store结 构在内存和寄存器之间批量传递数据。 (5) 寻址方式灵活简单,执行效率高。 (6) 指令长度固定。 3、简述嵌入式系统产品的设计和开发过程。 答:①在嵌入式系统的开发过程中,一般采用的方法是首先在通用PC机上的集成开发环境中编程;②然后通过交叉编译和链接,将程序转换成目标平台(嵌入式系统)可以运行的二进制代码;③接着通过嵌入式调试系统调试正确;④最后将程序下载到目标平台上运行。 要强调,选择合适的开发工具和调试工具,对整个嵌入式系统的开发都非常重要。 4、简述嵌入式系统设计中要考虑的因素。 答:在嵌入式系统的开发过程中,要考虑到实时性、可靠性、稳 定性、可维护性、可升级、可配置、易于操作、接口规范、抗干 扰、物理尺寸、重量、功耗、成本、开发周期等多种因素。 5、什么是BootLoader,了解其在嵌入式系统中作用。 答:就是启动载入或引导加载又叫自举装载。由于系统加电后需 要首先运行BootLoader这段程序,因此它需要放在系统加电后 最先取指令的地址上。嵌入式处理器的生产厂商都为其处理器预 先安排了一个在系统加电或复位后最先取指令的地址。 二、名词解释(每小题2分,共10分) 1、DSP(Digital Signal Processor),数字信号处理器,一种特别用于快速处理数字信号的微处理器。DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行DSP算法,编译效率较高,指令执行速度也较高。 2、RTOS Real Time Operating System. 译为实时操作系统。实时系统是指一个能够在指定的或者确定的时间内,实现系统功能和对外部或内部、同步或异步事件作出响应的系统。 3、BSP设计板级支持包(BSP)的目的主要是为驱动程序提供访问硬件设备寄存器的函数包,从而实现对操作系统的支持。类似于PC机上的BIOS,是一个承上启下的软件层次。由嵌入OS和用户开发相结合取得。BSP一般是在嵌入式系统上固化存放。 4、总线竞争就是在同一总线上,同一时刻,有两个以上器件要通

大作业设计报告书(嵌入式系统原理与开发)

大作业设计报告书 题目:嵌入式系统原理与开发 院(系):物联网工程学院 专业: 班级: 姓名: 指导老师: 设计时间: 10-11 学年 2 学期 20XX年5月

目录 1.目的和要求 (3) 2.题目内容 (3) 3.设计原理 (4) 4.设计步骤 (5) 4.1 交通指示灯设计 (5) 4.2 S3C44B0X I/O 控制寄存器 (6) 4.3 红绿灯过渡代码: (8) 4.4 电源电路设计 (10) 4.5 系统复位电路设计 (11) 4.6 系统时钟电路设计 (11) 4.7 JTAG 接口电路设计 (12) 4.8串口电路设计 (12) 5.引脚分类图 (13) 6.参考文献 (13)

1.目的和要求 ARM技术是目前嵌入式应用产业中应用十分广泛的先进技术,课程开设的目的在于使学生在了解嵌入式系统基础理论的前提下能够掌握ARM处理器的汇编语言和c语言的程序设计方法,掌握S3C44B0X芯片的基本硬件结构特点和接口设计方法,同时熟悉ARM开发环境,学习ARM的硬件设计和软件编程的基本方法,为今后从事相关的应用与研究打下基础。通过大作业要达到如下目的: 一、掌握ARM的开发工具使用和软件设计方法。 二、掌握ARM处理器S3C44B0X的原理和GPIO接口设计原理。 三、掌握C语言与的ARM汇编语言的混合编程方法; 四、培养学生选用参考,查阅手册及文献资料的能力。培养独立思考,深入研 究,分析问题、解决问题的能力。 五、通过课程设计,培养学生严肃认真的工作作风。 2.题目内容 题目:交通指示灯系统设计 功能描述: 1.用S3C44B0X的GPIO设计相关电路; 2.设计相关的软件并注释; 3.实现十字路口2组红、黄、绿交通灯交替显示。 编程提示: 1.交通灯可用发光二极管代替; 2.电路可部分参照实验电路; 3.时间控制可以使用软件循环编程解决。

嵌入式系统实验报告

实验报告 课程名称:嵌入式系统 学院:信息工程 专业:电子信息工程 班级: 学生姓名: 学号: 指导教师: 开课时间:学年第一学期

实验名称:IO接口(跑马灯) 实验时间:11.16 实验成绩: 一、实验目的 1.掌握 STM32F4 基本IO口的使用。 2.使用STM32F4 IO口的推挽输出功能,利用GPIO_Set函数来设置完成对 IO 口的配置。 3.控制STM32F4的IO口输出,实现控制ALIENTEK 探索者STM32F4开发板上的两个LED实现一个类似跑马灯的效果。 二、实验原理 本次实验的关键在于如何控制STM32F4的IO口输出。IO主要由:MODER、OTYPER、OSPEEDR、PUPDR、ODR、IDR、AFRH和AFRL等8个寄存器的控制,并且本次实验主要用到IO口的推挽输出功能,利用GPIO_Set函数来设置,即可完成对IO口的配置。所以可以通过了开发板上的两个LED灯来实现一个类似跑马灯的效果。 三、实验资源 实验器材: 探索者STM32F4开发板 硬件资源: 1.DS0(连接在PF9) 2.DS1(连接在PF10) 四、实验内容及步骤 1.硬件设计 2.软件设计 (1)新建TEST工程,在该工程文件夹下面新建一个 HARDWARE文件夹,用来存储以后与硬件相关的代码。然后在 HARDWARE 文件夹下新建一个LED文件夹,用来存放与LED相关的代码。 (2)打开USER文件夹下的test.uvproj工程,新建一个文件,然后保存在 LED 文件夹下面,保存为 led.c,在led.c中输入相应的代码。

(3)采用 GPIO_Set 函数实现IO配置。LED_Init 调用 GPIO_Set 函数完成对 PF9 和 PF10 ALIENTEK 探索者 STM32F407 开发板教程 119 STM32F4 开发指南(寄存器版) 的模式配置,控制 LED0 和 LED1 输出 1(LED 灭),使两个 LED 的初始化。 (4)新建一个led.h文件,保存在 LED 文件夹下,在led.h中输入相应的代码。 3.下载验证 使用 flymcu 下载(也可以通过JLINK等仿真器下载),如图 1.2所示: 图1.2 运行结果如图1.3所示:

嵌入式系统试题闭卷及答案

《嵌入式系统》试题 闭卷答题时间:30分钟 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:分别是()、存储器、输入/输出和软件,一般软件亦分为操作系统相关和()两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,(),()以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有()、进程间通信、()、I/O资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为()和分时操作系统,其中实时系统亦可分为()和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(),内核的基本服务是()。 6、嵌入式开发一般采用()方式,其中宿主机一般是指()。 7、哈佛体系结构数据空间和地址空间(),ARM7TDMI采用()的内核架构,ARM920T采用()的内核架构。 采用()级流水线结构,ARM920TDMI采用()级流水线。 9.按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix 操作系统属于()操作系统,VxWorks属于()操作系统。 10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(),M表示内嵌乘法器Multiplier,I表示(),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、要使CPU能够正常工作,下列哪个条件不是处理器必须满足的。() (A)处理器的编译器能够产生可重入代码(B)在程序中可以找开或者关闭中断(C)处理器支持中断,并且能产生定时中断(D)有大量的存储空间 2、下面哪种操作系统最方便移植到嵌入式设备中。() (A)DOS (B)unix (C)Windowsxp (D)linux 3、下面哪个选项不是SUB设备的特点。() (A)串行通信方式(B)不可热拨插 (C)分HOST、DEVICE和HUB (D)通信速率比RS232快 4、下面哪种嵌入式操作系统很少用于手机终端设备上。() (A)Symbian (B)WinCE (C)uc/os (D)linux 5、以下哪项关于SRAM和DRAM的区别是不对。() (A)SRAM比DRAM慢(B)SRAM比DRAM耗电多 (C)DRAM存储密度比SRAM高得多(D)DRM需要周期性刷新 6、uc/os操作系统不包含以下哪几种状态。() (A)运行(B)挂起 (C)退出(D)休眠 7、0x07&0x11的运算结果是。() (A)0x01 (B)0x11 (C)0x17 (D)0x07 8、以下哪种方式不是uc/os操作系统中任务之间通信方式。() (A)信号量(B)消息队列 (C)邮件(D)邮箱 9、以下哪种方式不是文件系统的格式。() (A)FAT (B)DOS (C)NTFS (D)Ext 10、在将uc/os操作系统移植到ARM处理器上时,以下哪些文件不需要修改。() (A) (B) (C) (D)OSTaskInit 三、判断题:共5小题,每小题2分,满分10分。 1、所有的电子设备都属于嵌入式设备。() 2、冯诺依曼体系将被哈佛总线所取代。() 3、嵌入式linux操作系统属于免费的操作系统。() 4、移植操作系统时需要修改操作系统中与处理器直接相关的程序。() 5、的最大通信速率为12M/S。() 简答题:共2小题,每小题10分,满分20分。 1、根据嵌入式系统的特点,写出嵌入式系统的定义。 2、试分析实时操作系统的工作状态特点及相互之间的转换。

2016年下学期嵌入式系统设计大作业

嵌入式系统设计大作业 1、叙述嵌入式系统开发过程中所要解决的两个问题。 2、叙述嵌入式平台的搭建过程,以linux为例。 3、给出现今有哪些用于嵌入式开发的芯片名称,他们分别是哪些公司的产品? 体系结构是什么? 4、现今较流行的嵌入式操作系统有哪些? 5、PXA270嵌入式开发板的接口有哪些? 6、请写出Nor Flash和Nand Flash的区别。 7、冯。诺依曼架构与哈佛架构的区别。 8、单周期3级流水的情况下,第10个指令周期时,第几条指令执行结束? 9、下面是linux下的一个简单的设备驱动程序,写出linux设备驱动常用的数据结构,同时阅读下面代码,请给出测试程序中的每条语句加以注释。 设备驱动程序Keypad.c的源代码: #include #include #include #include #include #include #include #include #include #include #include #define LEDnKEY_MAJOR 251 #define KEYPAD_NAME "X-Hyper250 Keypad" #define KEYPAD_VERSION "Version 0.1" #define EXT_KEY_CS EXT_PORT2 #define EXT_LED_CS EXT_PORT3 #define LED_SHOW 10 /*EXT_KEY_CS 为向外部LED进行数值设定,它定义在其它头文件里*/ void led_off_on() /**/ { int i; EXT_LED_CS = 0xff; for(i =0 ; i<8;++i) { EXT_LED_CS = ~((1 << i) & 0xff); udelay(30000); } EXT_LED_CS = 0xff; }

南邮嵌入式系统B实验报告2016年度-2017年度-2

_* 南京邮电大学通信学院 实验报告 实验名称:基于ADS开发环境的程序设计 嵌入式Linux交叉开发环境的建立 嵌入式Linux环境下的程序设计 多线程程序设计 课程名称嵌入式系统B 班级学号 姓名 开课学期2016/2017学年第2学期

实验一基于ADS开发环境的程序设计 一、实验目的 1、学习ADS开发环境的使用; 2、学习和掌握ADS环境下的汇编语言及C语言程序设计; 3、学习和掌握汇编语言及C语言的混合编程方法。 二、实验内容 1、编写和调试汇编语言程序; 2、编写和调试C语言程序; 3、编写和调试汇编语言及C语言的混合程序; 三、实验过程与结果 1、寄存器R0和R1中有两个正整数,求这两个数的最大公约数,结果保存在R3中。 代码1:使用C内嵌汇编 #include int find_gcd(int x,int y) { int gcdnum; __asm { MOV r0, x MOV r1, y LOOP: CMP r0, r1 SUBLT r1, r1, r0 SUBGT r0, r0, r1 BNE LOOP MOV r3, r0 MOV gcdnum,r3 //stop // B stop // END } return gcdnum; } int main() { int a; a = find_gcd(18,9);

printf("gcdnum:%d\n",a); return 0; } 代码2:使用纯汇编语言 AREA example1,CODE,readonly ENTRY MOV r0, #4 MOV r1, #9 start CMP r0, r1 SUBLT r1, r1, r0 SUBGT r0, r0, r1 BNE start MOV r3, r0 stop B stop END 2、寄存器R0 、R1和R2中有三个正整数,求出其中最大的数,并将其保存在R3中。 代码1:使用纯汇编语言 AREA examp,CODE,READONL Y ENTRY MOV R0,#10 MOV R1,#30 MOV R2,#20 Start CMP R0,R1 BLE lbl_a CMP R0,R2 MOVGT R3,R0 MOVLE R3,R2 B lbl_b lbl_a CMP R1,R2 MOVGT R3,R1 MOVLE R3,R2 lbl_b B . END 代码2:使用C内嵌汇编语言 #include int find_maxnum(int a,int b,int c)

《嵌入式系统》考试试卷及答案

《嵌入式系统》课程试卷 考试时间:__120___分钟开课学院___计算机___ 任课教师____________ 姓名______________ 学号_____________班级_______________ 一.单项选择题(2 × 20): 1下面不属于Xscale微架构处理器的主要特征有:( ) A.采用了7级超级流水线、动态跳转预测和转移目标缓冲器BTB技术(Branch Target Buffer)。 B.支持多媒体处理技术、新增乘/累加器MAC、40位累加器、兼容ARM V5TE 指令和特定DSP型协处理器CP0。 C.采用了32KB的指令Cache。 D.采用了64KB的数据Cache。 2以下不属于XScale超级流水线的流水级是( ) A.寄存器文件/移位级(FR) B.写回级(XWB) C.寄存器读取级 D.和执行级二(X2) 3 目前嵌入式系统领域中使用最广泛、市场占有率最高的实时系统是:() A. Symbian B. Windows CE C. VxWorks D. QNX 4 下面那句话的描述是不正确的?( ) A.在一个基于XScale内核的嵌入式系统中,系统在上电或复位时通常都从

地址0x00000000 处开始执行 B.引导装载程序通常是在硬件上执行的第一段代码,包括固化在固件中的 引导代码(可选)和Boot Loader两大部分。 C.在嵌入式系统中,Boot Loader不依赖于硬件实现。 D.Boot Loader就是在操作系统内核运行之前运行的一段小程序。 5 通常情况下,目标机上的Boot Loader通过串口与主机之间进行文件传输,下面不属于通常使用的传输协议的是:( ) A.modem协议 B.xmodem协议 C.ymodem协议 D.zmodem协议 6 Make预置了一些内部宏,其中$@表示:() A.没有扩展名的当前目标文件 B.当前目标文件 C.当前目标文件最近更新的文件名 D.当前目标文件最近更新的文件名 7 在Default kernel command string “root=1f03 rw console=ttyS0,115200 init=/linuxrc”中,代表根文件系统(“/”) 的设备文件主号码是什么?( ) A.1f B.03 C.ttyS0 D.115200 8 用命令dd if=/dev/zero of=ramdisk_img bs=1k count=8192创建的ramdisk_img 其空间大小为多少?( ) A.8M bit

嵌入式试题集(含答案)

1、ARM微处理器有7种工作模式,它们分为两类非特权模式、特权模式。其中用户模式属于非特权模式 2、ARM支持两个指令集,ARM核因运行的指令集不同,分别有两个状态ARM 、Thumb,状态寄存器CPSR的T 位反映了处理器运行不同指令的当前状态 3、ARM核有多个寄存器,其部分用于通用寄存器,有小部分作为专用寄存器,R15 寄存器用于存储PC,R13通常用来存储SP 。ARM处理器有两种总线架构,数据和指令使用同一接口的是诺依曼,数据和指令分开使用不同接口的是哈佛结构 4、ARM微处理器复位后,PC的地址通常是0x0 ,初始的工作模式是Supervisor 。 5、ARM微处理器支持虚拟存,它是通过系统控制协处理器CP15 和MMU(存储管理部件)来进行虚拟存的存储和管理。当系统发生数据异常和指令领取异常时,异常处理程序透过嵌入式操作系统的存管理机制,通过MMU交换物理存和虚拟存的页面,以保证程序正常执行。 6、编译代码时,有两种存储代码和数据的字节顺序,一种是小端对齐,另一种是大端对齐。 7、构建嵌入式系统开发环境的工具链有多种,其中开放源码的工具链是GNU工具链,ARM公司提供的工具链是ADS工具链计算机有CISC和RISC两种类型,以ARM微处理器为核心的计算机属于RISC类型,其指令长度是定长的 8、目前使用的嵌入式操作系统主要有哪些?请举出六种较常用的。 Windows CE/Windows Mobile、VxWork、Linux、uCos、Symbian、QNX任选六 9、Boot Loader在嵌入式系统中主要起什么作用?完成哪些主要的工作? 答:Boot Loader是在嵌入式系统复位启动时,操作系统核运行前,执行的一段程序。通过Boot Loader,初始化硬件设备,建立存和I/O空间映射图,为最终加载操作系统核调整好适当的系统软硬件环境。 10、搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?在Windows主机上使用什么软件建立连接?在Linux主机上使用什么软件建立连接? 答:RS-232,以太网口、并口在Windows主机上使用超级终端软件,在Linux主机上使用Minicom软件 11、嵌入式开发环境主要包括哪些组件? 嵌入式系统开发需要交叉编译和在线调试的开发环境,主要包括 ●宿主机 ●目标机(评估电路板) ●基于JTAG的ICD仿真器、或调试监控软件、或在线仿真器ICE ●运行于宿主机的交叉编译器和器、以及开发工具链或软件开发环境 ●嵌入式操作系统 12、在进行基于ARM核的嵌入式系统软件开发时,调用如下函数: int do_something(int arg1,void *arg2,char arg3,int *arg4) 这四个参数通过什么方式从调用程序传入被调函数? 根据A TPCS编程规,调用函数和子程序通过R0——R3四个寄存器传递参数,超过四个参数使用堆栈传递。因此arg1通过R0传入,arg2, 通过R1传入,arg3通过R2传入,arg4通过R3传入 13、目前使用的嵌入式操作系统主要有哪些?请举出六种较常用的。 Windows CE/Windows Mobile、VxWork、Linux、uCos、Symbian、QNX任选六 14、写一条 ARM 指令,完成操作r1 = r2 * 3(4分) ADD R1,R2,R2, LSL #1 15、初始值R1=23H,R2=0FH执行指令BIC R0,R1,R2,LSL #1后,寄存器R0,R1的值分别是多少?(4分) R0=21H,R1=23H 16、说明指令STMIA r12!, {r0-r11}的操作功能。(4分) 将R0-R11十二个寄存器中的32位数据,存储到R12地址指针为起始地址的存中,地址的操作方式是先操作、后增加,并更新地址。

嵌入式系统综合实验一

实验名称: 姓名: 学号: 装 订 线 P.1 实验报告 课程名称: 嵌入式系统设计 指导老师:马永昌 成绩:________________ 实验名称:综合实验一dht11和人体感应传感器 实验类型:验证型 同组学生姓名:孙凡原 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 一、实验目的和要求 1.掌握字符设备驱动程序的基本结构和开发方法 2.掌握用户空间调用设备驱动的方法 3.掌握用户和内核的交互 二、实验内容和原理 1.编写温湿度传感器DHT11驱动,传输打印温湿度信息 2.编写人体感应传感器驱动,控制LED 灯亮灭 原理: 温湿度传感器DHT11: 1.引脚图 实际使用传感器没有NC 引脚 2.数据采集 a.数据总时序 用户主机发送一次开始信号后,DHT11 从低功耗模式转换到高速模式,待主机开始信号结束后,DHT11 发 专业:测控技术与仪器 姓名:颜睿 学号:3130103850 日期:2018.4.28 地点:创客空间

装订线送响应信号,送出40bit 的数据,幵触发一次信采集。 b.主机发送起始信号 连接DHT11的DATA引脚的I/O口输出低电平,且低电平保持时间不能小于18ms,然后等待DHT11 作出应答信号。 c.检测从机应答信号 DHT11 的DATA 引脚检测到外部信号有低电平时,等待外部信号低电平结束,延迟后DHT11 的DATA引脚处于输出状态,输出80 微秒的低电平作为应答信号,紧接着输出80 微秒的高电平通知外设准备接收数据。 d.接收数据 (1)数据判定规则 位数据“0”的格式为:50 微秒的低电平和26-28 微秒的高电平,位数据“1”的格式为:50 微秒的低电平加70微秒的高电平。 接收数据时可以先等待低电平过去,即等待数据线拉高,再延时60us,因为60us大于28us且小于70us,再检测此时数据线是否为高,如果为高,则数据判定为1,否则为0。

嵌入式系统试卷及答案

嵌入式系统试卷及答案

2014年上学期11级计算机专业嵌入式系统期末试卷 专业班级学号姓名___ _____ 考试时间120分钟考试方式闭卷考试成绩__________ _ 题号一二三四五六 得分 一、选择题(本大题共10个小题,每小题1分,共10分) 1、和PC机系统相比,下列哪点不是嵌入式系统所特有的:( C) A、系统内核小 B、专用性强 C、可执行多任务 D、系统精简 2、ADD R0,R1,#3属于( A)寻址方式。 A、立即寻址 B、多寄存器寻址 C、寄存器直接寻址 D、相对寻址 3、GET伪指令的含义是:(A) A、包含一个外部文件 B、定义程序的入口 C、定义一个宏 D、声明一个变量 4、μCOS-II操作系统不属于:(C) A、RTOS B、占先式实时操作系统 C、非占先式实时操作系统 D、嵌入式实时操作系统 5、FIQ中断的入口地址是:(A) A、0x0000001C B、0x00000008 C、0x00000018 D、0x00000014 6、ARM指令集和Thumb指令集分别是(D)位的。 A、8位,16位 B、16位,32位 C、16位,16位 D、32位,16位 7、BL和BX的指令的区别是( D ) A、BL是跳转并切换状态;BX带返回的跳转并切换状态。 B、BL是带返回的连接跳转;BX带返回的跳转并切换状态。 C、BL是跳转并切换状态;BX是带返回的连接跳转。 D、BL是带返回的连接跳转;BX是跳转并切换状态。 8、Boot Loader 的启动过程是( A ) A.单阶段 B. 多阶段 C.单阶段和多阶段都有 D.都不是 9、以下说法不正确的是( B ) A 、任务可以有类型说明 B 、任务可以返回一个数值 C 、任务可以有形参变量 D 、任务是一个无限循环 10、若已定义的函数有返回值,则以下关于该函数调用叙述中错误的是(D) A、函数调用可以作为独立的语句存在

嵌入式Linux试题答案

《嵌入式开发》期中试卷 试卷适用范围:2011级计算机科学与技术(本)1、2班 一、填空题(每空1分,共46分) 习题 1 1.填空题 (1)嵌入式系统是以应用为中心、以计算机技术为基础,软、硬件可裁剪,适应于应用系统对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统。 (2)嵌入到对象体系中的专用计算机系统。嵌入性、专用性与计算机系统是嵌入式系统的三个基本要素。对象系统是指嵌入式系统所嵌入的宿主系统。 (3)嵌入式系统按形态可分为设备级(工控机)、板级(单板、模块)、芯片级(MCU、SOC)。 (4)嵌入式系统由硬件和软件两大部分组成,硬件一般由高性能微处理器和外围接口电路组成,软件一般由操作系统和应用程序构成,软件和硬件之间由所谓的中间层(BSP层,板级支持包)连接。 (5)嵌入式系统从组织层次上看,嵌入式系统一般由硬件层、中间层、软件层和功能层组成。 (6)在专用的嵌入式板子上面运行GNU/Linux系统已经变得越来越流行。一个嵌入式Linux系统从软件的角度看通常可以分为四个层次:引导加载程序、 Linux内核、文件系统、用户应用程序。 (7)嵌入式系统硬件的核心部件是各种类型的嵌入式处理器。 (8)嵌入式系统的核心部件是嵌入式处理器,一般把嵌入式处理器分成4类,即微处理器、微控制器、数字信号处理器、和嵌入式片上系统。 (9)ARM公司首创了 chipless 的生产模式,专门从事基于RISC技术芯片的设计开发,公司本身并不生产芯片,而是设计出高效的IP内核,授权给半导体公司使用。 (10)ARM7TDMI中,T表示支持Thump指令集。D表示支持片上调试(Debug)。M表示内嵌硬件乘法器(Multiplier)。I表示支持片上断点和调试点。 (11)ARM9系列微处理器包含ARM920T、ARM922T和ARM940T三种类型,以适用于不同的应用场合。 (12)ARM微处理器有两种工作状态:Thump状态、ARM状态。 (13)通用寄存器分为三类:未分组寄存器、分组寄存器、程序计数器(PC)。 (14)异常是由内/外部源引起的需要处理器干预的一个事件。 (15)精简指令集计算机RISC(Reduced Instruction Set Computer)和复杂指令集计算机CISC 是当前CPU的两种架构。 (16)ARM微处理器的在较新的体系结构中支持两种指令集: ARM指令集、Thump指令集。 (17)MMU的作用有两个:将虚拟地址转化为物理地址、对存储器访问的

嵌入式系统基础作业

一、简要说明嵌入式系统产品的基本组成、嵌入式系统特点、嵌入式系统开发流程; 答:基本组成:可分为硬件和软件两个组成部分。其中硬件组成结构以嵌入式微处理机为中心,配置存储器I/O设备、通信模块以及电源等必要的辅助借口;软件组成结构包括应用层、OS层、BSP等。 特点:“专用”计算机系统;运行环境差异大;比通用PC系统资源少;功耗低、体积小、集成度高、成本低;具有完整的系统测试和可靠性评估体系;具有较长的生命周期;需要专用开发工具和方法进行设计;包含专用调试电路;多科学知识集成系统。 开发流程:(1)系统定义与需求分析阶段。(2)方案设计阶段。(3)详细设计阶段。(4)软硬件集成测试阶段。(5)系统功能性及可靠性测试阶段。 二、写出教材图1-1嵌入式系统的组成结构中各英文缩写的中文释义; 答:.OS:操作系统 API:应用程序接口 BSP:板级支持包 Boot:启用装载 HAL:硬件抽象层 SoC/SoPC:片上系统/片上可编程系统 GPIO:控制处理器输出接口 USB:通用串行总线 LCD:液晶显示器 ADC/DAC:模数转换和数模转换 FPGA/CPLD:现场可编程门阵列/复杂可编程逻辑器件 UART/IrDA:通用异步收发传输器/红外线接口 DMA:直接内存访问 CAN:控制器局域网络 Timer/RTC:定时器/实时时钟 MMU/Cache:内存管理单元/高速缓冲存储器

三、比较说明FLASH存储器中NOR型和NAND型FLASH的主要区别;比较说明RAM 存储器中SRAM和SDRAM的主要区别; 答:NORFlash的读取和我们常见的SDRAM的读取是一样,用户可以直接运行装载在NORFLASH里面的代码,这样可以减少SRAM的容量从而节约了成本。NANDFlash没有采取内存的随机读取技术,它的读取是以一次读取一块的形式来进行的,通常是一次读取512个字节,采用这种技术的Flash比较廉价。SRAM是靠双稳态触发器来记忆信息的;SDRAM是靠MOS电路中的栅极电容来记忆信息的。由于电容上的电荷会泄漏,需要定时给与补充,所以动态RAM需要设置刷新电路。但动态RAM比静态RAM集成度高、功耗低,从而成本也低,适于作大容量存储器。所以主内存通常采用SDRAM,而高速缓冲存储器(Cache)则使用SRAM,在存取速度上,SRAM>SDRAM。 四、说明嵌入式系统常见硬件平台种类、典型处理器型号; 答:典型的型号有MIPS处理器、PowerPC处理器、Sparc处理器、ARM处理器、Xtensa系列可配置处理器。 五、嵌入式系统中常用的接口或通信方式有RS232、RS485、BlueTooth、CAN、IrDA、GPRS、SPI、GSM、802.11、SPI、IIC、Ethernet、JTAG等,请根据通信介质是否无线或有线对其进行分类;请根据通信距离从近至远依次排序;请根据通信速度从慢至快依次排序; 答:无线:RS485、BlueTooth、CAN、IrDA、GPRS、GSM、802.11、Ethernet 有线:RS232、SPI、IIC、JTAG 传输距离:RS232、SPI、IIC、JTAG、BlueTooTh、IrDA、RS485、CAN、802.11、GSM、GPRS、Ethernet 传输速度:GSM、GPRS、Blueteeth、IrDA、802.11、CAN、RS232、RS485、Ethernet、IIC、SPI、JTAG 六、列举常见嵌入式操作系统及其特点; 答:源代码公开并且遵循GPL协议 有大量的免费的优秀的开发工具,且都遵从GPL,是开放源代码的。

嵌入式系统设计实验四

实验报告 课程名称: 嵌入式系统设计 指导老师:马永昌 成绩:________________ 实验名称:实验四C 语言裸机编程 实验类型:验证型 同组学生姓名:__孙凡原_______ 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 一、实验目的和要求 ? 初步了解C 运行库 ? 初步了解gcc arm 常用编译选项 ? 了解ARM 中断处理过程 二、实验内容和原理 ? 编写C 裸机代码实现跑马灯,通过控制Timer 中断实现 ? 通过控制uart 串口进行调试打印 三、主要仪器设备 树莓派、PC 机 四、操作方法和实验步骤 1 通过定时器产生中断,控制gpio ,实现跑马灯 2 控制uart 控制器,产生调试打印。 五、实验数据记录和处理 1.主程序arm.c 注释 //包含头文件 #include #include #include #include "rpi-aux.h" #include "rpi-armtimer.h" #include "rpi-gpio.h" #include "rpi-interrupts.h" #include "rpi-systimer.h" #include "rpi-led.h" /** Main function - we'll never return from here */ void kernel_main( unsigned int r0, unsigned int r1, unsigned int atags ) 专业:测控技术与仪器 姓名:颜睿 学号:3130103850 日期:2018.3.28 地点:创客空间

ARM嵌入式系统试题及答案解析

ARM嵌入式系统基础教程 ----期中开卷 专业:软件1002班姓名:王世伟学号:04103060(24) 一、嵌入式系统基本概念 1、什么是嵌入式系统?有何特点? 答:所谓嵌入式,实际上是“嵌入式计算机系统”,的简称,它是相对于通用计算机系统而言,注重于发展独立的单芯片技术。嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”。 特点:(1)嵌入式系统是将先进的计算机技术,半导体技术以及电子技术与各行业的具体应用相结合的产物,这一点就决定了他必然是一个技术密集,资金密集,高度分散,不断创新的知识集成系统。(2)系统内核小(3)专用性强(4)系统精简(5)系统软件要求(6)嵌入式软件开发要走向标准化,需要使用多任务的操作系统。(7)嵌入式系统本身并不具备在其上进行进一步开发的能力。 2、举例在你的身边常见到的嵌入式系统产品,谈一谈你对“嵌入式系统”的初步理 解。 答:产品有:洗衣机,空调,手机。 嵌入式系统就是内置小计算机系,可以对机器进行智能控制的系统。 3、嵌入式系统的3个基本特点? 答:(1)专用性(2)嵌入型(3)计算机系统 4、什么是嵌入式处理器,嵌入式处理器可以分为几大类? 答:嵌入式处理机是嵌入式的核心,是控制,辅助系统运行的硬件单元。 分类:四大类(1)嵌入式微处理器(2)嵌入式微控制器(3)嵌入式DSP处理器(4)SoC片上系统 5、广泛使用的三种类型的操作系统? 答:多道批处理操作系统、分时操作系统以及实时操作系统。 6、列举常见的4种嵌入式操作系统?说明你对嵌入式操作系统的基本认识,嵌入式 操作系统在嵌入式系统开发中的必要性。 答:嵌入式Linux、WinCE、VxWorks、μC/OS-II 没有操作系统的计算机效率十分底下,把操作系统嵌入到计算机中,可以提高系统

相关文档
最新文档