嵌入式期末考試復習資料_第1頁
嵌入式期末考試復習資料_第2頁
嵌入式期末考試復習資料_第3頁
嵌入式期末考試復習資料_第4頁
嵌入式期末考試復習資料_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、ARM微處理器有_乙種工作模式,它們分為兩類非特權模式、_特

權模式。其中用戶模式屬于非特權模式

2、ARM支持兩個指令集,ARM核因運行的指令集不同,分別有兩個狀態(tài)

ARMThumb,狀態(tài)寄存器CPSR的T位反映了處理器運

行不同指令的當前狀態(tài)

3、ARM核有多個寄存器,其中大部分用于通用寄存器,有小部分作為專用寄存

器,R15寄存器用于存儲PC,R13通常用來存儲SP

ARM處理器有兩種總線架構,數據和指令使用同一接口的是馮諾依曼,數

據和指令分開使用不同接口的是哈佛結

4、ARM微處理器復位后,PC的地址通常是0x0,初始的工作模式是

Supervisor。

5、ARM微處理器支持虛擬內存,它是通過系統控制協處理器CP15和MMU

(存儲管理部件)來進行虛擬內存的存儲和管理。當系統發(fā)生數據

異常和指令領取異常時,異常處理程序透過嵌入式操作系統的內存管理

機制,通過MMU交換物理內存和虛擬內存的頁面,以保證程序正常執(zhí)行。

6、編譯鏈接代碼時,有兩種存儲代碼和數據的字節(jié)順序,一種是小端對齊,

另一種是打斷對齊

7、構建嵌入式系統開發(fā)環(huán)境的工具鏈有多種,其中開放源碼的工具鏈是GNU

工具鏈,ARM公司提供的工具鏈是ADS工具鏈

計算機有CISC和RISC兩種類型,以ARM微處理器為核心的計算機屬于

RISC_類型,其指令長度是—定長的一

1、目前使用的嵌入式操作系統主要有哪些?請舉出六種較常用的。

WindowsCE/WindowsMobile>VxWork>Linux>uCos、Symbian>QNX任選六

2、ARM系統中的堆棧有四種,如下圖。請按圖標出四種堆棧的類型。ATPCS編

程規(guī)范約定使用的堆棧是哪一種?

LoAddressLoAddress

P

HiAddressHiAddress

答:FD、FA、ED、EAoATPCS編程規(guī)范約定使用的堆棧是FD

3、BootLoader在嵌入式系統中主要起什么作用?完成哪些主要的工作?

答:BootLoader是在嵌入式系統復位啟動時,操作系統內核運行前,執(zhí)行的一段

程序。通過BootLoader,初始化硬件設備,建立內存和I/O空間映射圖,為最

終加載操作系統內核調整好適當的系統軟硬件環(huán)境。

4、搭建嵌入式開發(fā)環(huán)境,連接目標板,一般使用什么通信接口連接?在Windows

主機上使用什么軟件建立連接?在Linux主機上使用什么軟件建立連接?

1、答:RS-232,以太網口、并口

在Windows主機上使用超級終端軟件

在Linux主機上使用Minicom軟件

5嵌入式開發(fā)環(huán)境主要包括哪些組件?

嵌入式系統開發(fā)需要交叉編譯和在線調試的開發(fā)環(huán)境,主要包括

?宿主機

?目標機(評估電路板)

?基于JTAG的ICD仿真器、或調試監(jiān)控軟件、或在線仿真器ICE

?運行于宿主機的交叉編譯器和鏈接器、以及開發(fā)工具鏈或軟件開發(fā)環(huán)境

?嵌入式操作系統

6在進行基于ARM核的嵌入式系統軟件開發(fā)時,調用如下函數:

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

這四個參數通過什么方式從調用程序傳入被調函數?

根據ATPCS編程規(guī)范,調用函數和子程序通過R0—R3四個寄存器傳遞參數,

超過四個參數使用堆棧傳遞。因此argl通過R0傳入,arg2,通過R1傳入,arg3

通過R2傳入,arg4通過R3傳入

7目前使用的嵌入式操作系統主要有哪些?請舉出六種較常用的。

WindowsCE/WindowsMobile、VxWork>Linux^uCos、Symbian^QNX任選六

1、寫一條ARM指令,完成操作rl=r2*3(4分)

ADDR1.R2,R2,

LSL#1

2、初始值R1=23H,R2=0FH執(zhí)行指令BICRO,Rl,R2,LSL#1后,寄存器

RO,Rl的值分別是多少?(4分)

R0=21H,R1=23H

3、說明指令STMIArl2!,{rO-rll}的操作功能。(4分)

將R0-R11十二個寄存器中的32位數據,存儲到R12地址指針為起始地址的內存

中,地址的操作方式是先操作、后增加,并更新地址。

4、寫一段ARM匯編程序:循環(huán)累加隊列myarray中的所有元素,直到碰上零值元

