计算机三级嵌入式系统操作题(到详细解答)_第1页
计算机三级嵌入式系统操作题(到详细解答)_第2页
计算机三级嵌入式系统操作题(到详细解答)_第3页
计算机三级嵌入式系统操作题(到详细解答)_第4页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、操作题(一)1、地铁进出站闸机的控制器以S3C2410芯片为核心,并外加其他功能电路来进行设计,其基本功能描述如下:a、闸机能够识别本地铁票务系统出售的IC卡。能识别的IC卡有 2种,一种是可预付费的" 市民卡 " ,另一种是地铁站内出售的 " 当次卡 " 。b、乘客凭 " 市民卡 " 或 " 当次卡 " 刷卡进站。若 IC卡合法,则闸机打开,乘客通过后,闸机立即关闭;若IC卡不合法,闸机不打开,并进行声光报警。声光报警5次后自动停止。c、进站刷卡时,还需识别IC卡的种类。若是" 市民卡 " ,

2、在闸机打开之前,需读取卡中余额并显示在闸机的LED显示器上,且把地铁站ID、进站时间写入卡中相应区域。若是" 当次卡 " ,判断合法后直接打开闸机。d、出站时,乘客需要根据所用的IC卡种类,来进行不同的操作。若乘客用的是" 市民卡 " ,则需在闸机的刷卡器上刷卡,若乘客用的是" 当次卡 " 则需要把卡投入闸机的投卡口中。e、若乘客出站时刷的是" 市民卡 " ,闸机系统需读取存储在卡上的" 市民卡 " 类别 ID(注: " 市民卡 " 类别分为普通卡、学生卡、老人卡) 、地铁站

3、 ID、进站时间、余额等信息,根据这些信息来扣除费用,并在闸机的LED显示器上显示余额及本次扣费额,若是学生卡或老人卡,还要用声音播报出" 市民卡 " 类别,然后,打开闸机,乘客通过后立即关闭闸机。f 、若乘客出站时用的是" 当次卡 " ,判断合法后即把闸机打开,乘客出去后立即关闭。根据上述功能要求的描述,请完善下面的叙述(程序)和回答有关的问题。(注意:完善程序或回答问题所需的寄存器格式见题后的附录)(1)闸机控制器的硬件平台设计时,除了需要设计最小硬件系统(包括:微处理器、 _ 【1】 _电路、时钟电路、复位电路、存储器、 JTAG接口电路 ) 外,

4、还必须设计 IC卡读写电路、闸门电机驱动电路、声音提示及声光报警电路、 LED显示接口电路等。若闸门电机驱动电路由 GPE1引脚控制, GPE1引脚输出 "0" 时,控制闸门关闭,输出 "1" 时,控制闸门打开。那么,初始化 GPE1引脚功能的语句是:rGPECON=(rGPECON|0x00000004)&_ 【 2】 _);/ rGPECON是端口 E的控制寄存器控制闸门关闭和打开的语句分别是:rGPEDAT = rGPEDAT &_ 【 3】 _;rGPEDAT = rGPEDAT |_【 4】 _;/ rGPEDAT是端口 E的数

5、据寄存器(2)IC卡读写电路设计时, 选用 IC卡读写模块通过异步串行接口与S3C2410连接,利用 S3C2410芯片内部的 UART1部件实现异步串行接口电路设计。那么,在 UART1的驱动程序设计时, 可用下面一段程序来初始化UART1部件(注:UART1115200bps81PCLKvoid UART1_Init()rGPHCON=(rGPHCON&0xFFFFF0FF)|_【 5】 _;/端口 H相应引脚功能初始化rUFCON1=0x0;/FIFO disablerUMCON1=0x0;rULCON1= ( _ 【 6】 _<< 3)|(0 << 2)

6、|( _rUCON1= 0x245;/rUBRDIV1=(int)(PCLK/ _【 8】_)+ 0.5 - 1);【 7】_); /设置线路控制寄存器设置控制寄存器/设置波特率,小数采用四舍五入( 3)乘客出站时刷的若是 " 市民卡 " ,则需要用声音来播报卡的类别,即若是 " 学生卡 " 则语音播报:学生卡;若是" 老人卡 " 则语音播报: 老人卡。 因此,硬件平台构建时设计了一个 16位 D/A转换器芯片, 再加上功率放大电路及扬声器等所构成的语音播报电路, S3C2410芯片通过 GPC端口与 D/A转换器的 16位数据线相连

