计算机三级嵌入式系统操作题及解析.docx
- 文档编号:7601136
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:11
- 大小:24.22KB
计算机三级嵌入式系统操作题及解析.docx
《计算机三级嵌入式系统操作题及解析.docx》由会员分享,可在线阅读,更多相关《计算机三级嵌入式系统操作题及解析.docx(11页珍藏版)》请在冰豆网上搜索。
计算机三级嵌入式系统操作题及解析
计算机三级嵌入式系统操作题及解析
操作题
(一)
1地铁进出站闸机的控制器以S3C2410芯片为核心,并外加其他功能电路来进行设计,其基本功能描述如下:
a闸机能够识别本地铁票务系统出售的IC卡。
能识别的IC卡有2种,一
种是可预付费的"市民卡",另一种是地铁站内出售的"当次卡"。
b、乘客凭"市民卡"或"当次卡"刷卡进站。
若IC卡合法,则闸机打开,乘客通过后,闸机立即关闭;若IC卡不合法,闸机不打开,并进行声光报警。
声光报警5次后自动停止。
c、进站刷卡时,还需识别IC卡的种类。
若是"市民卡",在闸机打开之前,需读取卡中余额并显示在闸机的LED显示器上,且把地铁站ID、进站时间写入卡中相应区域。
若是"当次卡",判断合法后直接打开闸机。
d、出站时,乘客需要根据所用的IC卡种类,来进行不同的操作。
若乘客
用的是"市民卡",则需在闸机的刷卡器上刷卡,若乘客用的是"当次卡"则需要
把卡投入闸机的投卡口中。
e若乘客出站时刷的是"市民卡",闸机系统需读取存储在卡上的"市民卡
、地铁站ID、进
LED显示器上显
"类别ID(注:
"市民卡"类别分为普通卡、学生卡、老人卡)站时间、余额等信息,根据这些信息来扣除费用,并在闸机的
示余额及本次扣费额,若是学生卡或老人卡,还要用声音播报出"市民卡"类
别,然后,打开闸机,乘客通过后立即关闭闸机
f、若乘客出站时用的是"当次卡",判断合法后即把闸机打开,乘客出去后立即关闭。
根据上述功能要求的描述,请完善下面的叙述(程序)和回答有关的问题。
(注意:
完善程序或回答问题所需的寄存器格式见题后的附录)
(1)闸机控制器的硬件平台设计时,除了需要设计最小硬件系统(包括:
微处理器、【11电路、时钟电路、复位电路、存储器、JTAG接口电
路)外,还必须设计IC卡读写电路、闸门电机驱动电路、声音提示及声光报警电路、LED显示接口电路等。
若闸门电机驱动电路由GPE1引脚控制,GPE1
引脚输出"0"时,控制闸门关闭,输出"1"时,控制闸门打开。
那么,初始化GPE1引脚功能的语句是:
rGPECON=((rGPECON|0x00000004)&___【2】;//rGPECON是端口E的控制寄存器控制闸门关闭和打开的语句分别是:
rGPEDAT=rGPEDAT&_【3】;//rGPEDAT是端口E的数据寄存器
rGPEDAT=rGPEDAT|___【4】;
(2)IC卡读写电路设计时,选用IC卡读写模块通过异步串行接口与
S3C2410连接,利用S3C2410芯片内部的UART1部件实现异步串行接口电路设计。
那么,在UART1的驱动程序设计时,可用下面一段程序来初始化
UART1部件(注:
UART1的波特率要求为:
115200bps,数据格式要求为:
8位数据、1位停止位、偶校验,主频为PCLK。
)。
voidUART1」nit()
{
rGPHCON=(rGPHCON&0xFFFFFOFF)|___【5】;//端口H相应引脚
功能初始化
rUFCON仁0x0;//FIFOdisable
rUMCON仁0x0;
rULCON1=(___【6】<<3)|(0<<2)|(___【7】;//设置线路控制
寄存器
rUCON1=0x245;//设置控制寄存器
rUBRDIV1=((int)(PCLK/_【8】+0.5-1);//设置波特率,小数采用
四舍五入
}
(3)乘客出站时刷的若是"市民卡",则需要用声音来播报卡的类别,即
若是"学生卡"则语音播报:
学生卡;若是"老人卡"则语音播报:
老人卡。
因此,硬件平台构建时设计了一个16位D/A转换器芯片,再加上功率放大电路及扬声器等所构成的语音播报电路,S3C2410芯片通过GPC端口与D/A转换
器的16位数据线相连。
软件设计时,可以先行对相关的语音波形进行采样、
编码。
设人的语音频率范围是300Hz~4000Hz,因此,对语音波形米样时,米
样频率至少应为—【9】KHz,所采得的数字语音信号才不至于失真。
假
设,播音员读"学生卡"的这段语音波形持续3秒,采用该采样频率进行采样,数字语音信号编码采用16位二进制数,那么存储该段语音信号约需要
【10】—KB(1KB=1024B)的存储容量。
语音回放时,按照采样频率要求,定时从所存储的单元中逐次读出先行采样得到的数字语音信号,输出给D/A转
换器,然后通过扬声器播出。
因此,在相关的驱动程序中,需要用语句:
rGPCCON=_【11】;(注:
rGPCCON是端口C的控制寄存器)来初始
化GPC端口的引脚功能。
然后通过GPC端口的___【12】寄存器定时输出
数字语音信号。
(4)闸门在乘客通过闸机后立即关闭,因此,硬件平台构建时,可在闸门的后方一定距离内安装一个红外感测探头,并在闸机控制器中设计相关接口电路。
若采用GPE0引脚来输入红外感测信号,GPE0引脚为"1"时,表示人体不在感应区内,GPE0引脚为"0"时,表示人体在感应区内。
那么,初始化GPE0引脚功能的语句是:
rGPECON=rGPECON&___【13】;//rGPECON是
端口E的控制寄存器判断是否人体在感应区内的语句可以是:
if((rGPEDAT&0x0001)==_【14】)
{//判断出人体在感应区内
}
(5)闸机控制器的应用软件将在无操作系统环境下进行开发。
设计者可以
设计一个启动引导程序,来引导应用程序。
按照ARM9体系结构中的规定,启
动引导程序代码的存储单元首址应该是—【15】,它对应着复位异常向
量。
系统上电/复位后,ARM9微处理器处于管理模式,启动引导程序在引导
应用程序前,通常需用指令ORRR1,R0,___【16】|0xC0和MSR
CPSR_cxsf,R1来使ARM核进入用户模式(注:
R0,R1寄存器的初值设定为
0。
CPSR寄存器的格式见题后附录。
),然后再通过指令—【17】来引
导应用程序主函数main()。
启动引导程序中还需要完成异常向量表的设置,
ARM9体系结构中规定异常向量之间各相差—【18】个字节,因此,需
要在各异常向量处设计一条分支指令。
对于S3C2410微处理器来说,其启动引
导程序还需要完成禁止看门狗部件和禁止—【19】部件,并设置各工作
模式下的—【20】―旨针。
附录:
综合题中完善程序或回答问题所需的寄存器格式端口C控制寄存器(GPCCON)的格式符号位描述初始状态
GPC15[31:
30]00=输入0仁输出10=VD71仁保留00
GPC14[29:
28]00=输入0仁输出10=VD61仁保留00
GPC13[27:
26]00=输入0仁输出10=VD51仁保留00
GPC12[25:
24]00=输入0仁输出10=VD41仁保留00
GPC11[23:
22]00=输入0仁输出10=VD31仁保留00
GPC10[21:
20]00=输入0仁输出10=VD21仁保留00
GPC9[19:
18]00=输入01=输出10=VD11仁保留00
GPC8[17:
16]00=输入01=输出10=VD01仁保留00
GPC7[15:
14]00=输入01=输出10=LCDVF21仁保留00
GPC6[13:
12]00=输入01=输出10=LCDVF11仁保留00
GPC5[11:
10]00=输入01=输出10=LCDVF01仁保留00
GPC4[9:
8]00=输入01=输出10=VM1仁保留00
GPC3[7:
6]00=输入01=输出10=VFRAME11=保留00
GPC2[5:
4]00=输入01=输出10=VLINE1仁保留00
GPC1[3:
2]00=输入01=输出10=VCLK11=保留00
GPC0[1:
0]00=输入01=输出10=LEND1仁保留00端口E控制寄存器(GPECON)的格式符号位描述初始状态
GPE15[31:
30]00=输入01=输出10=IICSDA1仁保留00
GPE14[29:
28]00=输入01=输出10=IICSCL1仁保留00
GPE13[27:
26]00=输入01=输出10=SPICLK1仁保留00
GPE12[25:
24]00=输入01=输出10=SPIMOSI011=保留00
GPE11[23:
22]00=输入01=输出10=SPIMISO011=保留00
GPE10[21:
20]00=输入01=输出10=SDDAT31仁保留00
GPE9[19:
18]00=输入01=输出10=SDDAT21仁保留00
GPE8[17:
16]00=输入01=输出10=SDDAT11仁保留00
GPE7[15:
14]00=输入01=输出10=SDDAT01仁保留00
GPE6[13:
12]00=输入0仁输出10=SDCMD1仁保留00
GPE5[11:
10]00=输入0仁输出10=SDCLK1仁保留00
GPE4[9:
8]00=输入0仁输出10=IISSDO1仁保留00
GPE3[7:
6]00=输入0仁输出10=IISSDI1仁保留00
GPE2[5:
4]00=输入0仁输出10=CDCLK1仁保留00
GPE1[3:
2]00=输入01=输出10=IISSCLK1仁保留00
GPE0[1:
0]00=输入01=输出10=IISLRCK1仁保留00
端口H控制寄存器(GPHCON)的格式符号位描述初始状态
GPH10[21:
20]00=输入01=输出10=CLKOUT111=保留00
GPH9[19:
18]00=输入01=输出10=CLKOUT011=保留00
GPH8[17:
16]00=输入01=输出10=UCLK11=保留00
GPH7[15:
14]00=输入01=输出10=RXD2
11=nCTS1
00
GPH6[13:
12]00=输入01=输出10=TXD2
11=nRTS1
00
GPH5[11:
10]00=输入01=输出10=RXD11仁保留00
GPH4[9:
8]00=输入01=输出10=TXD11仁保留00
GPH3[7:
6]00=输入01=输出10=RXD01仁保留00
GPH2[5:
4]00=输入01=输出10=TXD01仁保留00
GPH1[3:
2]00=输入01=输出10=nRTS011=保留00
GPH0[1:
0]00=输入01=输出10=nCTS011=保留00
ULCONn寄存器的格式符号位描述初始状态
Reserved[7]保留0
Infra-RedMode⑹确定是否采用红外模式0=正常操作模式1=红外
传输模式
0
ParityMode[5:
3]确定校验类型0xx=无校验100=奇校验101=
偶校验
000
StopBit[2]确定停止位数0=1位停止位1=2位停止位0
WordLength[1:
0]确定数据位数00=5位01=6位10=7位11=8位00
CPSR寄存器(32位寄存器)的格式(注:
仅给出了最后5位,即工作模式选择位)
M4M3M2M1M0
10000用户模式
10001FIQ模式
10010IRQ模式
10011管理模式
10111中止模式
11011未定义模式
11111系统模式【解题思路】
本题主要考查基于S3C2410的地铁进出站闸机系统开发。
包括嵌入式最小硬件系统构成,GPIO引脚功能及相应初始化设置,GPC和GPD作为LED显示器接口引脚,GPE作为输入输出,还考察了香农定理,ARM9体系结构中的
异常向量等相关知识。
【参考答案及解析】
第1空答案:
电源;最小硬件系统的组成。
第2空答案:
0xFFFFFFF7或(~0x00000008)或~0x00000008;和0相与清零,和1相与保持不变。
和0相或保持不变,和1相或置1。
00为输入,01为输出,则初始化GPE1引脚功能为输出的语句是:
rGPEC0N=((rGPEC0N|0x00000004)&0xFFFFFFF7)。
第3空答案:
0xFFFD或(~0x0002)或~0x0002;GPE1引脚输出"0"时,控希山闸门关闭,即rGPEDAT=rGPEDAT&0xFFFD。
第4空答案:
0x0002;GPE1引脚输出"1"时,控制闸门打开。
即GPEDAT=rGPEDAT|0x0002。
第5空答案:
OxOOOOOAOO;GPH5中10=RXD1,GPH4中10=TXD1。
所
以端口H的初始化语句为先清零、再置一,即
rGPHCON=(rGPHCON&OxFFFFFOFF)|OxOOOOOAOO。
第6空答案:
5;8位数据位、1位停止位、偶校验。
在ULCON中,
[1:
O]:
11=8位;[2]:
0=1位停止位;[5:
3]:
101=偶校验;⑹:
0=正常操作模式。
即rULCON1=(5<<3)|(0<<2)|(3)。
第7空答案:
3;
第8空答案:
115200*16=1843200;设置波特率。
第9空答案:
8;根据香农采样定理可得。
第10空答案:
46.875;采样频率为8KHz,采样周期为125us,样本值用
16位二进制数进行编码。
则3s的语音片段的存储容量为:
(3*16”(125us*8)=46.875。
第11空答案:
0x55555555;00为输入,01为输出,则初始化GPC关口功能为输出的语句是:
rGPCCON=0x55555555。
第12空答案:
数据;
第13空答案:
OxFFFFFFFC或~0x00000003或(~0x00000003);采用GPE0
引脚来输入红外感测信号,GPE0引脚为"1"时,表示人体不在感应区内,
GPE0引脚为"0"时,表示人体在感应区内。
则初始化GPE0引脚功能的语句
是:
rGPECON=rGPECON&OxFFFFFFFC。
第14空答案:
0x0000;判断人体是否在感应区内的语句为:
if
((rGPEDAT&0x0001)==0x0000),若为真,则表示人体在感应区内。
第15空答案:
0x00000000或0x00;对应复位异常向量。
第16空答案:
0x10或0x00000010或16;用户模式中[M4M3M2M1
M0]=[10000]。
即ORRR1,R0,0x10|0xC0
第17空答案:
BL_main;
第18空答案:
4;ARM9体系结构中规定异常向量之间各相差4个字节,因此,需要在各异常向量处设计一条分支指令。
第19空答案:
外部中断;
第20空答案:
堆栈
操作题
(二)
1、某食堂的售饭系统由一个后台数据库系统及若干个前台刷卡机组成,其基本功能具体描述如下:
a刷卡机的硬件组成中,除了必须的最小硬件系统外,还需要IC卡读写模块、8段LED组成的显示模块、键盘模块、蜂鸣器模块、RS-485通信模块等。
b、客户需要事先办理本系统的消费IC卡,预存若干金额,办卡信息及预存金额存储在后台数据库系统中。
c、客户消费时,用IC卡在刷卡机上支付。
支付时,由售饭员在刷卡机上输入客户缴费金额且在LED显示器上显示,然后客户刷卡,若IC卡合法,则把缴费金额和IC卡信息传输给后台数据库系统。
若IC卡不合法,用蜂鸣器发不合法提示音。
d、后台数据库系统接收到刷卡机的信息后,将根据IC卡号查询出该卡的余额,若余额大于等于应缴费额,则进行扣费,再把当前余额及扣费正确信息
回传给刷卡机。
若余额小于应缴费额,则回传扣费不正确信息给刷卡机。
e刷卡机接收到回传的信息后,显示回传的余额,且若是扣费正确信息,则用蜂鸣器发"扣费正确"提示音;若是扣费不正确信息,则用蜂鸣器发"扣费
不正确"提示音。
根据上述功能要求的描述,若采用S3C2410芯片为核心来构
建刷卡机的硬件平台,请完善下面的叙述(程序)
和回答有关的问题。
(1)在设计硬件时,最小的硬件系统是保证系统能正常工作的必要硬件
组成。
它包括电源电路、—【1】、复位电路、调试测试接口、以及__
【2】。
(2)若在硬件设计时,选用8个共阴极的8段LED(其排列如图1所示)组成2组显示器(1组4个8段LED),用于显示当前消费金额和余额。
若采用GPC0~GPC6、GPC7外接同向驱动后,分别连接到显示"消费金额"的LED显示器段信号线a~f、dp上,采用GPD0~GPD3外接同向驱动后分别控制该组显示器中低数据位~高数据位的4个8段LED位信号线。
另外采用
GPC8~GPC14、GPC15外接同向驱动后,分别连接到显示"余额"的LED显示器段信号线a~f、dp上,采用GPD4~GPD7外接同向驱动后分别控制该组显示器中低数据位~高数据位的4个8段LED位信号线。
那么,GPC0~GPC15引脚的功能为:
—【3】,GPD0~GPD7引脚的功能为:
___【4】。
初
始化GPC0~GPC15引脚功能的语句可以是:
//rGPCCON是端口C的控制寄存器,其格式见后面附录rGPCCON=___【5】;初始化GPD0~GPD7引脚
功能的语句可以是//rGPDCON是端口D的控制寄存器,其格式见后面附录rGPDCON=((rGPDCON|0x00005555)&___【6】;若只在"余额"LED显示
器中的次高数据位LED上显示字符"3",相关驱动程序中可用下面语句实现。
rGPCDAT=___【7】;//输出"3"的段信号rGPDDAT=___【8];//输
出次高数据位被点亮的控制信号
(3)刷卡机上输入客户缴费金额的键盘,在设计时采用非标准键盘组成,键盘接口设计成4X4的阵列(其按键排列示意图如图2所示)。
键盘接口电路中选用GPE0~GPE3来输出键盘行扫描信号,选用GPE4~GPE7来输入键盘列信号。
软件设计时设计者自行设计了键盘扫描函数,请你补充完善之:
〃*KEYOUTPUT是键盘扫描时的输出地址,KEYINPUT是键盘读入时的地址#defineKEYOUTPUT(*(volatileINT8U*)0x56000044)
#defineKEYINPUT(*(volatileINT8U*)0x56000044)
INT16UScanKey()
{
INT16Ukey=0xFFFF;
INT16Ui;
INT8Utemp=0xFF,output;
//rGPECON是端口E的控制寄存器,其格式见后面附录
rGPECON=((rGPECON&0xFFFFFF00)|___【9】);//初始化
GPE0~GPE3为输出rGPECON=rGPECON&___【10];//初始化
GPE4~GPE7为输入
//下面判断键盘中是否有键按下
for(i=1;((i<=8)&&(i>0));_【11】)
{
output|=0xFF;
output&=(~i);
KEYOUTPUT=output;
temp=KEYINPUT;
if((temp&0xF0)!
=_【12】)//判断列信号是否为全"1"
{
key=(~i);
key<<=8;
key|=((temp&0xF0)|0x0F);//求得按键的返回值return(key);//函数返回按键对应的值
}
}
return0xFFFF;
}
应用程序中可根据上面的键盘扫描函数的返回值,来判断是否有按键按
下,并确定是哪个按键按下。
例如:
若返回值为:
—【13】时,可知是
键盘中的"6"键按下,若返回值为:
___【14】时,可知是键盘中的"确认"
键被按下。
若无键按下时,返回值应为:
—【15】。
(4)刷卡机与后台数据库系统通信采用RS-485总线。
因此在硬件设计
时,需要采用S3C2410芯片内部的_【16】部件外加电平转换芯片等来
实现。
若在软件设计时,其初始化程序中波特率设置为9600bps,数据格式设置为:
8位数据位、无校验、1位停止位。
那么,1秒时间内最多能传输__
【17】字节的信息。
(5)刷卡机上的应用软件是在无操作系统环境下开发的。
设计者可以自行
设计系统的启动引导程序,在该程序中完成异常向量设置、堆栈指针设置以及
必要的硬件初始化。
ARM9体系结构中规定的复位异常所对应的异常向量地址为【18】___。
系统上电/复位后,将从该地址处开始执行程序,因为
ARM9体系结构中规定的各异常向量地址之间间隔通常为—【19】字
节。
因此,复位异常向量地址处通常存储一条—【20】―旨令的代码。
【解题思路】
本题主要考查基于S3C2410的食堂售饭系统开发。
包括嵌入式最小硬件系
统构成;GPIO引脚功能及相应初始化设置:
GPC和GPD作为LED显示器接口引脚,GPE作为输入输出,还可作为I2C、I2S、SD卡等串行总线的引脚
(在题中用来接非标准键盘);基于UART的RS-485接口通信设置;无操作系统的嵌入式系统如何构建其启动引导程序。
【参考答案及解析】
【1】时钟电路;硬件最小系统包括电源电路、时钟电路、复位电路、调试测试接口、以及存储器。
【2】存储器;【3】输出;GPC0~GPC15引脚为LED段选输出。
【4】输出;GPD0~GPD7引脚为LED位选输出。
【5】0x55555555;00为输入,01为输出,则初始化GPC0~GPC15引脚功能为输出的语句是:
rGPCCON=0x55555555。
【6】0XFFFF5555;初始化GPD0~GPD7引脚功能为输出的语句是:
rGPDC0N=((rGPDC0N|0x00005555)&0xFFFF5555)。
【7】0x4F00;输出"3"的段信号,即段e、f和dp为0。
此时rGPCDAT=0x4F00。
【8】0xFFBF;输出次高数据位被点亮的控制信号,即次高位为0。
此时
rGPDDAT=0xFFBF。
【9】0x00000055;初始化GPE0~GPE3为输出的语句是:
rGPECON=((rGPECON&0xFFFFFF00)|0x00000055)。
【10】0xFFFF00FF;初始化GPE4~GPE7为输入的语句是:
rGPECON=rGPECON&0xFFFF00FF。
【1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 三级 嵌入式 系统 操作 解析