ARM嵌入式系统习题册docxWord格式.docx

上传人:b****6 文档编号:19580341 上传时间:2023-01-08 格式:DOCX 页数:26 大小:113.14KB
下载 相关 举报
ARM嵌入式系统习题册docxWord格式.docx_第1页
第1页 / 共26页
ARM嵌入式系统习题册docxWord格式.docx_第2页
第2页 / 共26页
ARM嵌入式系统习题册docxWord格式.docx_第3页
第3页 / 共26页
ARM嵌入式系统习题册docxWord格式.docx_第4页
第4页 / 共26页
ARM嵌入式系统习题册docxWord格式.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

ARM嵌入式系统习题册docxWord格式.docx

《ARM嵌入式系统习题册docxWord格式.docx》由会员分享,可在线阅读,更多相关《ARM嵌入式系统习题册docxWord格式.docx(26页珍藏版)》请在冰豆网上搜索。

ARM嵌入式系统习题册docxWord格式.docx

嵌入式计算机系统与通用计算机系统显著区别的特点是什么?

18

什么是RISC?

什么是CISC?

19

什么是可编程片上系统?

20

什么是嵌入式处理器,嵌入式处理器可以分为几大类?

21

什么是嵌入式处理器除CPU内核外,嵌入式系统SOC芯片内部一般由哪几个典型部件组构成?

22

什么是嵌入式系统?

其特点有些什么?

23

在物联网时代的互联网大数据与早期互联网中的数据比较,有何特点。

第2章

ARM7TDMI处理器采用几级流水线处理,使用何种存储器编址方式?

ARM7TDMI处理器存储空间如何编址,采用什么样的体系结构,其可寻址地址空间多大?

ARM7TDMI内部寄存器特点?

ARM7TDMI有几种寻址方式?

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

ARM7处理器复位后处于何种工作模式?

处于何种工作状态?

处理器进入异常模式时,自动切换到何种工作状态?

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

ARM处理器的工作模式有哪几种?

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

对下面ARM7的中断服务程序代码模板各行的功能进行注解

SUBLR,LR,#4

STMFDSP!

{R0-R3,LR}

LDMFDSP!

{R0-R3,PC}a

分类介绍ARM7TDMI处理器的工作模式,哪些是特权的,哪些是非特权模式?

分类列出ARM7TDMI用户模式或系统模式下内部寄存,哪些通用寄存器是分组的,在其他异常模式下还有哪些寄存器。

寄存器CPSR,SPSR的功能各是什么?

各有几个分组?

寄存器R13,R14,R15的专用功能各是什么?

简述ARM7处理器的2种工作状态功能和作用。

简述ARM处理器七种工作模式和两种工作状态。

列出有时要使用Thumb指令、有时又要使用ARM指令的原因。

名词解释:

ARM三级指令流水线、FPGA、JTAG、SWD调试接口、大端存储模式、冯诺依曼结构、哈佛结构、小端存储模式。

什么是数据的边界对齐?

什么是小端和大端存储器组织?

为什么有时要使用Thumb技术的原因?

第3章

ARMCortex-M3有何特点?

Contex-M3系列处理器内核采用了多少级流水线?

Contex-M3系列处理器内核采用了什么存储结构?

Context-M3处理器可以使用哪几个堆栈?

Cortex-M3的处理器有那两种工作模式和状态?

如何进行工作模式和状态的切换?

Cortex-M3的处理器有那两种状态?

与ARM7的工作状态比较,有何区别?

Cortex-M3的存储空间可以分为哪几个部分,每一部分的地址范围是怎样的?

Cortex-M3可以使用哪种存储格式或端模式?

Cortex-M3是高性能处理器还是低功耗处理器,在睡眠时功耗电流大致多少微安?

Cortex-M3体系架构中,有哪两个位带区,分别位于哪个存储区中?

Cortex-M系列支持哪些指令集?

指令集中包含哪几类不同宽度指令?

与ARM7中的32位ARM/16位Thumb指令集有何关系?

Cortex-M3处理器有几种工作模式?

各模式有何种特权?

分别使用使用哪个堆栈?

Cortex-M3异常事件源有哪几类?

各类异常事件产生的原因是什么?

当处理器在Thread模式下,代码一定是有何种特权?

分别列出M3通用寄存器和所有特殊功能寄存器的用途。

简述ARM7/CortexM3硬件开发环境组成,常用的软件集成开发环境、调试接口、协议转换器有哪几种?