7、。 软件设计时, 可以先行对相关的语音波形进行采样、编码。设人的语音频率范围是 300Hz4000 Hz,因此,对语音波形采样时,采样频率至少应为 _ 【 9】 _KHz,所采得的数字语音信号才不至于失真。假设,播音员读"学生卡 " 的这段语音波形持续 3秒,采用该采样频率进行采样,数字语音信号编码采用 16位二进制数, 那么存储该段语音信号约需要 _ 【 10】_KB( 1KB=1024B)的存储容量。语音回放时,按照采样频率要求,定时从所存储的单元中逐次读出先行采样得到的数字语音信号,输出给D/A转换器,然后通过扬声器播出。 因此,在相关的驱动程序【11】_; (注:

8、rGPCCON是端口 C的控制寄存器)来初始化GPC端口的引脚中,需要用语句: rGPCCON= _功能。然后通过GPC端口的_ 【 12】 _寄存器定时输出数字语音信号。(4)闸门在乘客通过闸机后立即关闭,因此,硬件平台构建时,可在闸门的后方一定距离内安装一个红外感测探头,并在闸机控制器中设计相关接口电路。 若采用 GPE0引脚来输入红外感测信号, GPE0引脚为 "1" 时,表示人体不在感应区内, GPE0引脚为 "0" 时,表示人体在感应区内。那么,初始化 GPE0引脚功能的语句是:【 13】_ ; / rGPECON 是端口 E的控制寄存器rGP

9、ECON=rGPECON & _判断是否人体在感应区内的语句可以是:if (rGPEDAT & 0x0001) = _【 14】_)/ 判断出人体在感应区内(5)闸机控制器的应用软件将在无操作系统环境下进行开发。设计者可以设计一个启动引导程序,来引导应用程序。按照 ARM9体系结构中的规定,启动引导程序代码的存储单元首址应该是_ 【 15】 _,它对应着复位异常向量。 系统上电 / 复位后, ARM9微处理器处于管理模式,启动引导程序在引导应用程序前,通常需用指令ORR R1,R0, _ 【 16】 _|0xC0 和 MSR CPSR_cxsf,R1来使 ARM核进入用户模式(

10、注:R0, R1寄存器的初值设定为 0。CPSR寄存器的格式见题后附录。 ),然后再通过指令_【 17】main() 。启_来引导应用程序主函数动引导程序中还需要完成异常向量表的设置,ARM9体系结构中规定异常向量之间各相差_ 【18】 _个字节,因此,需要在各异常向量处设计一条分支指令。对于S3C2410微处理器来说, 其启动引导程序还需要完成禁止看门狗部件和禁止_ 【 19】 _部件,并设置各工作模式下的_ 【 20】 _指针。附录:综合题中完善程序或回答问题所需的寄存器格式端口 C控制寄存器( GPCCON)的格式符号位描述初始状态GPC1531:3000=输入 01= 输出 10=VD

11、711=保留00GPC1429:2800=输入 01= 输出 10=VD611=保留00GPC1327:2600=输入 01= 输出 10=VD511=保留00GPC1225:2400=输入 01= 输出 10=VD411=保留00GPC1123:2200=输入 01= 输出 10=VD311=保留00GPC1021:2000=输入 01= 输出 10=VD211=保留00GPC919:1800=输入 01= 输出 10=VD111=保留00GPC817:1600=输入 01= 输出 10=VD011=保留00GPC715:1400=输入 01= 输出 10=LCDVF211=保留00GPC6

