整理嵌入式系统考试试题.docx
- 文档编号:27739041
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:12
- 大小:42.24KB
整理嵌入式系统考试试题.docx
《整理嵌入式系统考试试题.docx》由会员分享,可在线阅读,更多相关《整理嵌入式系统考试试题.docx(12页珍藏版)》请在冰豆网上搜索。
整理嵌入式系统考试试题
(密封线内勿答题)姓名学号学校专业年级班(密封线内勿答题)
一、选择题(本大题共10个小题,每小题1分,共10分)
得分
评阅人
1、以下说法不正确的是()。
A、任务可以有类型说明B、任务可以返回一个数值
C、任务可以有形参变量D、任务是一个无限循环
2、用图形点阵的方式显示一个16*16点阵汉字需要()字节。
A、8B、32
C、16D、64
3、μCOS-II操作系统中最多可以管理()个任务。
A、64B、56
C、128D、63
4、存储一个32位数0x2168465到2000H~2003H四个字节单元中,若以大端模式存储,则2000H存储单元的内容为()。
d
A、0x21B、0x68
C、0x65D、0x02
5、以ARM为内核的微处理器是()位的。
d
A、4位B、8位
C、16位D、32位
6、RS232-C串口通信中,表示逻辑1的电平是()。
d
A、0vB、3.3v
C、+5v~+15vD、-5v~-15v
7、寄存器R14除了可以做通用寄存器外,还可以做()。
b
A、程序计数器B、链接寄存器
C、栈指针寄存器D、基址寄存器
8、IRQ中断的入口地址是()。
A、0x00000000B、0x00000008
C、0x00000018D、0x00000014
9、采用RS232-C串行通信至少需要三根线,其中不包括()。
A、电源线B、地线
C、发送数据线D、接收数据线
10、Unicode编码与()编码方式兼容。
A、ASCII码B、GBK
C、GB2312D、区位码
二、填空题(本大题共24个空,每空1分,共24分)
得分
评阅人
11、发展到现在,常用的操作系统包括三大类,分别为:
批处理系统、分时系统、和实时系统。
12、在图形操作系统中,字符通常有两种存储方式:
一种是方式;一种是
方式。
在嵌入式开发系统中一般使用方式。
13、ARM7指令系统采用三级流水线指令,分别包括:
、、和。
14、ARM处理器有七种工作模式,分别为、、、、
、、和状态。
见第二套题的19题
15、OSTaskSuspend(self)可把正在运行的任务挂起,参数self指任务本身。
用此函数挂起的任务可通过OSTaskResume函数唤醒。
16、创建信号量OSSemCreat(0)函数中,参数0表示信号量的初始值。
17、若一个优先级为35的任务就绪,则在就绪表中,OSRdyTbl[]的2置位,变量OSRdyGrp的4置位。
18、网络通信中面向连接的协议是____tcp____,面向无连接的协议是___udp_____。
三、简答题(本大题共4个小题,每小题5分,共20分)
得分
评阅人
19、简述进程和线程有什么区别,μCOS-II操作系统中的任务属于进程还是线程?
进程:
包含正在运行的一个程序的所有状态信息,包括程序的代码、程序的数据、PC值、一组通用的寄存器的当前值,堆、栈,一组系统资源(如打开的文件)。
进程有动态性、独立性、并发性的特点。
线程:
是较进程更小的能独立运行的基本单位,是进程当中的一条执行流程,它可以满足统一进程内不通实体间的并发执行而又共享相同的地址空间。
(密封线内勿答题)姓名学号学校专业年级班(密封线内勿答题)
一个进程中可以同时存在多个线程
各个线程之间可以并发地执行
各个线程之间可以共享地址空间
μCOS-II操作系统中的任务属于线程
20、简述占先式和非占先式操作系统内核特点?
并画图说明他们之间的主要区别。
不可抢占调度方式:
一个进程若被选中就一直运行下去,直到它被阻塞(I/O,或正在等待其他进程),或主动地交出CPU。
可抢占调度方式:
当一个进程在运行时,调度程序可以打断它。
21、画图说明μCOS-II操作系统各状态之间是如何切换的,并标明所有可能的切换函数。
见书上118页的图和下面的说明
22、什么是μCOS-II操作系统的时钟节拍?
时钟节拍是一种特殊的中断,相当于操作系统的心脏起搏器
μC/OS需要用户提供周期性信号源,用于实现时间延时和确认超时。
节拍率应在10到100Hz之间,时钟节拍率越高,系统的额外负荷就越重;
时钟节拍的实际频率取决于用户应用程序的精度。
时钟节拍源可以是专门的硬件定时器,或是来自50/60Hz交流电源的信号。
四、程序填空题(本大题共2个小题,每小题6分,共12分)
得分
评阅人
23、有两个任务代码如下,其中Task_A、Task_B的优先级分别为:
28、37。
分析LCD上的显示结果。
VoidTask_A()
{ClearScreen();
LCD_Printf(“task1isrunning!
\n”);
OSTimeDly(400);
}
VoidTask_B()
{ClearScreen();
LCD_Printf(“hellotask2!
\n”);
OSTimeDly(160);
}
在LCD上的显示结果为:
第一次:
_____task1isrunning!
____________________
第二次:
______hellotask2!
___________________
第三次:
_______hellotask2!
__________________
第四次:
________task1isrunning!
_________________
第五次:
________hellotask2!
_________________
第六次:
_______hellotask2!
__________________
24、在分辨率为320x240的LCD上,执行完下列程序后,画出在LCD上显示的图形并在划横线处添加注释。
voidMain_Task(void*Id)
{intoldx,oldy;
PDCpdc;
ClearScreen();
(密封线内勿答题)姓名学号学校专业年级班(密封线内勿答题)
pdc=CreateDC();
SetDrawOrg(pdc,LCDWIDTH/2,LCDHEIGHT/2,&oldx,&oldy);
Circle(pdc,0,0,50);//以(0,0)为圆心,50为半径画圆
MoveTo(pdc,-50,-50);//将画笔起点移动到(-50,50)
LineTo(pdc,50,-50);//画一条起点为(-50,50)终点为(50,-50)的直线
ArcTo(pdc,80,-20,TRUE,30);//画一条起点为(50,-50)终点为(80,-20)的曲率为30的曲线
LineTo(pdc,80,20);
ArcTo(pdc,50,50,TRUE,30);
LineTo(pdc,-50,50);
ArcTo(pdc,-80,20,TRUE,30);
LineTo(pdc,-80,-20);
ArcTo(pdc,-50,-50,TRUE,30);
OSTimeDly(3000);
}
320x240的LCD
五、程序分析题(本大题共3个小题,每小题6分,共18分)
得分
评阅人
25、下面程序是多任务中信号量的典型应用,阅读程序,分别画出各个任务的程序流程图,并说明程序要实现的功能什么。
OS_EVENT*math_Sem;
intsource,dest;
math_Sem=OSSemCreate(0);
voidtask1()
{
source=8;
OSSemPost(math_Sem);
}
voidtask2()
{U8err;
OSSemPend(math_Sem,0,&err);
dest=source;
source=0;
}
Task1:
给source赋值
对于math_Sem调用OSSemPost函数:
C检查是否有任务在等待该信号量,如果没有,将信号量的计数值加1并返回;
C如果有,将优先级最高的任务从等待任务列表中删除,并使它进入就绪状态;
C调用OSSched(),判断是否需要进行任务切换。
Task2:
申请信号量资源,调用OSSemPend函数:
C如果信号量的计数值大于0,将它减1并返回;
C如果信号量的值等于0,则调用本函数的任务将被阻塞起来,等待另一个任务把它唤醒;
C调用OSSched()函数,调度下一个最高优先级的任务运行。
将source的值传给dest,source清零
该程序是一个操作系统中PV操作的演示程序,其中Task1为V操作,添加信号量的值,Task2为P操作,等待一个信号量,将信号量减1。
程序的运行结果为dest=8,source值为0。
26、下面程序是消息循环在多任务中的应用实例,仔细阅读程序,画出程序流程图,并说明程序要实现的功能是什么。
(假设回车键的键值为14)
voidtask1()
{POSMSGpMsg=0;
for(;;)
{pMsg=WaitMessage(0);
(密封线内勿答题)姓名学号学校专业年级班(密封线内勿答题)
switch(pMsg->Message){
caseOSM_KEY:
onKey(pMsg->WParam,pMsg->LParam);
break;
}
DeleteMessage(pMsg);
}
}
onKey(intnkey,intfnkey)
{switch(nkey){
case14:
//OK
LCD_printf("mynameisXXX!
\n");
break;
case7:
//Cancel
LCD_Cls();
break;
}
}
Task1:
1.等待消息
2.如果消息类型为OSM_KEY
3.对于消息调用OnKey函数
4.跳出循环
5.删除消息
6.跳到1
流程图略
该程序是一个键盘消息处理函数,Task1等待来自键盘的消息,一旦有键盘消息就调用Onkey函数,由OnKey函数进行具体的键盘事件处理,如果键值为14(enter键)就输出文本,如果是键值为7就清屏。
27、下面程序是文本框控件在典型应用,认真阅读程序,画出程序流程图,并说明程序要实现的主要功能。
(假设数字键1、数字键2和del键的键值分别为1、2和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){
case1:
(5)阐述划分评价单元的原则、分析过程等。
AppendChar2TextCtrl(pTextCtrl,0x31,TRUE);
3.不同等级的环境影响评价要求break;
case2:
AppendChar2TextCtrl(pTextCtrl,0x32,TRUE);
break;
(密封线内勿答题)姓名学号学校专业年级班(密封线内勿答题)
case10:
4.建设项目环境影响评价文件的分级审批TextCtrlDeleteChar(pTextCtrl,TRUE);
break;
1)按类型分。
环境标准按类型分为环境质量标准、污染物排放标准(或控制标准)、环境基础标准、环境检测方法标准、环境标准样品标准。
}
}
(三)安全评价的内容和分类
(一)建设项目环境影响评价的分类管理
表四:
项目排污情况及环境措施简述。
(2)可能造成轻度环境影响的建设项目,编制环境影响报告表,对产生的环境影响进行分析或者专项评价;与上题类似,只不过定义了一个文本控制框来输出文本。
专项规划工业、农业、畜牧业、林业、能源、水利、交通、城市建设、旅游、自然资源开发有关的专项规划。
环境影响报告书
环境影响评价工程师课主持进行下列工作:
六、系统设计题(本大题共2个小题,每小题8分,共16分)
28、利用串口1实现两个开发平台间的双机通信。
要求1)画出双机通信的串口连接图。
2)要实现开发平台A发送某个数,开发平台B接收到后加1再回送给开发平台A。
应如何设计程序,给出编程思路或画出程序流程图。
29、S3C44B0自带几路A/D转换通道?
画出通道0和通道2的硬件连接图(模拟量通过电位器在0~2.5V之间调节)。
要多任务环境下编程实现通道1和3的数据采集,应如何完成,给出完整的编程思路或程序流程图。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 整理 嵌入式 系统 考试 试题