举出2个ARM公司当前应用比较多的ARM处理器内核版本?

请画出Cortex-M3处理器各特权级别与工模式间的状态转换图,并对状态转换图中各转换路径进行简要说明。

在系统复位后,M3自动进入何种工作模式和工作状态,代码最初使用哪个堆栈,何种模式下的代码使用线程堆栈?

在系统复位后,代码最初使用哪个堆栈,何种模式下的代码使用线程栈?

最新的ARM核几种大系列,各自应用领域有何不同?

最新的ARM内核有几大系列?

各自目标应用市场在些领域?

第4章

初始值R1=23H,R2=0FH执行指令;

BICRO,R1,R2,LSL#1;

后,寄存器RO,R1的值分别是多少?

(4分*

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

举例说明3种以上ARM指令寻址方式?

每种方式写一条指令,并说明其功能。

请编写一段状态切换汇编程序代码是ARM7处理器从32位ARM状态切换为16位Thumb状态。

请说明MOV指令与LDR加载指令的区别和用途?

指令ADR,ADRL、LDR、NOP是如何处理地址值读入到寄存器中的?

指令LDRR1,=0xFFF是如何将立即数Oxfff读入到R1的?

初始值R1=27H,R2=030H执行指令,BICRO,R1,R2,LSL#1;

后,寄存器RO,R1的值分别是多少?

(4分卜

第5章

列举三种汇编语言中参数传递的基本方法

第6章

在C语言中定义了glob_var全局变量,请给出用汇编语言把数值0x0写入该变量的代码。

答:

//----c代码定义全局变量——;

staticlongintglob_var;

;

globa_var=0x8080;

...;

〃一■汇编代码・・・-・;

在汇编语言中定义了glob_var全局变量,请编写读出该变量的C语言代码。

//----汇编代码-----;

exportglob_var;

glob_varDCD0x8080;

Idrr1,#0x002;

strr1,[rO];

//—-C语言代码;

ARM系列芯片常用的开发工具?

C语言是基于栈的语言,请描述ARM-C语言启动代码的4项主要功能,说明C语言动态变量在哪里分配存储空间,静态全局变量又在哪里分配存储空间?

LPC2000系列芯片常用的开发工具?

搭建嵌入式开发环境,连接目标板,一般使用什么通信接口连接?

在Windows主机上使用什么软件建立连接?

在Linux主机上使用什么软件建立连接?

构造嵌入式开发环境有哪几种形式?

汇编语言程序调用C语言程序?

简述ARMRealViewMDKKeil开发环境的特点。

简述ARM开发环境包括哪几部分?

用框图描述各部分的相互关系,简要说明建立及调试一个开发项目的基本步步骤。

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

请用if、else语句,将下列汇编代码转换为等效C语言代码。

请用switch/case语句,将下列汇编代转换成等效C语言代码。

L1CMPR1,#10;

BNEL10;

MOVR0,#1;

;

_

BL_Exit;

湘当于C语言break语句;

L10CMPR1,#12;

BNEL12;

MOVR0,#12;

湘当于C语言break语句;

L12CMPR1,#15;

CMPR1,#22;

BNEL22;

MOVRO,#22;

L22MOVRO,#0xF;

相当于C语言default语句;

L_Exit...o

如何在c语言程序中内嵌汇编?

如何在汇编语言程序访问C语言char/short/int等的类型全局变量?

阅读如下模板程序段,解释说明在含子程序嵌套的子程序subFum中,如何保护子程序返回地址,如何返回到调用程序段中?

Main;

顶层主程序

BLSubFunl

SubFunl;

前级子程序

STMFDR13!

{R0-R12,LR};

»

,,

BLSubFun2

LDMFDR13!

{R0-R12,PC}

SubFun2;

嵌套子程序

j,■,

在ATPCS规范中,子程序调用一般使用哪些寄存器传递参数,多于6个参数时又使用什么方法传递参数?

在ATPCS规范中,在C语言程序如何调用汇编语言程序?

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

intdo_something(intarg1,void*arg2,chararg3,int*arg4);

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

'

在嵌入式C语言程序设计中为提高程序效率的相关设计技巧。

在嵌入式系统编程中,常需要使用C语言与汇编语言混合编程方法,请给出3条理由。

第7章

对下面3行C语言程序功能及语法实现进行详细解释,并写若干行代码说明其用途。

#defineinput32(port)*((unsignedlongint*)port);

#defineoutput32(port,data)*((unsignedlongint*)port)=data;

#defineMREG*((unsignedlongint*)0xffff8004)

对下C语言程序定义了一个内存映射的IO端口寄存器,请详细解释其功能及语法实现,并写若干行代码对该端口进行读写操作。

对下面C语言程序定义内存映射的端口I/O操作函数,详细解释其的语法实现,并写若干行代码举例说明其用途。

#defineoutput32(port,data)*((unsignedlongint*)port)=data

CM3处理器包含几个位带区,已知存储单元0x2000_0000第3位的位带区位地址映射为0x2200_000c,fflC或汇编写出位带区的单个bit位的读宜操作方法,并写出使用普通存储器字地址对应炒作方法。

第8章

简述Cortex-M3系统滴答定时器的功能和作用。

异常、中断、中断向量、中断优先级

向量中断控制器主要功能包括哪些?

简述CM3嵌套向量中断控制器(NVIC)的主要特性。

解释说明下列ARM7中断服务程序模板中的入口和出口代码功能。

ARM7的中断服务程序,从堆栈直接中断返回范例代码;

IRQ_Handle

{R0-R12,LR);

{R0-R12,PC}A;

第9章

简要描述STM32F10X系列芯片内部GPIO的功能特点?

什么是嵌入式处理器的最小系统?

嵌入式处理器的最小系统包含那些基本电路?

第10-13章

单片机时代大多在裸机上开发,用户编程直接操作硬件,而在SOC时代,硬件驱动编程需要基于库函数编程,列出3条以上必须转变编程方式的理由。

嵌入式系统的BooTLoader的功能是什么?

嵌入式系统开发的基本流程?

嵌入式系统中BootLoader主要起什么作用?

完成哪些主要的工作?

什么是引导程序?

什么是启动程序?

两者有什么区别?

简述不同复用功能的重映射。

简述STM32的GPIO的一些主要特点(至少5个卜

简述嵌套向量中断控制器(NVIC)的主要特性。

什么是位绑定区、位绑定别名区?

它们有怎样的关系?

STM32的GPIO的配置模式有那几种?

如何进行配置模式的配置?

简述STM32最小硬件开发系统的组成及其各部分的作用。

二、综合应用设计与编程题

1.用Cortex-M3的Thumb2指令或ARM7指令写一汇编程序:

循环累加队列myarray中的所有元素,直到碰上零值元素结束循环,结果放在r4中。

程序框架如下,补充代码完成上述功能。

AREAtotal,CODEREADONLY

ENTRY

start

MOVr4,#0

在此补充代码

loop

ADDr4,r4,rl

CMPrl,#0

BNEloop

myarray

DCD1,2,3,4,8,9,9,0

2,把列代码翻译成高效32位ARM汇编代码

C语言代码

等价汇编代码

if(a>

b){a=0;

}

else{a=10;

switch(a)

case1:

...,

break;

case2:

case10:

...,

default:

3.把main函数内部的C语言程序翻译转换成功能相同的汇编代码。

(6分)

c语言代码

staticintx,y;

staticint*px;

staticint*py;

voidmain(void)

{

x=0xl2345678;

y=x;

px=&

x;

py=&

y;

*px=0x55667788;

*py二*px;

 

4.有如下程序段,画出程序流程图,并回答执行程序以后R0的值是多少?

num

EQU

程序流程图

MOV

rO,#0

rl,#5

r2,#2

BL

func

stop

B

CMP

rO,#num

MOVHSpc,Ir

ADR

r3,JumpTable

LDRpc,[r3,r0,LSL#2]

JumpTableDCDDoA

DCDDoS

DoAADDrO,rl,r2

MOVpc,Ir

DoSSUBrO,rl,r2

END

运行结果:

5.把列代码翻译成高效32位ARM汇编代码。

逐价汇编代码

b)(a=0;

else(a=10;

.•♦,

..♦,

6,已知一个外设有64个32bits寄存器,连续占用ARM处理器地址范围为0x83000000^0x830000ff的主存储器空间,共256字节。

写一段C或汇编程序,对64个外设寄存器进初始化,初始化数据在程序代码中自行定义。

7,已知一个外设基于M3内核的SOC芯片有16个32bits寄存器,连续占用ARM处理器地址范围为0x90000080^0x90000040的主存储器空间,共64字节。

写一段C或汇编程序,对16个外设寄存器进初始化,初始化数据在全局静态数据中。

8.已知一个ARM芯片的片内外设含有个数据交换缓冲区,该缓冲区直接映射到主存储器空间地址范围为0xA000C000~0xA000C3FF,共计1024字节(256个32字)。

请写一段C语言或汇编语言程序,向该缓冲区循环顺序填入字符'

A'

至『V26个大写字母的ASIIC码。

9.如图已知有U1,U3芯片,ARM芯片U1包含扩展外部SRAM的总线接口,数据总线宽度为16bit,U3是双向三态门74LS245芯片。

其中U1的信号/nCs是片选输出,低电平有效,地址总线的A31-A16参与了译码,A15-A0有引脚输

出,/nCs有效地址范围为0xff040000〜0xff04ffff,该地址范围没有其他设备;

U3的DIR选择数据传输万向,高电平A3B,低电平B9A。

/E用于选通输入,低电平有效。

用存储器单元影射方式在ARM处理器芯片外SRAM总线上扩展一个8BitGPIO个输入端口(可用32位,只设计低8位有效,高24位空闲保留),添加必要与、或、非等基本门电路和联线(尽量用网络标号)。

请完成GPIO扩展设计,写出从端读入一个8bit数据的接口驱动示例C语言或汇编语言代码,并对设计做必要说明。

(8分)

D7:

A31:

0地址nCS2

—"

译码

nRD

nWR

AOB0

AlB1

A2B2

A3B3

A4B4

A5B5

A6B6

A7B7

E74HC245

DIR

U2

11D07

18DOO

17DOI

16D02

15D03

14D04

13D05

12D06

10.LCD显示屏与ARMSOC间接口电路和LCD时序如下图所示,用LPC21xx的GPIOP0口控制LCD接口,连线定义:

RS=P0.8,RW=P0.9,E=P0.10D0-D7=P0.0-P0.7。

已知基于STM32的11条并行数据接口与

PAO

DBO

PAI

DB1

PA2

DB2

PA3

DB3

PA4

DB4

PA5

DB5

PA6

DB6

PA7

DB7

PA8

RS

PA9

RW

PAID

E

STM32

F103

SOC

LCD

模块

LCD屏关键驱动信号描述和时序如下表和图。

序号

寄存器名称

R/W

操作

只写命令

寄存器

T

写命令寄存

只读数据

读数据寄存

只写数据寄器

写数据寄存器

LCD模块寄存器和信号功能描述

RS

_r

R/W

E—

_\_i\\\_,

DBo5~~X

ZZ)

<

>

C^>

CZX_

it

IB(

III)(I®

it®

信息时序图

假设已定义好了STM32F10xGPIO_PO口32条引脚的硬件抽象层操作代码、延时函数,其函数原型和用法

如下实例所示:

〃示例代码

〃说明

voiddelay_us(int)

GPIO_PO(8)=1;

〃延时电参数us确定,单位为微秒

〃P0口的第8脚输出高电平,括号中参数范围可以从。

到31;

GPIOP0(9)二0;

//P0口的第9脚输出低电平;

GPIO_PODATA=Ox99;

“回P0.0-P0.7并行输出8bits数据0x99

请用上述电路和已定义好GPIO函数库,编写LCD接口基本驱动函数,包括向LCD输出8位数据函数和向LCD输出8位指令函数。

11.已知一个外设有64个32bits寄存器,连续占用ARM处理器地址范围为OxffffOOOO-OxffffOOff的主存储器空间,共256字节。

写一段C或汇编程序,对64个外设寄存器进初始化,初始化数据在程序代码中自行定义。

12.在MyGPIO.h文件中,己用位带操作定义好了STM32通用I/OP0口的16条引脚的硬件抽象层操作代码,延时函数,其用法如下面范例代码所示:

#includeMyGPIO.h

voiddelay_us(intus);

〃延时由参数US确定,单位为微秒

GPIO_P0(8)=l;

J/P0旦的第8脚输出高电平,括号中参数范围可以从0到31;

GPIO_P0(9)二0;

J/P0旦的第9脚输出低电平;

GPIO_PO_DATABUS=Ox99;

〃向P0.0-P0.7并行输出8bits数据0x99

下图是一片基于IIC接口的AT24C01E2PROM,与STM32芯片的电路连接如图所示。

电路描述:

其中P0.1控制写保护端,P0.1作为IIC时钟驱动信号,P0.2为双向数据输入输出端口。

基本时序描述:

向SDA输出1比特数据,延时5us以上,发1个完整时钟脉

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1