嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx

上传人:b****5 文档编号:12095370 上传时间:2023-04-17 格式:DOCX 页数:14 大小:87.92KB
下载 相关 举报
嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx_第1页
第1页 / 共14页
嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx_第2页
第2页 / 共14页
嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx_第3页
第3页 / 共14页
嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx_第4页
第4页 / 共14页
嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx

《嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx》由会员分享,可在线阅读,更多相关《嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx(14页珍藏版)》请在冰豆网上搜索。

嵌入式硬件助理工程师认证考试试题与答案doc 15页.docx

嵌入式硬件助理工程师认证考试试题与答案doc15页

嵌入式硬件助理工程师认证考试试题与答案(doc15页)

 

(密封线内勿答题)学校专业姓名身份证号(密封线内勿答题)

(考试时间:

120分钟)

题号

总分

分数

一、选择题(本大题共10个小题,每小题1分,共10分)

得分

评阅人

1、和PC机系统相比,下列哪点不是嵌入式系统所特有的:

()

A、系统内核小B、专用性强

C、可执行多任务D、系统精简

2、ADDR0,R1,#3属于()寻址方式。

A、立即寻址B、多寄存器寻址

C、寄存器直接寻址D、相对寻址

3、GET伪指令的含义是:

()

A、包含一个外部文件B、定义程序的入口

C、定义一个宏D、声明一个变量

4、存储一个32位数0x876165到2000H~2003H四个字节单元中,若以小端模式存

储,则2000H存储单元的内容为:

()

A、0x00B、0x87

C、0x65D、0x61

5、μCOS-II操作系统不属于:

()

A、RTOSB、占先式实时操作系统

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