12、13:1200=输入 01= 输出 10=LCDVF111=保留00GPC511:1000=输入 01= 输出 10=LCDVF011=保留00GPC49:800=输入 01= 输出 10=VM11=保留00GPC37:600=输入 01= 输出 10=VFRAME 11=保留00GPC25:400=输入 01= 输出 10=VLINE11=保留00GPC13:200=输入 01= 输出 10=VCLK11=保留00GPC01:000=输入 01= 输出 10=LEND11=保留00端口 E控制寄存器( GPECON)的格式符号位描述初始状态GPE1531:3000=输入 01= 输出 10=

13、IICSDA11=保留00GPE1429:2800=输入 01= 输出 10=IICSCL11=保留00GPE1327:2600=输入 01= 输出 10=SPICLK11=保留00GPE1225:2400=输入 01= 输出 10=SPIMOSI0 11=保留00GPE1123:2200=输入 01= 输出 10=SPIMISO0 11=保留00GPE1021:2000=输入 01= 输出 10=SDDAT311=保留00GPE919:1800=输入 01= 输出 10=SDDAT211=保留00GPE817:1600=输入 01= 输出 10=SDDAT111=保留00GPE715:140

14、0=输入 01= 输出 10=SDDAT011=保留00GPE613:1200=输入 01= 输出 10=SDCMD11=保留00GPE511:1000=输入 01= 输出 10=SDCLK11=保留00GPE49:800=输入 01= 输出 10=IISSDO11=保留00GPE37:600=输入 01= 输出 10=IISSDI11=保留00GPE25:400=输入 01= 输出 10=CDCLK11=保留00GPE13:200=输入 01= 输出 10=IISSCLK11=保留00GPE01:000=输入 01= 输出 10=IISLRCK11=保留00端口 H控制寄存器( GPHCON

15、)的格式符号位描述初始状态GPH1021:2000=输入01=输出 10=CLKOUT111=保留 00GPH919:1800=输入01=输出 10=CLKOUT011=保留 00GPH817:1600=输入01=输出 10=UCLK11=保留 00GPH715:1400=输入01=输出 10=RXD20011=nCTS1GPH613:1200=输入01=输出 10=TXD20011=nRTS1GPH511:1000=输入01=输出 10=RXD111=保留 00GPH49:800=输入01=输出 10=TXD111=保留 00GPH37:600=输入01=输出 10=RXD011=保留 00

16、GPH25:400=输入01=输出 10=TXD011=保留 00GPH13:200=输入01=输出 10=nRTS011=保留 00GPH01:000=输入01=输出 10=nCTS011=保留 00ULCONn寄存器的格式符号位描述初始状态Reserved7保留0Infra-Red Mode6确定是否采用红外模式 0 =正常操作模式1 =红外0传输模式Parity Mode5:3确定校验类型 0xx= 无校验100 =奇校验101 =000偶校验StopBit2确定停止位数 0 = 1位停止位 1=2位停止位0Word Length1:0确定数据位数 00 =5位 01=6 位 10 =7

17、位1100= 8 位CPSR寄存器( 32位寄存器)的格式(注:仅给出了最后5位,即工作模式选择位)M4 M3 M2 M1 M010000用户模式10001FIQ模式10010IRQ模式10011管理模式10111中止模式11011未定义模式11111系统模式【解题思路】本题主要考查基于 S3C2410的地铁进出站闸机系统开发。包括嵌入式最小硬件系统构成,GPIO引脚功能及相应初始化设置, GPC和GPD作为 LED显示器接口引脚, GPE作为输入输出,还考察了香农定理, ARM9体系结构中的异常向量等相关知识。【参考答案及解析】第1空答案:电源;最小硬件系统的组成。第2空答案: 0xFFFF