素,結果放在r4中。程序框架如下,補充代碼完成上述功能。(8分)

AREAtotal,CODEREADONLY

ENTRY

start

MOVr4,#0

ADRrO,myarray

;在此補充代碼

loop

LDRrl,[rO],#4

ADDr4,r4,rl

CMPrl,#0

BNEloop

5、這是一個由源程序strtest.c和scopy.s組成的混合程序項目,通過調用

strcopy完成字符串復制,程序代碼如下。要求閱讀程序,在程序中的注釋符“〃”

后,說明該句程序的作用,并說明extem和EXPORT偽指令的在程序中的作用。(8

分)

strtest.c

Sinclude<stdio.h>

externvoidstrcopy(char*d,constchar*s);

intmain()

{constchar*srcstr="Firststring-source”;

chardststr[]="Secondstring-destination”;

printf(z,Beforecopying:\n/z);

printf(zz'%s'\n'%s'\nz,,srcstr,dststr);//

strcopy(dststr,srcstr);//

printf(zzAftercopying:\n/z);

printf(z/'%s'\n'%s'\n",srcstr,dststr);〃

return0;

)

scopy.s

AREASCopy,CODE,READONLY

EXPORTstrcopy

strcopy

LDRBr2,;

STRBr2,;

CMPr2,#0;

BNEstrcopy;

MOVpc,Ir;

END

〃輸出源串和目標串(8分)

〃調用strcopy函數

〃輸出復制后的源串和目標串

;rl指向源串,從源串載入一個字節(jié)的字符到r2,并更新rl=rl+l

;r0指向目標串,從r2保存一個字節(jié)的字符到目標串,并更新r0=r0+l

;測試串尾標志\0

;非零轉標號strcopy

;返回

一、程序測試題(共24分)

1、寫一段ARM匯編程序:循環(huán)累加隊列myarray中的所有元素,直到碰上零值元

素,結果放在r4中。程序框架如下,補充代碼完成上述功能。(8分)

AREAtotal,CODEREADONLY

ENTRY

start

MOVr4,#0

ADRrO,myarray

;在此補充代碼

答:

loop

LDRrl,[rO],#4

ADDr4,r4,rl

CMPrl,#0

BNEloop

stop

Bstop

myarray

DCD0x11

DCD0x22

DCD0x0

END

2、有如下程序段,畫出程序流程圖,并回答執(zhí)行程序以后R0的值是多少。(8分)

numEQU2

start

MOVr0,#0

MOVrl,#5

MOVr2,#2

BLfunc

stop

Bstop

func

CMPrO,#num

MOVHSpc,Ir

ADRr3,JumpTable

LDRpc,[r3,rO,LSL#2]

JumpTable

DCDDoA

DCDDot

DoA

ADDrO,rl,r2

MOVpc,Ir

DoS

SUBr0,rl,r2

MOVpc,Ir

END

答:RO為0調用DoA,RO為1調用DoS,RO大于2直接返回,流程圖略。R0=7

3、這是一個由源程序strtest.c和scopy.s組成的混合程序項目,通過調用

strcopy完成字符串復制,程序代碼如下。要求閱讀程序,在程序中的注釋符

后,說明該句程序的作用,并說明extern和EXPORT偽指令的在程序中的作用。

(8分)

strtest.c

#include<stdio.h>

externvoidstrcopy(char*d,constchar*s);

intmain()

{constchar*srcstr="Firststring-source”;

chardststr[]="Secondstring-destination"";

printf(z,Beforecopying:\nz,);

printf(〃'%s'\n'%s'\n〃,srcstr,dststr);〃輸出源串和目標串

strcopy(dststr,srcstr);//調用strcopy函數

printf(,zAftercopying:\nz,);

printf(z,,%s\nJ%s\n,z,srcstr,dststr);//輸出復制后的源串和

目標串

return0;

)

scopy.s

AREASCopy,CODE,READONLY

EXPORTstrcopy

strcopy

LDRBr2,;rl指向源串,從源串載入一個字節(jié)的

字符到r2,并更新rl=rl+l

STRBr2,[r0],#l;r0指向目標串,從r2保存一個字節(jié)的字符

到目標串,并更新r0=r0+l

CMPr2,#0;測試串尾標志\0

BNEstrcopy;非零轉標號strcopy

MOVpc,Ir;返回

END

一、填空題(請將答案填入題后括號中):共10小題,每小題2分,滿分20分。

1、一般而言,嵌入式系統的構架可以分為4個部分:分別是(處理器)、存儲器、

輸入/輸出和軟件,一般軟件亦分為操作系統相關和(應用軟件)兩個主要部分。

2、根據嵌入式系統使用的微處理器,可以將嵌入式系統分為嵌入式微控制器,(嵌

入式DSP處理器),(嵌入式微處理器)以及片上系統。

3、操作系統是聯接硬件與應用程序的系統程序,其基本功能有(進程管理)、進

程間通信、(內存管理)、I/O資源管理。

4、從嵌入式操作系統特點可以將嵌入式操作系統分為(實時操作系統)和分時操

作系統,其中實時系統亦可分為(硬實時系統)和軟實時系統。

5、內核負責管理各個任務,或者為每個任務分配CPU時間,并且負責任務之間的

(通信),內核的基本服務是(任務切換)。

6、嵌入式開發(fā)一般采用(宿主機/目標機方式)方式,其中宿主機一般是指(PC

機或者臺式機)。

7、哈佛體系結構數據空間和地址空間(分開),ARM7TDMI采用(馮諾依曼體系)

的內核架構。

8.ARM7TDMI采用(3)級流水線結構,ARM920TDMI采用(5)級流水線。

9.按操作系統的分類可知,Dos操作系統屬于順序執(zhí)行操作系統,Unix操作系統

屬于(分時)操作系統,VxWorks屬于(實時嵌入式)操作系統。

10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(在片可調試),M表示

內嵌乘法器Multiplier,I表示(嵌入式ICE),支持在線斷點和調試。

二、選擇題(請將答案填入題后括號中):共10小題,每小題2分,滿分20分。

1、要使CPU能夠正常工作,下列哪個條件不是處理器必須滿足的。

(D)

(A)處理器的編譯器能夠產生可重入代碼(B)在程序中可以找開或者關閉中

(C)處理器支持中斷,并且能產生定時中斷(D)有大量的存儲空間

2、下面哪種操作系統最方便移植到嵌入式設備中。

(D)

(A)DOS(B)unix(C)Windowsxp(D)

1inux

3、下面哪個選項不是SUB設備的特點。

(B)

(A)串行通信方式(B)不可熱撥插

(C)分HOST、DEVICE和HUB(D)通信速率比RS232快

4、下面哪種嵌入式操作系統很少用于手機終端設備上。

(C)

(A)Symbian(B)WinCE(C)uc/os

(D)linux

5、以下哪項關于SRAM和DRAM的區(qū)別是不對

(A)

(A)SRAM比DRAM慢(B)SRAM比DRAM耗電多

(C)DRAM存儲密度比SRAM高得多(D)DRM需要周期性刷新

6、uc/os操作系統不包含以下哪兒種狀態(tài)。

(C)

(A)運行(B)掛起(0退出(D)休眠

7、0x07&0xll的運算結果是。

(A)

(A)0x01(B)0x11(C)0x17(D)0x07

8、以下哪種方式不是uc/os操作系統中任務之間通信方式。

(C)

(A)信號量(B)消息隊列(0郵件(D)郵箱

9、以下哪種方式不是文件系統的格式。

(B)

(A)FAT(B)DOS(C)NTFS

(D)Ext

10、在將uc/os操作系統移植到ARM處理器上時,以下哪些文件不需要修改。

(A)

(A)OS_CORE.C(B)include,h(C)OS_CPU.H(D)

OSTasklnit

三、判斷題:共5小題,每小題2分,滿分10分。

1、所有的電子設備都屬于嵌入式設備。

(F)

2、馮諾依曼體系將被哈佛總線所取代。

(F)

3、嵌入式linux操作系統屬于免費的操作系統。

(T)

4、移植操作系統時需要修改操作系統中與處理器直接相關的程序。

(T)

5、USB2.0的最大通信速率為12M/So

(F)

簡答題:共2小題,每小題10分,滿分20分。

1、根據嵌入式系統的特點,寫出嵌入式系統的定義。

以應用為中心、以計算機技術為基礎、軟硬件可裁減、功能、可靠性、成本、體

積、功耗嚴格要求的專用計算機系統

2、試分析實時操作系統的工作狀態(tài)特點及相互之間的轉換。

運行:獲得CPU的控制權;

就緒:進入任務等待隊列,通過調度中轉為運行狀態(tài);

掛起:任務發(fā)生阻塞,稱出任務等待隊列,等待系統實時事件的發(fā)生而被喚醒,

從而轉為就緒或者運行;

休眠:任務完成或者錯誤等原因被清除的任務,也可以認為是系統中不存在的任

務。

多任務

四、分析計算題:共2小題,每小題10分,滿分20分。

1、試寫搶占式和非搶占式的區(qū)別。

執(zhí)行的過程中對中斷處理方式不一樣,搶先式:某一中斷執(zhí)行完成后,如果有更

高優(yōu)先級的任務處于就緒狀態(tài),將執(zhí)行更高優(yōu)先級任務,而非搶占式不一樣,一

個任務只有主動放棄CPU的控制權,其它任務才能夠獲得CPU的控制權。

2、從嵌入式系統底層到上層應用軟件,試分析嵌入式計算系統的組成主要分為哪

兒個部分,并寫出各部分所完成的功能。

(1)硬件層;(2)中間層(嵌入式系統初始化,硬件相關的驅動程序);(3)軟件層(操作

系統、文件系統、GUL網絡及通用組件);(4)功能層。

五、專業(yè)名詞解釋(寫出以下英文簡寫對應的中文名稱):共5小題,每小題2分,

滿分10分。

(1)RTOS(2)CISC(3)Kernel(4)Scheduler(5)

non-preemptive

(1)RTOS(實時操作系統);(2)CISC(復雜指令集);

(3)Kemel(內核)(4)Scheduler(調度)

(5)non-preemptive(非搶先式)

1.請簡述嵌入式系統的設計過程。

嵌入式系統得設計過程:

(1)系統定義與需求分析

(2)系統設計方案的初步確立

(3)初步設計方案性價比評估與方案評審論證

(4)完善初步方案、初步方案實施

(5)軟硬件集成測試

(6)系統功能性能測試及可靠性測試

2.簡述ARM處理器的工作狀態(tài)。

ARM處理器的工作狀態(tài):

(l)ARM狀態(tài):32位,ARM狀態(tài)下執(zhí)行字對準的32位ARM指令;

(2)Thumb狀態(tài):16位,Thumb狀態(tài)下執(zhí)行半字對準的16位Thumb指令。在Thumb

狀態(tài)下,程序計數器PC使用位1選擇另一個半字。

3.簡述ARM處理器的7種運行模式及各自的用途。

ARM處理器的7種運行模式:

(1)用戶模式:正常用戶模式,程序正常執(zhí)行模式。

(2)FIQ模式:處理快速中斷,支持高速數據傳送或通道處理。

(3)IRQ模式:處理普通中斷。

(4)SVC模式:操作系統保護模式,處理軟件中斷。

(5)中止模式:處理存儲器故障,實現虛擬存儲器和存儲器保護。

(6)未定義模式:處理未定義的指令陷阱,支持硬件協處理器的軟件仿真。

(7)系統模式:運行特權操作系統任務。

4.簡述BLX、SWLSTM、LDM、MOV、MVN的含義。

BLX:帶鏈接和狀態(tài)切換的跳轉指令SWI:軟件中斷指令STM:批量內存字

寫入指令

LDM:加載多個寄存器指令MOV:數據傳送指令MVN:數據取反傳送

指令

5.請解釋下列程序中的各條指令:

,equx,45/*定義變量x,并賦值為45*/

.equy,64/*定義變量y,并賦值為64*/

.equstacktop,Ox1000/*定義棧頂0x1000*/

.globalstart/*聲明全局變量*/

.text一/*將操作符開始的代碼編譯到代碼段*/

_start:/*程序代碼開始標志*/

movsp,if/stacktop/*定義堆棧位置*/

movrO,#x/*x的值放入r0*/

strrO,[sp]/*r0的值保存到堆棧*/

movr0,#y/*y的值放入r0*/

Idrrl,[sp]/*取堆棧中的數到rl*/

addr0,rO,rl/*將r0中的數和rl中的數相加的結構放入r0*/

strr0,[sp]/*r0的值保存到堆棧*/

bstop/*程序結束,進入死循環(huán)*/

.end

6.分析說明S3C44B0X的總線優(yōu)先級順序。

(1)DRAMrefreshcontroller(DRAM刷新控制器);

(2)LCD_DMA

(3)ZDMA0.1

(4)BDMA0,1

(5)Externalbusmaster(外部總線控制器);

(6)Writebuffer(寫緩沖區(qū))

(7)Cache和CPU0

7.S3C44B0X中具有哪幾個定時器?分別有哪些功能特性?

6個16位定時器:都可以工作在中斷或DMA模式。定時器0、1、2、3、4有PWM

功能,定時器5只是一個內部定時器而無輸出引腳。

PWM定時器特性為:

>6個基于DMA或中斷操作的16位定時器

>3個8位預分頻器,2個5位除法器和1個4位除法器。

>輸出波形可編程的功率控制器(PWM)

>自動重裝或短脈沖模式(One-shotPulseMode)

>死區(qū)發(fā)生器

1個看門狗定時器:

看門狗定時器具有以下特性:

>帶中斷請求的普通間隔定時器模式

>當定時器計數值達到0時,內部復位信號被激活128MCLK周期

8.S3C44B0X中功耗管理的5種模式是什么?

S3c44B0X中功耗管理的5種模式:正常模式:正常運行模式;低速模式:

不加PLL的低時鐘頻率模式;

空閑模式:只停止CPU的時鐘;停止模式:停止所有的時鐘;

LCD的SL空閑模式:SL空閑模式的進入將導致LCD控制器開始工作。此時,

CPU和除LCD控制器外的所有外設都停止工作。

9.簡述BootLoader的作用。

Bootloader作用:系統引導程序,負責Linux內核的啟動,用于初始化系統資源,

包括SDRAMo這部分代碼用于建立Linux內核運行環(huán)境和從Flash中裝載初始化

Ramdisk等。它首先完成系統硬件的初始化,包括時鐘的設置、存儲區(qū)的映射、堆

棧指針的設置等;然后跳轉到操作系統內核的入口,將系統控制權交給操作系統。

10.寫出S3C44B0X的UART1的初始化設置程序代碼。

UART初始化程序:

staticintwhichUart=0;

voidUart_Init(intmclk,intbaud)

{inti;

If(mclk==0)

mclk=MCLK;

rUFCON1=0x0;

rUMCON1=0x0;

rULCON1=0x3;

rUCON1=0x245;

rUBRDICl=((int)(mclk/l6./baud+0.5)-l);

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

11ARM常見的尋址方式有哪些?

立即尋址寄存器尋址寄存器間接尋址基址加偏址尋址堆棧尋址

塊拷貝尋址相對尋址

12嵌入式系統軟件的層次結構并簡要介紹?

嵌入式系統軟件的層次結構:

令驅動層程序:驅動層程序是嵌入式系統中不可缺少的重要部分,使

用任何的外部設備都需要有相應驅動層程序的支持,他為上層軟件

提供了設備的操作接口。驅動層程序一般包括硬件抽象層HAL、板

極支持包BSP和設備驅動程序。

令實時操作系統RTOS:對于使用操作系統得嵌入式系統而言,操作

系統一般以內核映像的形式下載到目標系統中。內核中通常必需的

基本部件是進城管理、進程間通信、內存管理部分,其他部件如文

件系統、驅動程序、網絡協議等都可以根據用戶要求進行配置,并

以相關的方式實現。這樣一來,整個嵌入式系統與通用操作系統類

似,功能比不帶有操作系統得嵌入式強大了很多。

令操作系統的應用程序接口API:API是一系列復雜的函數、消息和

結構的集合體。在計算機系統中有很多可通過硬件或外部設備去執(zhí)

行的功能,這些功能的執(zhí)行可通過計算機操作系統或硬件預留的標

準指令調用。因而系統提供標準的API函數,可加快用戶應用程序

的開發(fā),統一應用程序的開發(fā)標準,也為操作系統版本的升級帶來

了方便。

應用程序:用戶應用程序主要通過調用系統的API函數對系統進行操作,完成用

戶應用功能開發(fā)。

13試述兩種常見的ARM開發(fā)環(huán)境及其特點?

兩種常見的ARM開發(fā)環(huán)境及其特點:

ADS/SDTIDE開發(fā)環(huán)境:它由ARM公司開發(fā),使用了CodeWarrior公司的編

譯器;

集成了GNU開發(fā)工具的IDE開發(fā)環(huán)境:它由GNU的匯編器as、交叉編譯器gcc、

和鏈接器Id等組成。

14:S3C44B0X12c總線接口操作有那四種操作方式?

S3c44B0XI2c總線接口操作的四種操作模式:主傳送模式主接收模式從

傳送模式從接收模式

15:嵌入式系統的發(fā)展趨勢

1.即將迎來以ARM為核心的32位浪潮

嵌入式系統應用的高低端:以4位、8位單片機或為控制器(MCU)為

核心的嵌入式系統,早已廣泛的應用于工業(yè)控制、軍事、航空航天、家電等各

個領域,極大地推動了IT技術的發(fā)展。目前這些屬于最低端應用的嵌入式系

統。這些低端應用市場范圍非常廣泛,局部帶動了低端應用。

即將來臨的32位浪潮:隨著嵌入式系統的不斷發(fā)展,當應用越來越復雜、

使用范圍越來越廣時,8位處理器已經無法滿足的需要,此時32位SoC為高

性能嵌入式系統開發(fā)提供了功能豐富的硬件平臺,也為實時嵌入式操作系統的

廣泛應用提供了硬件基礎。因此,以32位處理器作為高性能嵌入式系統開發(fā)

的核心已是嵌入式技術發(fā)展的必然趨勢。

32位向ARM轉移,形成ARM市場主導地位:在嵌入式微處理器中,雖

然有多種嵌入式處理器可供選擇,但是ARM處理器核以其低功耗、高性能等

突出優(yōu)點已在32位嵌入式應用中穩(wěn)居第一。ARM已成為移動通信、手持計算、

多媒體數字消費等嵌入式解決方案事實上的標準。優(yōu)良的性能和廣泛的市場定

位極大地增加和豐富了ARM的資源,加速了ARM處理器面向各種應用的系

統芯片的開發(fā)和發(fā)展。

2.嵌入式系統與Internet的融合:

為適應嵌入式分布處理結構和應用上網需求,面向21世紀的嵌入式系統

要求配備標準的一種或多種網絡通信接口。針對外部聯網要求,嵌入設備必需

配有通信接口,相應需要TCP/IP協議簇軟件支持;由于家用電器相互關聯(如防

盜報警、燈光能源控制、影視設備和信息終端交換信息)及實驗現場儀器的協調

工作等要求,新一代嵌入式設備還需具備IEEE1394.USB、CAN>Bluetooth

或IrDA通信接口,同時也需要提供相應的通信組網協議軟件和物理層驅動軟

件。為了支持應用軟件的特定編程模式,如Web或無線Web編程模式,還需

要相應的瀏覽器,如HTML、WML等。

3.未來嵌入式系統的發(fā)展趨勢

近兒年,在消費電子、工業(yè)應用、軍事國防、網絡設備等領域的嵌入式應用,

為中提供了難得的發(fā)展機遇。另外,嵌入式技術又不斷地刺激新的技術的產生一

一信息家電、醫(yī)療電子病歷、微小型智能武器等方面應用也日益廣泛,應用深度

也進一步加強。

互聯網的普及、微電子加工工藝的提高、3c技術的普遍融合、使用者需求

的增多、信息服務應用的生活化、技術的滲透性和融合性、設備的關聯性以及個

性化服務的普遍需求。因而,移動化處理信息,即隨時隨地的獲取信息、處理信

息等,成為信息社會把握先機而制勝的必然武器。日益發(fā)展的嵌入式已能夠滿足

人們隨時隨地利用任何設備和手段來接收、處理和發(fā)布信息的需求。低成本、低

功耗的消費電子和寬帶、無線通信以及處理運算的高效計算結合技術將進一步刺

激和加速嵌入式技術的發(fā)展,造就更廣闊的市場空間。

一、選擇題

1、以下說法不正確的是(B)。

A、任務可以有類型說明B、任務可以返回一個數值C、任務可以有形

參變量D、任務是一個無限循環(huán)

2下列描述不屬于RISC計算機的特點的是(C)。

A.流水線每周期前進一步。B.更多通用寄存器。

C.指令長度不固定,執(zhí)行需要多個周期。

D.獨立的Load和Store指令完成數據在寄存器和外部存儲器之間的傳輸。

3存儲一個32位數0*2168465到200011~200311四個字節(jié)單元中,若以大端模式

存儲,則2000H存儲單元的內容為(D)o

A、0x21B、0x68C、0x65D、0x02

4gCOS-II中對關鍵代碼段由于希望在執(zhí)行的過程中不被中斷干擾,通常采用關中

斷的方式,以下X86匯編代碼正確而且不會改變關中斷之前的中斷開關狀態(tài)的是

(D)

A.先CLI、執(zhí)行關鍵代碼、再STIB.先STI、執(zhí)行關鍵代碼、再CLI

C.先POPF、CLL執(zhí)行關鍵代碼、再PUSHFD.先PUSHF、CLk執(zhí)行關鍵

代碼、再POPF。

5RS232-C串口通信中,表示邏輯1的電平是(D)。

A、0vB、3.3vC、+5v?+15vD、—5v-----15v

6ARM匯編語句“ADDRO,R2,R3,LSL#1”的作用是(A)。

A.R0=R2+(R3?1)B.RO=(R2?1)+R3C.R3=R0+(R2?1)D.

(R3?1)=R0+R2

7IRQ中斷的入口地址是(C)oFIQ的入口地址為0x000000IC

A、0x00000000B、0x00000008C、0x00000018D、0x00000014

8S3c2420X1/0口常用的控制器是(D)。

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

(GPADAT-GPHDAT)o

(3)外部中斷控制寄存器(EXTINTN)O(4)以上都是。

9實時操作系統中,兩個任務并發(fā)執(zhí)行,一個任務要等待其合作伙伴發(fā)來信息,

或建立某個條件后再向前執(zhí)行,這種制約性合作關系被成為(A)。

A.同步B.互斥C.調度D.執(zhí)行

10和PC系統機相比嵌入式系統不具備以下哪個特點(C)o

A、系統內核小B、專用性強C、可執(zhí)行多任務D、系統精簡

11、ADDR0,RI,#3屬于(A)尋址方式。

A.立即尋址B.多寄存器尋址C.寄存器直接尋址D.相對尋址

12、GET偽指令的含義是(A)

A.包含一個外部文件B.定義程序的入口C.定義一個宏D.聲明一個變

13、存儲個32位數0x876165到2000H-2003H四個字節(jié)單元中,若以小端模

式存

儲,則2000H存儲單元的內容為(C)o

A、0x00B、0x87C、0x65D、0x61

14、RCOS-H操作系統不屬于(C)o

A、RTOSB、占先式實時操作系統C、非占先式實時操作系統D、嵌入式實

時操作系統

15、若Rl=2000H,(2000H)=0x86,(2008H)=0x39,則執(zhí)行指令LDRRO,[RI,#

8]!后RO的值為(D)0

A.0x2000B.0x86C.0x2008D.0x39

16、寄存器R13除了可以做通用寄存器外,還可以做(C)。

A、程序計數器B、鏈接寄存器C、棧指針寄存器D、基址寄存器

17、FIQ中斷的入口地址是(A)o

A、0x000000ICB、0x00000008C、0x00000018D、0x00000014

18、ARM指令集和Thumb指令集分別是(D)位的。

A.8位,16位B.16位,32位C.16位,16位D.32位,16位

19、ARM寄存器組有(D)個寄存器。

A、7B、32C、6D、37

20、若Rl=2000H,(2000H)=0x28,(2008H)=0x87,則執(zhí)行指令LDRRO,[RI,2

8]!后R0的值為(D)o

A.0x2000B.0x28C,0x2008D.0x87

21、寄存器R15除了可以做通用寄存器外,還可以做(A)

A.程序計數器B.鏈接寄存器C,堆棧指針寄存器D,基址寄存器

22、嵌入式系統有硬件和軟件部分構成,以下(C)不屬于嵌入式系統軟件。

A.系統軟件B.驅動C.FPGA編程軟件D.嵌入式中間件

26、假設Rl=0x31,R2=0x2則執(zhí)行指令ADDRO,R1,R2LSL#3后,R0的值是

(C)

A.0x33B.0x34C.0x39D.0x38

23、和PC機系統相比下列哪個不是嵌入式系統獨具的特點(C)

A、系統內核小B、專用性強C、可執(zhí)行多任務D、系統精簡

24、Unicode編碼與(A)編碼方式兼容。

A、ASCII碼B、GBKC、GB2312D、區(qū)位碼

25、Cache用于存放主存數據的部分拷貝,主存單元地址與Cache單元地址之間

的轉換用(A)完成。

A.硬件B.軟件C.用戶D.程序員

26在陷/OS-H系統中,OSTimeTick()函數只被以下(A)函數或過程所調用。

A.OSTicklSRB.OSShedC.OSCtxSwD.OSIntCtxSw

27每種嵌入式操作系統都有自身的特點以吸引相關用戶,下列說法錯誤的是(D)。

A.嵌入式Linux提供了完善的網絡技術支持;

B.pCLinux是專門為沒有MMU的ARM芯片開發(fā)的;

C.RC/OS-II操作系統是一種實時操作系統(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:借位

30S3c2410X處理器為用戶進行應用設計提供了支持多主總線的DC接口。處理

器提供符合nc協議的設備連接的串行連接線為(C)。

A.SCL和RTXB.RTX和RCXC.SCL和SDAD.SDA和RCX

31RQ中斷的優(yōu)先級別是(D)0

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

32LDRR2,[R3,#128]的尋址方式是(C)。

A.寄存器尋址B.寄存器移位C.變址尋址D.間接尋址

33S3c2410有(B)個USB接口。

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

34ARM處理器的工作模式有(C)種。

A.5B.6C.7D.8

二、判斷題

1、程序運行過程中的資源可以是顯示器、鍵盤,但不可以是一個數組或變量(X)

2、在piCOS-n操作系統中,已知Taskl的優(yōu)先級為12,Task2的優(yōu)先級為26。假

如在Task2運行過程中發(fā)生鍵盤中斷,在執(zhí)行中斷服務程序時Taskl進入就緒

狀態(tài),則中斷返回時Taskl得到CPU的使用權。(4)

3、若定義任務taskl的優(yōu)先級為12,則不能再定義其他任務的優(yōu)先級也為12(4

4、任務創(chuàng)建后即開始調度(X)

5、液晶工作在文本模式下時,既可以顯示英文字符也可以顯示漢字(X)

6、處于就緒狀態(tài)的任務只能切換到運行狀態(tài)(X)

7、等待消息函數WaitMessage(0)中的“0”表示此函數的超時等待時間為0秒(X)

8、若OSTaskSuspend(prio)函數把正在延時的任務掛起,則調用一次對應的喚醒

函數即可使該任務切換到就緒狀態(tài)。(X)

9、調試程序時,需要停止程序運行后才可查看變量內容(4)

10、NCOS-H操作系統中移植成功后即可使用文件系統(X)

11、將模擬信號轉換成數字信號的電路是DA轉換器。(x)

12、IIC是同步串行數據總線,。(4)

13、S3c2410的處理器對內存的訪問只能通過Load/Store指令來實現。N)

14、NandFlash比NorFlash成本高,可靠性差。(x)

15、C語言程序可以嵌套加入匯編程序模塊。(V)

16、運算放大器的輸出電壓范圍一般大于電源電壓的范圍。(x)

17、由于CPU內部寄存器的訪問速度較高,根據ATPC標準,應盡可能使函數的

參數控制在4個以下。(4)

18、ARM處理器結構體系中具有T變種處理器核可以工作在ARM狀態(tài)和Thumb

狀態(tài)。W)

三、簡答題

ARM體系結構的寄存器組織:37個32位寄存器,其中31個為通用寄存器,6個

為狀態(tài)寄存器,哪些寄存器是可編程訪問的,取決微處理器的工作狀態(tài)及具體的

運行模式。

ARM微處理器的異常狀態(tài):7種異常

4、ARM處理器有幾種工作模式?并做說明每種工作模式的含義。

答:ARM處理器有7種工作模式:

用戶模式(usr)-正常程序執(zhí)行的模式0.5

快速中斷模式(fiq)-FIQ異常響應時進入此模式0.5

中斷模式(irq)-IRQ異常響應時進入此模式0.5分

。5

管理員模式(svc)-系統復位和軟件中斷響應時進入此模式

中止模式(abt)-用于虛擬存儲及存儲保護0.5

S5分

系統模式(sys)-與用戶類似,但有直接切換到其它模式等特權

S5分

未定義模式(und)-未定義指令異常響應時進入此模式

除了用戶模式外,其他模式均可視為特權模式0.5

四、閱讀程序題

9、閱讀下列與看門狗有關的寄存器描述,解釋每一行代碼的功能。

看門狗定時器控制寄存器(WTCON)

地址讀/寫描述初始

寄存器

WTCO0x5300000看門狗定控制寄存

讀/寫0x8021

N0器

WTCON的標識位

初始

WTCONBit描述

Prescaler預裝比例值,有效范圍值

[15:8]0x80

Value為0-255

Reserved[7:6]保留00

使能和禁止看門狗定時器

Watchdog

=禁止看門狗定時器0

Timer[5]0

1=使能看門狗定時器

這兩位決定時鐘分頻因素

00:1/16

ClockSelect[4:3]01:1/3200

10:1/64

11:1/128

中斷的禁止和使能

Interrupt

禁止中斷產生0

Generation[2]0=

1=使能中斷產生

Reserved[1]保留0

禁止很使能看門狗復位信

Reset號的輸出

Enable/Disa[0]1

ble1=看門狗復位信號使能

0=看門狗復位信號禁止

看門狗定時器數;據寄存器(WTDAT)

寄存地址讀/寫描述初始值

WTDAT0x53000004讀/寫看門狗數據寄存器0x8000

看門狗計數寄存器(WTCNT)

寄存地址讀/寫描述初始值

WTCNT0x53000008讀/寫看門狗計數器當前值0x8000

#definerWTCON(*(volatileunsigned*)0x53000000)//第1行

#definerWTDAT(*(volatileunsigned*)0x53000004)//第2彳了

#definerWTCNT(*(volatileunsigned*)0x53000008)//第3行

voidwatchdog_test(void)

rWTCON=((PCLK/1000000-l)?8)|(3?3)|(l<<2);//第4行

rWTDAT=7812;〃第5行

rWTCNT=7812;//第6行

rWTCON|=(1?5);//第7行

第1-3行:定義看門狗控制寄存器、數據寄存器和計數寄存器為rWTCON、

rWTDAT和rWTCNT0

第4行:設置看門狗的預裝比例值為1000000,分頻因素為1/128,并使能中

斷。(6分)

第5-6行:對數據寄存器和計數寄存器賦值為7812。(2分)

第7行:啟動看門狗。(2分)

7、閱讀以下S3c2410部分用戶手冊.求:當PCLK或UCLK為40MHz時,串口

0的波特率為2400bps,串口1的波特率為115200bps,相應的控制寄

存器如何設置.

UARTBAUDRATEDIVISORREGISTER

TherearethreeUARTbaudratedivisorregisters(寄存器)includingUBRDIV0,

UBRDIV1andUBRDIV2intheUARTblock(模塊).Thevaluestoredinthebaud

ratedivisorregister(UBRDIVn),isusedtodeterminetheserialTx/Rxclockrate(baud

rate)asfollows:

UBRDIVn=(int)(PCLK/(bpsx16))-1orUBRDIVn=(int)(UCLK/(bpsx

16))-1

Where,thedivisorshouldbefrom1to(216-1)andUCLKshouldbesmallerthan

PCLK.

RegisterAddressR/WDescriptionResetValue

UBRDIV00x50000028R/WBaudratedivisorregister0—

UBRDIV10x50004028R/WBaudratedivisorregister1—

UBRDIV20x50008028R/WBaudratedivisorregister2—

UBRDIVnEHtDescriptionInitialState

UBRDIV[15:0]BaudratedivisionvalueUBRDIVn>0—

答:根據UBRDIVn=(int)(PCLK/(bpsx16))-1

寄存器UBRDIV0=(int)(40000000/2400*16)-1=1040=10000010000(B)

寄存器UBRDIV1=(int)(40000000/115200*16)-1=20=10100(B)

任務控制塊(TCB)的數據結構OS-TCB表示任務的狀態(tài)。當任務的CPU控

制權被槍戰(zhàn)后,任務控制塊用來保存該任務的狀態(tài)。當任務重新獲得CPU的控制

權后,任務控制塊能夠保證任務從被中斷的位置繼續(xù)正確執(zhí)行。任務控制塊提供

了任務的基本信息,如任務的執(zhí)行狀態(tài)、優(yōu)先級和堆棧位置等。

1.text

2.global_start

3_star

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論