6、若R1=2000H,(2000H)=0x86,(2008H)=0x39,则执行指令LDRR0,[R1,#8]!

后R0的值为:

()

A、0x2000B、0x86

C、0x2008D、0x39

7、寄存器R13除了可以做通用寄存器外,还可以做:

()

A、程序计数器B、链接寄存器

C、栈指针寄存器D、基址寄存器

8、FIQ中断的入口地址是:

()

A、0x0000001CB、0x00000008

C、0x00000018D、0x00000014

9、ARM指令集和Thumb指令集分别是()位的。

A、8位,16位B、16位,32位

C、16位,16位D、32位,16位

10、ARM寄存器组有()个寄存器。

A、7B、32

C、6D、37

二、填空题(本大题共24个空,每空1分,共24分)

得分

评阅人

11、一个嵌入式系统结构有典型的四层组成,包括:

、、和

12、一个FAT文件系统卷有四部分组成,包括:

、、和。

13、事件控制块ECB中OSEventType表示,OSEventCnt表示。

14、串行通信方式有三中通信、通信和通信。

15、OSTaskSuspend(self)可把正在运行的任务,参数self指。

用此函数挂起的任务可通过函数唤醒。

16、如果信号量用于表示打印机是否可用,那么该信号量属于型信号量。

17、若一个优先级为48的任务就绪,则在就绪表中,OSRdyTbl[]的置位,变量OSRdyGrp的置位。

18、Socket接口是TCP/IP网络的________,定义了许多函数或例程。

常用的Socket类型有两种为________Socket和________Socket。

其中________Socket是面向连接的,________Socket是面向无连接的。

三、简答题(本大题共4个小题,每小题5分,共20分)

得分

评阅人

19、ARM处理器有几种工作模式?

并做说明每种工作模式的含义。

 

20、什么是操作系统?

操作系统在“硬件、操作系统、应用程序、硬件驱动”四者中,处于哪两层之间?

 

21、什么是μCOS-II操作系统的时钟节拍?

 

 

22、简述任务切换的过程。

 

 

四、程序填空题(本大题共2个小题,每小题6分,共12分)

得分

评阅人

23、在划线处添加代码,完成下面的程序,实现在task1中计算1到10的平均值,完成后向task2发送信号量。

Task2无限期等待信号量,等到后在LCD上显示收到平均值。

__________________________;

VoidTask1()

{inti,average=0,sum=0;

_________________

for(i=1;i<=10;i++)

{

sum=sum+i;

}

average=sum/10;

__________________;

for(;;)

{OSTimeDly(100);}

}

voidtask2()

{____________________;

for(;;)

{________________________;

LCD_printf("wegettheaverage!

\n");

________________________;

}

}

24、在划横线处添加代码,完成下面创建一个任务的过程,要求优先级为36,任务栈大小为256。

OS_STK[256]={0,};

voidtask1(void*Id);

#define

;//操作系统初始化

(task1,(void*)0,(OS_STK*)&task1_Stack[256-1],task1_Prio);

;//操作系统任务调度开始

五、程序分析题(本大题共3个小题,每小题6分,共18分)

得分

评阅人

25、仔细阅读下面的信号量应用程序,画出各任务的程序流程图,并说明程序要实现的功能是什么。

OS_EVENT*week_Sem;

week_Sem=OSSemCreate(0);

voidtask1()

{

LCDPrintf(“TodayisMonday.\n”);

OSSemPost(math_Sem);

}

voidtask2()

{U8err;

OSSemPend(math_Sem,0,&err);

LCDPrintf(“whatdayistaday?

.\n”);

}

 

26、仔细阅读下面的文本框应用程序,画出程序流程图,并说明程序要实现的主要功能是什么。

(假设数字键6、数字键8和del键的键值分别为6、8和10)

PTextCtrlpText1;

voidTask1()

{POSMSGpMsg=0;

structRECTrect;

SetRect(&rect,100,30,160,50);

pText1=CreateTextCtrl(ID_MainTextCtrl,&rect,FONTSIZE_MIDDLE,\

CTRL_STYLE_FRAME,NULL,NULL);

SetTextCtrlEdit(pText1,TRUE);

for(;;){

pMsg=WaitMessage(0);

switch(pMsg->Message){

caseOSM_KEY:

onKey(pMsg->WParam,pMsg->LParam);

break;

}

DeleteMessage(pMsg);

}

}

onKey(intnkey,intfnkey)

{switch(nkey){

case6:

AppendChar2TextCtrl(pTextCtrl,0x36,TRUE);

break;

case8:

AppendChar2TextCtrl(pTextCtrl,0x38,TRUE);

break;

case10:

TextCtrlDeleteChar(pTextCtrl,TRUE);

break;

}

}

 

27、认真阅读下面的列表框控件应用程序,画出程序流程图,并说明程序要实现的主要功能是什么。

(假设上移和下移键的键值分别为11和12)

PListCtrlpList1

charstr1[]=”monday”;

charstr2[]=”tuesday”;

voidMain_Task(void*Id)

{POSMSGpMsg=0;

structRECTrect;

SetRect(&rect,100,30,160,50);

pList1=CreateListCtrl(ID_MainListBox,&rect,100,FONTSIZE_MIDDLE,\

CTRL_STYLE_DBFRAME,NULL);

strChar2Unicode(Ustr,str1);

AddStringListCtrl(pList1,Ustr);

strChar2Unicode(Ustr,str2);

AddStringListCtrl(pList1,Ustr);

ReDrawOSCtrl();

for(;;){

pMsg=WaitMessage(0);

switch(pMsg->Message){

caseOSM_KEY:

onKey(pMsg->WParam,pMsg->LParam);

break;

}

DeleteMessage(pMsg);

}

}

onKey(intnkey,intfnkey)

{charUstr[];

switch(nkey){

case11:

ListCtrlSelMove(pMainListCtrl,-1,TRUE);

break;

case12:

ListCtrlSelMove(pMainListCtrl,1,TRUE);

break;

}

ReDrawOSCtrl();

}

 

六、系统设计题(本大题共2个小题,每小题8分,共16分)

28、实现CAN总线通信需要哪两个芯片?

画出S3C44B0利用CAN总线进行通信的硬件连接示意图。

要实现两个开发平台间通过CAN总线双机通信,应如何设计程序(给出软件设计思路或程序流程图)。

 

29、给出S3C44B0通过驱动器控制步进电机的硬件连接示意图;已知步进电机正转时的控制顺序为A→AB→B→BC→C→CD→D→DA,以列表的形式给出各I/O控制口的值。

可以通过哪个宏来设置I/O控制口的值。

 

一、选择题(本大题共10个小题,每小题1分,共10分)

1、C2、A3、A4、C5、C6、D7、C8、A9、D10、D

二、填空题(本大题共22个空,每空1分,共22分)

11、硬件层、中间层、软件层、功能层。

12、保留区FAT区根目录区数据区

13、事件类型信号量计数器(和信号量的值)

14、单工双工半双工

15、挂起(或等待)任务自身的优先级OSTaskResume(self)

16、二进制

17、OSRdyTbl[6]的D0D6

18、API流式(stream)数据报式(datagram)流式(stream)数据报式(datagram)

三、简答题(本大题共6个小题,每小题4分,共24分)

19、答:

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分

20、答:

操作系统是计算机中最基本的程序。

操作系统负责计算机系统中全部软硬件资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统提供软件平台。

(3分)

操作系统处于应用程序和硬件驱动之间。

(1分)

21、答:

时钟节拍是特定的周期性中断。

这个中断可以看作是系统心脏的脉动。

(2分)中断间的时间间隔取决于不同的应用,一般在10ms~200ms之间。

时钟的节拍式中断使得内核可以将任务延时若干个整数时钟节拍,以及当任务等待事件发生时,提供等待超时的依据。

时钟节拍率越快,系统的额外开销就越大。

(2分)

22、答:

当多任务内核决定运行另外的任务时,它保存正在运行任务的当前状态,即CPU寄存器中的全部内容。

(1分)这些内容保存在任务的当前状态保存区,也就是任务自己的堆栈中。

(1分)入栈工作完成以后,就把下一个将要运行的任务的当前状态从任务的堆栈中重新装入CPU的寄存器,并开始下一个任务的运行。

这个过程就称为任务切换。

(1分)做任务切换所需要的时间取决于CPU有多少寄存器要入栈。

(1分)

四、程序填空题(本大题共5个小题,每小题4分,共20分)

23、OS_EVENT*math_Sem;

math_Sem=OSSemCreate(0);

OSSemPost(math_Sem);2分

U8err;

OSSemPend(math_Sem,0,&err);

OSTimeDly(100);2分

24、task1_Stack

task1_Prio

362分

OSInit()

OSTaskCreate

OSStart()2分

五、程序分析题(本大题共4个小题,每小题6分,共24分)

25、功能:

编写两个任务task1和task2完成要求的功能。

设task2为较高的优先级,task1中在LCD显示“TodayisMonday.\n”;task2中在LCD显示“whatdayistoday?

\n”。

要求先问后答。

(3分)

流程图:

(3分)

Task1的流程图task2的流程图

26、功能:

编写程序实现在任务task1中,首先创建一个空白的处于可编辑状态的文本框,按数字键6和8向文本框中输入内容,按del键删除最后一个字符。

(3分)

流程图:

(3分)(以下给出流程图的简略画法)

Task1:

1)创建空白文本框2)设置文本框为可编辑状态3)等待消息