18、FFF7或(0x00000008) 或 0x00000008;和 0相与清零,和 1相与保持不变。和0相或保持不变,和 1相或置 1。 00为输入, 01为输出,则初始化 GPE1引脚功能为输出的语句是:rGPECON=(rGPECON|0x00000004)&0xFFFFFFF7)。第3空答案: 0xFFFD或 (0x0002) 或 0x0002;GPE1引脚输出 "0" 时,控制闸门关闭,即 rGPEDAT= rGPEDAT &0xFFFD。第4空答案: 0x0002; GPE1引脚输出 "1" 时,控制闸门打开。即rGPEDAT =

19、 rGPEDAT | 0x0002。第5空答案: 0x00000A00;GPH5中10=RXD1,GPH4中 10=TXD1。所以端口 H的初始化语句为先清零、再置一,即 rGPHCON=(rGPHCON&0xFFFFF0FF)|0x00000A00。第6空答案: 5;8位数据位、 1位停止位、偶校验。在ULCON中, 1:0: 11 = 8 位;位停止位; 5:3:101 = 偶校验; 6 :0 = 正常操作模式。即rULCON1=(5<< 3)|(02 :0=1<< 2)|(3)。第7空答案: 3;第8空答案: 115200*16=1843200 ;设置波特

20、率。第9空答案: 8;根据香农采样定理可得。第10空答案: 46.875 ;采样频率为 8KHz,采样周期为 125us ,样本值用 16位二进制数进行编码。则3s 的语音片段的存储容量为:(3*16)/(125us*8)=46.875。第11空答案:0x55555555;00为输入,01为输出,则初始化 GPC关口功能为输出的语句是: rGPCCON= 0x55555555。第12空答案:数据;第13空答案: 0xFFFFFFFC或 0x00000003或 (0x00000003) ;采用 GPE0引脚来输入红外感测信号,GPE0引脚为 "1" 时,表示人体不在感应区内,

21、 GPE0引脚为 "0" 时,表示人体在感应区内。则初始化GPE0引脚功能的语句是: rGPECON=rGPECON & 0xFFFFFFFC。第14空答案:0x0000;判断人体是否在感应区内的语句为:if(rGPEDAT & 0x0001)= 0x0000),若为真,则表示人体在感应区内。第15空答案: 0x00000000 或 0x00;对应复位异常向量。第 16 空答案: 0x10或 0x00000010 或 16;用户模式中 M4 M3 M2 M1 M0=1 0 0 0 0 。即 ORR R1,R0,0x10|0xC0 。第17空答案: BL _m

22、ain ;第18空答案: 4; ARM9体系结构中规定异常向量之间各相差 4个字节,因此,需要在各异常向量处设计一条分支指令。第19空答案:外部中断;第20空答案:堆栈操作题(二)1、某食堂的售饭系统由一个后台数据库系统及若干个前台刷卡机组成,其基本功能具体描述如下:a、刷卡机的硬件组成中,除了必须的最小硬件系统外,还需要IC卡读写模块、 8段 LED组成的显示模块、键盘模块、蜂鸣器模块、 RS-485通信模块等。b、客户需要事先办理本系统的消费IC卡,预存若干金额,办卡信息及预存金额存储在后台数据库系统中。c、客户消费时,用 IC 卡在刷卡机上支付。支付时,由售饭员在刷卡机上输入客户缴费金额

23、且在LED显示器上显示,然后客户刷卡,若 IC卡合法,则把缴费金额和IC卡信息传输给后台数据库系统。若IC卡不合法,用蜂鸣器发不合法提示音。d、后台数据库系统接收到刷卡机的信息后,将根据 IC 卡号查询出该卡的余额, 若余额大于等于应缴费额, 则进行扣费,再把当前余额及扣费正确信息回传给刷卡机。若余额小于应缴费额, 则回传扣费不正确信息给刷卡机。e、刷卡机接收到回传的信息后,显示回传的余额,且若是扣费正确信息,则用蜂鸣器发" 扣费正确 " 提示音;若是扣费不正确信息,则用蜂鸣器发" 扣费不正确 " 提示音。根据上述功能要求的描述,若采用 S3C2410芯