4)收到消息后判断消息类型5)若为键盘消息,调键盘处理函数。

转第3)步循环6)删除消息

键盘函数中:

1)判断键值2)为键6时,向文本框输入6;为键8时,向文本框输入8;为键10时,删除最后一个字符。

27、功能:

编写程序实现在任务task1中,首先创建一个列表框,列表框中有两个列表项“monday”和“tuesday”,编程实现通过上移和下移键来选择列表项。

(3分)

流程图:

(3分)

Task1:

1)创建空白列表框2)向列表框添加条目,Monday和tuesday

3)重画列表框3)等待消息4)收到消息后判断消息类型

5)若为键盘消息,调键盘处理函数。

转第3)步循环6)删除消息

键盘函数中:

1)判断键值2)为键11时,列表框选中的条目上移一条;为键12时,列表框选中的条目下移一条。

3)重画列表框

六、系统设计题(本大题共2个小题,每小题8分,共16分)

28、1)MCP2510和TJA1050。

(2分)

2)(3分)

3)能正确表示CAN总线的初始化和发送接收编程思路(3分)

开发平台A编程思路:

1)初始化MCP25102)启动can总线收发

3)通过can口发送一个字符

开发平台B编程思路:

1)初始化MCP25102)启动can总线收发

3)通过can口接收一个字符

29、1)

2)高四位I/O控制口的值

3)可以通过宏SETEXIOBITMASK(bit,mask)来设置扩展I/O口。

 

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

当前位置:首页 > 工程科技 > 能源化工

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

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