24、片为核心来构建刷卡机的硬件平台,请完善下面的叙述(程序)和回答有关的问题。(1)在设计硬件时, 最小的硬件系统是保证系统能正常工作的必要硬件组成。它包括电源电路、【1】_、复位电路、调试测试接口、以及_ 【2】 _ 。( 2)若在硬件设计时,选用 8个共阴极的 8段 LED(其排列如图 1所示)组成 2组显示器( 1组4个 8段 LED),用于显示当前消费金额和余额。若采用 GPC0GPC6、GPC7外接同向驱动后,分别连接到显示" 消费金额 " 的 LED显示器段信号线af 、dp上,采用 GPD0GPD3外接同向驱动后分别控制该组显示器中低数据位高数据位的 4个 8段

25、LED位信号线。另外采用 GPC8GPC14、GPC15外接同向驱动后,分别连接到显示" 余额 " 的 LED显示器段信号线af 、 dp上,采用 GPD4GPD7外接同向驱动后分别控制该组显示器中低数据位高数据位的 4个 8段 LED位信号线。那么, GPC0GPC15引脚的功能为:_ 【 3】_ , GPD0GPD7引脚的功能为:_ 【4】_ 。初始化GPC0GPC15引脚功能的语句可以是:/rGPCCON是端口 C的控制寄存器,其格式见后面附录rGPCCON = _【 5】 _ ;初始化 GPD0GPD7引脚功能的语句可以是/rGPDCON是端口 D的控制寄存器,其格

26、式见后面附录rGPDCON=(rGPDCON|0x00005555)& _【 6】 _);若只在 " 余额 "LED显示器中的次高数据位LED上显示字符 "3" ,相关驱动程序中可用下面语句实现。rGPCDAT =_【 7】_;/ 输出 "3" 的段信号rGPDDAT =_【 8】_;/ 输出次高数据位被点亮的控制信号( 3)刷卡机上输入客户缴费金额的键盘, 在设计时采用非标准键盘组成, 键盘接口设计成 4×4的阵列(其按键排列示意图如图 2所示)。键盘接口电路中选用 GPE0GPE3来输出键盘行扫描信号,选用 GP

27、E4GPE7来输入键盘列信号。软件设计时设计者自行设计了键盘扫描函数,请你补充完善之:/*KEYOUTPUT是键盘扫描时的输出地址,KEYINPUT是键盘读入时的地址#define KEYOUTPUT(*(volatile INT8U *)0x56000044)#define KEYINPUT(*(volatile INT8U *)0x56000044)INT16U ScanKey()INT16U key=0xFFFF;INT16U i;INT8U temp=0xFF,output;/rGPECON是端口 E的控制寄存器,其格式见后面附录rGPECON= (rGPECON &0xFFF

28、FFF00) |_【 9】 _ ); /初始化 GPE0GPE3为输出rGPECON= rGPECON &_【10】 _ ; /初始化 GPE4GPE7为输入/ 下面判断键盘中是否有键按下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 |= (t

29、emp&0xF0)|0x0F); /求得按键的返回值return (key);/函数返回按键对应的值return 0xFFFF;应用程序中可根据上面的键盘扫描函数的返回值,来判断是否有按键按下,并确定是哪个按键按下。例如:若返回值为:_ 【 13】 _时,可知是键盘中的"6" 键按下,若返回值为:_ 【 14】_时,可知是键盘中的" 确认 " 键被按下。若无键按下时,返回值应为:_ 【 15】_。( 4)刷卡机与后台数据库系统通信采用 RS-485总线。因此在硬件设计时, 需要采用 S3C2410芯片内部的 _【 16】_部件外加电平转换芯片等来

30、实现。 若在软件设计时, 其初始化程序中波特率设置为 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】 输出; G

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论