




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、酒店客房的门锁系统是由总台服务器和若干客房指纹锁组成,其基本功能具体描述如下:a、客房的指纹锁与总台服务器之间通过通信网络连接。b、旅客在总台登记住宿时,录入其指纹信息,并提取其特征值存储在总台服务器中。同时录入一个密码(若干位数字组成),以备指纹无法开锁时,用密码开锁。c、旅客在开客房指纹锁时,把相应手指放在门锁的指纹采集部件上,采集相应的指纹图像信息,并传输给总台服务器。d、总台服务器接收到某个客房指纹锁传输来的指纹图像信息后,进行特征值求取并进行匹配,若匹配正确,则回送开锁指令给客房指纹锁。e、客房指纹锁收到开锁指令后,控制开锁的机械动作,并用绿色LED灯指示开锁成功。f、若匹配不正确,总台服务器回送不开锁指令给客房指纹锁。g、客房指纹锁收到不开锁指令后,用红色LED灯指示开锁不成功。h、若指纹无法开锁,旅客还可以通过客房指纹锁上的数字按键输入密码,若密码匹配正确,也可以控制开锁的机械动作,并用绿色LED灯指示开锁成功。根据上述功能要求的描述,若采用S3C2410芯片为核心来构建客房指纹锁控制器的硬件平台,请完善下面的叙述和C语言程序(需要使用的控制寄存器的格式见题后说明)。(1)若采集的指纹图像分辨率为320240,灰度等级为256,则存储一幅指纹图像的原始像素信息需要的存储容量为_【1】_KB(1K1000)。若采用115.2Kbps的异步串行通信网传输,一幅指纹图像的传输时间至少需要_【2】_秒,若采用10Mbps的以太网传输,一幅指纹图像的传输时间至少要_【3】_秒,因此,系统中总台服务器和若干个客房指纹锁之间选用以太网连接。(2)硬件构件设计时,以太网接口选用AX88796芯片为核心来设计,若S3C2410芯片的nGCS2引脚连接到该芯片的_【4】_引脚(低电平有效),那么,AX88796芯片内部寄存器地址的首地址是:_【5】_。(3)若客房指纹锁红色LED指示灯的驱动电路由GPIO的GPC0引脚控制,绿色LED指示灯的驱动电路由GPC1引脚控制。GPC0、GPC1引脚各自输出“0”时,其对应的LED灯灭,各自输出“1”时,其对应的LED灯亮。那么,初始化GPC0、GPC1引脚为输出功能的语句是: rGPCCON=(rGPCCON|0x00000005)&_【6】_); / rGPCCON是端口C的控制寄存器控制绿色LED灯点亮和熄灭的语句分别是: rGPCDAT = rGPCDAT |_【7】_; /rGPCDAT是端口C的数据寄存器 rGPCDAT = rGPCDAT &_【8】_;红色LED灯点亮和熄灭的语句分别是: rGPCDAT = rGPCDAT |_【9】_; rGPCDAT = rGPCDAT &_【10】_;(4)指纹采集部件由一个摄像芯片和光学镜头组成。S3C2410芯片通过I2C总线传输控制命令给摄像芯片。硬件设计时,选择S3C2410芯片的GPE15、GPE14引脚与摄像芯片的引脚_【11】_、SCL相连。软件设计时,需要用下面语句初始化该引脚为I2C功能引脚。 rGPECON=(rGPECON|0xA0000000)&_【12】_); / rGPECON是端口E的控制寄存器(5)若输入密码的键盘采用非标准键盘,键盘接口设计成43的阵列。若设计时选用了GPE0GPE3来输出键盘行扫描信号,选用GPD0GPD2来输入键盘列信号。请补充完善下面的键盘扫描函数: /*keyoutput 是键盘扫描时的输出地址,keyinput是键盘读入时的地址 #define KEYOUTPUT (*(volatile INT8U *)0x56000044) /定义GPE的数据端口#define KEYINPUT (*(volatile INT8U *)0x56000034) /定义GPD的数据端口 INT16U ScanKey() INT16U key=0xFFFF; INT16U i; INT8U temp=0xFF,output;rGPDCON= rGPDCON &_【13】_; /初始化GPD0GPD2为输入 rGPECON= (rGPECON &_【14】_)|0x00000055); /初始化GPE0GPE3为输出; for (i=1;( i0); i=1) output |= 0xFF; output &= (i); KEYOUTPUT=output; temp = KEYINPUT; if (temp&0x07)!=_【16】_) key = (i); key = 8; key |= (temp&0x07)|0xF8); return (key); return 0xFFFF; 上面的键盘扫描函数返回的是由键盘行信号和键盘列信号合并而成的一个16位二进制值,根据该函数的返回值,可以判断是否有按键按下,并可确定是哪个按键按下。若返回值为_【17】_时,可知键盘中无键按下,若返回值为_【18】_时,可知键盘中第3行第2列的键被按下。(注:以GPE0对应的键盘行为第一行,以GPD0对应的键盘列为第一列)(6)为了便于以太网通信程序的编写,客房指纹锁的应用软件基于C/OS-II操作系统来设计,客房指纹锁的应用程序主函数中,需要用OSTaskCreate()函数_【19】_,并用_【20】_函数启动多任务调度功能。说明:下面是试题解答时需要用到的寄存器格式及相关说明。1)端口C的控制寄存器(GPCCON)引脚GPCCON的位描述GPC1531:3000=输入,01=输出,10=VD7,11=保留GPC1429:2800=输入,01=输出,10= VD6,11=保留GPC1327:2600=输入,01=输出,10= VD5,11=保留GPC1225:2400=输入,01=输出,10= VD4,11=保留GPC1123:2200=输入,01=输出,10= VD3,11=保留GPC1021:2000=输入,01=输出,10= VD2,11=保留GPC919:1800=输入,01=输出,10= VD1,11=保留GPC817:1600=输入,01=输出,10= VD0,11=保留GPC715:1400=输入,01=输出,10=LCDVF2,11=保留GPC613:1200=输入,01=输出,10= LCDVF1,11=保留GPC511:1000=输入,01=输出,10=LCDVF0,11=保留GPC49:800=输入,01=输出,10=VM,11=IIS数据输出GPC37:600=输入,01=输出,10=VFRAME,11= IIS数据输入GPC25:400=输入,01=输出,10=VLINE,11=保留GPC13:200=输入,01=输出,10=VCLK,11=保留GPC01:000=输入,01=输出,10=LEND,11=保留2)端口D的控制寄存器(GPDCON)引脚GPDCON的位描述GPD1531:3000=输入,01=输出,10=VD23,11=保留GPD1429:2800=输入,01=输出,10= VD22,11=保留GPD1327:2600=输入,01=输出,10= VD21,11=保留GPD1225:2400=输入,01=输出,10= VD20,11=保留GPD1123:2200=输入,01=输出,10= VD19,11=保留GPD1021:2000=输入,01=输出,10= VD18,11=保留GPD919:1800=输入,01=输出,10= VD17,11=保留GPD817:1600=输入,01=输出,10= VD16,11=保留GPD715:1400=输入,01=输出,10= VD15,11=保留GPD613:1200=输入,01=输出,10= VD14,11=保留GPD511:1000=输入,01=输出,10= VD13,11=保留GPD49:800=输入,01=输出,10= VD12,11=保留GPD37:600=输入,01=输出,10= VD11,11=保留GPD25:400=输入,01=输出,10= VD10,11=保留GPD13:200=输入,01=输出,10= VD9,11=保留GPD01:000=输入,01=输出,10= VD8,11=保留3)端口E的控制寄存器(GPECON)引脚GPECON的位描述GPE1531:3000=输入,01=输出,10=IICSDA,11=保留GPE1429:2800=输入,01=输出,10=IICSCL,11=保留GPE1327:2600=输入,01=输出,10=SPICLK0,11=保留GPE1225:2400=输入,01=输出,10=SPIMOSI0,11=保留GPE1123:2200=输入,01=输出,10=SPIMISO0,11=保留GPE1021:2000=输入,01=输出,10=SSDAT3,11=保留GPE919:1800=输入,01=输出,10=SSDAT2,11=保留GPE817:1600=输入,01=输出,10=SSDAT1,11=保留GPE715:1400=输入,01=输出,10=SSDAT0,11=保留GPE613:1200=输入,01=输出,10=SDCMD,11=保留GPE511:1000=输入,01=输出,10=SDLCK,11=保留GPE49:800=输入,01=输出,10=IISSDO,11=IIS数据输出GPE37:600=输入,01=输出,10=IISSI,11= IIS数据输入GPE25:400=输入,01=输出,10=CDCLK,11=保留GPE13:200=输入,01=输出,10=IISCLK,11=保留GPE01:000=输入,01=输出,10=IISLRCK,11=保留4)端口H的控制寄存器(GPHCON)引脚GPHCON的位描述GPH1021:2000=输入,01=输出,10=CLKOUT1,11=保留GPH919:1800=输入,01=输出,10= CLKOUT0,11=保留GPH817:1600=输入,01=输出,10=UEXTCLK,11=保留GPH715:1400=输入,01=输出,10=RXD2,11=保留GPH613:1200=输入,01=输出,10=TXD2,11=保留GPH511:1000=输入,01=输出,10=RXD1,11=保留GPH49:800=输入,01=输出,10=TXD1,11=IIS数据输出GPH37:600=输入,01=输出,10=RXD0,11= IIS数据输入GPH25:400=输入,01=输出,10=TXD0,11=保留GPH13:200=输入,01=输出,10=nRTS0,11=保留GPH01:000=输入,01=输出,10=nCTS0,11=保留【解题思路】本题是一道基于S3C2410的嵌入式系统开发综合题。考查了数字图像的存储容量计算,网络通信数据传输;系统硬件构件设计,尤其是GPIO接口功能及初始化程序,结合常用外设的连接,如LED、键盘等;基于C/OS-II操作系统的应用程序的主要C/OS-II函数,如何创建任务及启动任务调度功能。【参考答案及解析】【1】76.8;320*240/1000 = 76.8 KB;【2】6.7;115.2Kbps换算成字节是每秒发送115.2/8 = 14.4 KB的数据。异步串行每发送8个字节有一个起始位和停止位,76.8/8 = 9.6,说明一共需要10个停止位和10个起始位,一个发送96.8KB的数据,96.8/14.4 = 6.72秒;【3】0.076;10Mbps理论速度是每秒1.25MB,加上损耗以1Mbyte每秒计算,理论速度是0.076秒【4】CS;片选信号CS低电平有效;【5】0x10000000;nGCS2映射地址为0x10000000;【6】0xFFFFFFF5;00为输入,01为输出。则初始化GPC0、GPC1引脚为输出功能的语句是:rGPCCON=(rGPCCON|0x00000005)&0xFFFFFFF5)。【7】0x0002;红色LED指示灯的驱动电路由GPIO的GPC0引脚控制,绿色LED指示灯的驱动电路由GPC1引脚控制。GPC0、GPC1引脚各自输出“0”时,其对应的LED灯灭,各自输出“1”时,其对应的LED灯亮。则绿色LED灯点亮为:rGPCDAT = rGPCDAT |0x0002。【8】0xFFFD;绿色LED灯熄灭为:rGPCDAT = rGPCDAT &0xFFFD。【9】0x0001;红色LED灯点亮为:rGPCDAT = rGPCDAT |0x0001。【10】0xFFFE;红色LED灯熄灭为:rGPCDAT = rGPCDAT &0xFFFE。【11】SDA;I2C总线只有两条信号线,一条是数据线SDA,另一条是时钟线SCL,所有操作都通过这两条信号线完成。【12】0xAFFFFFFF;初始化I2C功能引脚。【13】0xFFFFFFC0;初始化GPD0GPD2为输入:rGPDCON= rGPDCON &0xFFFFFFC0。【14】0xFFFFFF00;00为输入,01为输出。初始化GPE0GPE3为输出:rGPECON= (rGPECON &0xFFFFFF00)|0x00000055)。【15】8;循环次数。【16】0x07;判断GPD0GPD2引脚是否有输入信号。【17】0xFFFF;键盘中无键按下。【18】0xFBFD;键盘中第3行第2列的键被按下。【19】创建任务;OSTaskCreate() 函数用来任务创建;【20】OSStart();一旦OSStart() 函数开始执行,就标志着C/OS-II进入了多任务调度的正常运行状态。2、某机械设备的控制器,其基本功能要求有:需要有8个数字量输入,用于采集设备的状态信息;且需要8个数字量输出,用于控制设备动作。具备一个RS-232接口,可以和上位机连接,接收上位机发送的命令及参数。需要提供一个基准定时信号,定时时间间隔为0.01秒。需要彩色LCD显示器,用于显示状态信息等。根据上述功能要求的描述,若采用S3C2410芯片为核心来构建该机械设备控制器的硬件平台,请完善下面的叙述和C语言程序(需要使用的控制寄存器的格式见题后说明)。(1)若硬件设计时采用GPIO端口E的GPE0GPE7引脚作为8个数字量输出,那么软件设计时其初始化语句是:rGPECON=(rGPECON|0x00005555)&_【1】_。若软件设计时需要通过GPE5引脚输出“1”来驱动执行机构动作,那么语句是:rGPEDAT= rGPEDAT | _【2】_。(注:rGPECON是端口E的控制寄存器所对应的变量,rGPEDAT是端口E的数据寄存器所对应的变量)(2)硬件设计时,选用UART0来完成RS-232接口电路设计。在软件设计时,其初始化程序中波特率设置为9600bps,数据格式设置为:8位数据位、奇校验、1位停止位。请补充完善下面的UART0初始化函数(注:主频参数为PCLK):void UART0_Init() rGPHCON=(rGPHCON&0xFFFFFF00)|_【3】_; /端口H相应引脚功能初始化 rUFCON0=0x0; /FIFO不使能 rUMCON0=0x0; rULCON0=_【4】_; /设置线路控制寄存器 rUCON0= 0x145; /设置控制寄存器 rUBRDIV0=( (int)(PCLK/_【5】_) 1); /设置波特率,小数采用四舍五入(3)按照上面UART0初始化函数所设置的通信速率,每秒钟最多能传输_【6】_个字节的信息。若上位机有大小为4KB的初始参数需要下载到控制器中,那么,约需传输_【7】_秒才能完成下载(1K1024,精确到小数点后面1位数字)。 (4)系统中所需要的0.01秒基准定时时间选用S3C2410芯片内部的Timer0部件来产生。若系统的主频参数PCLK为264MHz,分频器值选择为16,预分频系数选择为3,那么,Timer0的计数常数为_【8】_。软件设计时,设计了如下的Timer0初始化函数,请补充完善。(注:下面程序中、用8位十六进制数表示,用4位十六进制数表示)void Timer0Int(void) /设置定时器配置寄存器0(TCFG0)rTCFG0=_【9】_; /Timer0预分频系数选择为3,该寄存器中其它无关位均为0 /设置定时器配置寄存器1(TCFG1)rTCFG1=_【10】_; / Timer0分频器值为16,该寄存器中其它无关位均为0 /设置计数常数rTCNTB0=_【11】_; /设置控制寄存器TCON rTCON=_【12】_;/更新TCNTB0和TCMPB0,该寄存器中其它无关位均为0 rTCON=0x00000009;/设置Timer0自动装载,并启动(5)彩色LCD显示屏的硬件接口电路由S3C2410的专用GPIO端口_【13】_和端口_【14】_相关引脚配以驱动电路来设计。软件设计时,需要通过设置它们控制寄存器的值分别为_【15】_和_【16】_来确定它们的引脚功能。(6)系统的软件可以设计为在无操作系统的环境下运行。设计者自行设计系统的启动引导程序,在该程序中完成异常向量设置、堆栈指针设置以及必要的硬件初始化。ARM9体系结构中规定的IRQ异常所对应的异常向量地址为_【17】_。Timer0部件所产生的0.01秒基准时间到时将引起IRQ异常。由于IRQ异常向量地址与下一个异常向量地址之间间隔为_【18】_个字节,因此,通常在IRQ异常向量地址处设计一条转移指令。堆栈指针的设置需按工作模式来进行。设置IRQ模式下的堆栈指针,需在R0“清0”后用指令ORRR1,R0,#0x12|_【19】_和MSR CPSR_CXSF,R1来使CPU核进入IRQ模式,然后再给SP寄存器赋值作为该模式下的堆栈指针。这些初始化工作完成后,即可通过指令_【20】_来引导应用程序的主函数main()。说明:下面是试题解答时需要用到的寄存器格式及相关说明。1)端口C的控制寄存器(GPCCON)引脚GPCCON的位描述GPC1531:3000=输入,01=输出,10=VD7,11=保留GPC1429:2800=输入,01=输出,10= VD6,11=保留GPC1327:2600=输入,01=输出,10= VD5,11=保留GPC1225:2400=输入,01=输出,10= VD4,11=保留GPC1123:2200=输入,01=输出,10= VD3,11=保留GPC1021:2000=输入,01=输出,10= VD2,11=保留GPC919:1800=输入,01=输出,10= VD1,11=保留GPC817:1600=输入,01=输出,10= VD0,11=保留GPC715:1400=输入,01=输出,10=LCDVF2,11=保留GPC613:1200=输入,01=输出,10= LCDVF1,11=保留GPC511:1000=输入,01=输出,10=LCDVF0,11=保留GPC49:800=输入,01=输出,10=VM,11=IIS数据输出GPC37:600=输入,01=输出,10=VFRAME,11= IIS数据输入GPC25:400=输入,01=输出,10=VLINE,11=保留GPC13:200=输入,01=输出,10=VCLK,11=保留GPC01:000=输入,01=输出,10=LEND,11=保留2)端口D的控制寄存器(GPDCON)引脚GPDCON的位描述GPD1531:3000=输入,01=输出,10=VD23,11=保留GPD1429:2800=输入,01=输出,10= VD22,11=保留GPD1327:2600=输入,01=输出,10= VD21,11=保留GPD1225:2400=输入,01=输出,10= VD20,11=保留GPD1123:2200=输入,01=输出,10= VD19,11=保留GPD1021:2000=输入,01=输出,10= VD18,11=保留GPD919:1800=输入,01=输出,10= VD17,11=保留GPD817:1600=输入,01=输出,10= VD16,11=保留GPD715:1400=输入,01=输出,10= VD15,11=保留GPD613:1200=输入,01=输出,10= VD14,11=保留GPD511:1000=输入,01=输出,10= VD13,11=保留GPD49:800=输入,01=输出,10= VD12,11=保留GPD37:600=输入,01=输出,10= VD11,11=保留GPD25:400=输入,01=输出,10= VD10,11=保留GPD13:200=输入,01=输出,10= VD9,11=保留GPD01:000=输入,01=输出,10= VD8,11=保留3)端口E的控制寄存器(GPECON)引脚GPECON的位描述GPE1531:3000=输入,01=输出,10=IICSDA,11=保留GPE1429:2800=输入,01=输出,10=IICSCL,11=保留GPE1327:2600=输入,01=输出,10=SPICLK0,11=保留GPE1225:2400=输入,01=输出,10=SPIMOSI0,11=保留GPE1123:2200=输入,01=输出,10=SPIMISO0,11=保留GPE1021:2000=输入,01=输出,10=SSDAT3,11=保留GPE919:1800=输入,01=输出,10=SSDAT2,11=保留GPE817:1600=输入,01=输出,10=SSDAT1,11=保留GPE715:1400=输入,01=输出,10=SSDAT0,11=保留GPE613:1200=输入,01=输出,10=SDCMD,11=保留GPE511:1000=输入,01=输出,10=SDLCK,11=保留GPE49:800=输入,01=输出,10=IISSDO,11=IIS数据输出GPE37:600=输入,01=输出,10=IISSI,11= IIS数据输入GPE25:400=输入,01=输出,10=CDCLK,11=保留GPE13:200=输入,01=输出,10=IISCLK,11=保留GPE01:000=输入,01=输出,10=IISLRCK,11=保留4)端口H的控制寄存器(GPHCON)引脚GPHCON的位描述GPH1021:2000=输入,01=输出,10=CLKOUT1,11=保留GPH919:1800=输入,01=输出,10= CLKOUT0,11=保留GPH817:1600=输入,01=输出,10=UEXTCLK,11=保留GPH715:1400=输入,01=输出,10=RXD2,11=保留GPH613:1200=输入,01=输出,10=TXD2,11=保留GPH511:1000=输入,01=输出,10=RXD1,11=保留GPH49:800=输入,01=输出,10=TXD1,11=IIS数据输出GPH37:600=输入,01=输出,10=RXD0,11= IIS数据输入GPH25:400=输入,01=输出,10=TXD0,11=保留GPH13:200=输入,01=输出,10=nRTS0,11=保留GPH01:000=输入,01=输出,10=nCTS0,11=保留5)UART线路控制寄存器(ULCONn n可以是0、1、2)ULCONn的位765:321描述保留值为0确定红外模式0正常操作模式1正常操作模式确定校验类型0xx=无校验100奇校验101偶校验确定停止位数0=1位停止位1=2位停止位确定数据位005位016位107位118位6)TCFG0寄存器TCFG0的位功能描述初始状态值31:24保留0x0023:16在此不用0x0015:8确定Timer2,Timer3,Timer4的预分频系数0x007:0确定Timer0,Timer1的预分频系数0x007)TCFG1寄存器TCFG1的位功能描述初始状态值31:24保留0x0023:20在此不用0b000019:16确定Timer4的分频器值00002 0001=4 0010=8 0011=160b000015:12确定Timer3的分频器值00002 0001=4 0010=8 0011=160b000011:8确定Timer2的分频器值00002 0001=4 0010=8 0011=160b00007:4确定Timer1的分频器值00002 0001=4 0010=8 0011=160b00003:0确定Timer0的分频器值00002 0001=4 0010=8 0011=160b0000说明:设置TCFG0、TCFG1可以确定预分频器系数、分频器值,如:通过设置TCFG0为0x0000001F,Timer0的预分频器系数选择为31,设置TCFG1为0x00000001,Timer0的分频器值选择为4。通过下面公式计算定时器的计数常数:定时器输入时钟频率 PCLK/(预分频系数1)/分频器值计数常数 定时时间间隔/(1/定时器输入时钟频率)预分频系数的范围为0255,分频器值的取值范围为2、4、8、16。8)TCON寄存器(注:此处不用的位被省略,其值默认为0x0000000)TCON的位功能描述初始状态值0x00000003确定Timer0的自动装载功能1自动装载 0一次停止0b02确定Timer0的输出反转位1TOUT0反转 0TOUT0不反转0b01确定Timer0的更新1更新TCNTB0和TCMPB0 0不更新0b00确定Timer0的启动/停止1启动 0停止0b0【解题思路】本题考查以S3C2410为背景的嵌入式应用系统开发。题中应用为机械设备的控制器系统开发。包括通用I/O口GPIO的使用及相应的初始化编程,其中,GPC和GPD作为LCD显示器接口引脚,GPE作为输入输出;基于UART的RS-232接口电路设计及相应的初始化编程设置;UART的通信控制;内部定时器和计数器的设置及使用;基于S3C2410的无操作系统的嵌入式系统如何构建其启动引导程序。【参考答案及解析】【1】0xFFFF5555;和0相与清零,和1相与保持不变。和0相或保持不变,和1相或置1。00为输入,01为输出,则初始化GPIO端口E的GPE0GPE7引脚功能为输出的语句是:rGPECON=(rGPECON|0x00005555)&0xFFFF5555【2】0x0020;通过GPE5引脚输出“1”来驱动执行机构动作,则将第6位置1,即rGPEDAT= rGPEDAT |0x0020。【3】0x000000AA;8位数据位、1位停止位、奇校验。在ULCON中,1:0:11 = 8位;2:0 = 1位停止位;5:3:100 = 奇校验;6:0 = 正常操作模式。即rGPHCON=(rGPHCON&0xFFFFFF00)| 0x000000AA。【4】0x23;此处对线路控制寄存器进行相应设置。【5】(960016) + 0.5;对所需的波特率进行设置。【6】872;9600/(8+3)=872字节。【7】4.7;4*1024/872=4.7秒。【8】41250;定时器输入时钟频率PCLK/(预分频系数1)/分割器值,计数常数定时时间间隔/(1/定时器输入时钟频率),即可得本题答案。【9】0x00000003;TCFG0中7:0位确定Timer0的预分频系数,题设为3。【10】0x00000003;TCFG1中3:0位确定Timer0的分频器值,题设为16。【11】0xA122;设置计数常数。【12】0x00000002;更新TCNTB0和TCMPB0。【13】C;GPC和GPD作为LCD液晶屏接口引脚。【14】D;【15】0xAAAAAAAA;00为输入,01为输出,将端口C和D均设置为输出。【16】0xAAAAAAAA;【17】0x00000018;ARM9体系结构中规定的IRQ异常所对应的异常向量地址为0x00000018。【18】4;IRQ异常向量地址与下一个异常向量地址之间间隔为4个字节。【19】0xC0;R0“清0”后用指令ORR R1,R0,#0x12|0xC0和MSR CPSR_CXSF,R1来使CPU核进入IRQ模式。【20】BL _main;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),用于显示当前消费金额和余额。 若采用GPC0GPC6、GPC7外接同向驱动后,分别连接到显示消费金额的LED显示器段信号线af、dp上,采用GPD0GPD3外接同向驱动后分别控制该组显示器中低数据位高数据位的4个8段LED位信号线。 另外采用GPC8GPC14、GPC15外接同向驱动后,分别连接到显示余额的LED显示器段信号线af、dp上,采用GPD4GPD7外接同向驱动后分别控制该组显示器中低数据位高数据位的4个8段LED位信号线。 那么,GPC0GPC15引脚的功能为:_【3】_,GPD0GPD7引脚的功能为:_【4】_。初始化GPC0GPC15引脚功能的语句可以是: /rGPCCON是端口C的控制寄存器,其格式见后面附录 rGPCCON=_【5】_;初始化GPD0GPD7引脚功能的语句可以是 /rGPDCON是端口D的控制寄存器,其格式见后面附录 rGPDCON=(rGPDCON|0x00005555)&_【6】_);若只在余额LED显示器中的次高数据位LED上显示字符3,相关驱动程序中可用下面语句实现。 rGPCDAT = _【7】_;/输出3的段信号 rGPDDAT = _【8】_;/输出次高数据位被点亮的控制信号(3)刷卡机上输入客户缴费金额的键盘,在设计时采用非标准键盘组成,键盘接口设计成44的阵列(其按键排列示意图如图2所示)。键盘接口电路中选用GPE0GPE3来输出键盘行扫描信号,选用GPE4GPE7来输入键盘列信号。软件设计时设计者自行设计了键盘扫描函数,请你补充完善之:/*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 &0xFFFFFF00) | _【9】_); /初始化GPE0GPE3为输出 rGPECON= rGPECON & _【10】_ ;/初始化GPE4GPE7为输入/下面判断键盘中是否有键按下 for (i=1;( i0); _【11】_ ) output |= 0xFF; output &= (i); KEYOUTPUT=output; temp = KEYINPUT; if (temp&0xF0)!= _【12】_)/判断列信号是否为全1 key = (i); key = 8; key |= (temp&0xF0)|0x0F); /求得按键的返回值 return (key); /函数返回按键对应的值 return 0xFFFF; 应用程序中可根据上面的键盘扫描函数的返回值,来判断是否有按键按下,并确定是哪个按键按下。例如:若返回值为:_【13】_时,可知是键盘中的6键按下,若返回值为:_【14】_时,可知是键盘中的确认键被按下。若无键按下时,返回值应为:_【15】_。(4)刷卡机与后台数据库系统通信采用RS-485总线。因此在硬件设计时,需要采用S3C2410芯片内部的_【16】_部件外加电平转换芯片等来实现。若在软件设计时,其初始化程序中波特率设置为9600bps,数据格式设置为:8位数据位、无校验、1位停止位。那么,1秒时间内最多能传输_【17】_字节的信息。(5)刷卡机上的应用软件是在无操作系统环境下开发的。设计者可以自行设计系统的启动引导程序,在该程序中完成异常向量设置、堆栈指针设置以及必要的硬件初始化。ARM9体系结构中规定的复位异常所对应的异常向量地址为_【18】_。系统上电/复位后,将从该地址处开始执行程序,因为ARM9体系结构中规定的各异常向量地址之间间隔通常为_【19
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汉字笔顺规则课件
- 汉字的演变史
- 内蒙古巴彦淖尔市乌拉特前旗第三中学2025届九年级下学期学业水平考试模拟(三模)数学试卷(含答案)
- 广东省肇庆市2024-2025学年高一下学期期末统一考试物理试卷(含解析)
- 2024-2025学年广东省茂名市高州市八年级(下)5月月考数学试卷(含答案)
- 硬件按需购买模式的市场研究
- 传统文化保护传承与现代文化创新融合探讨
- 网约车行业监管政策分析
- 汉字书法课件模板楷书庵
- 汉字书写讲解课件
- 初中地理学科课程规划方案
- 定额〔2025〕1号文-关于发布2018版电力建设工程概预算定额2024年度价格水平调整的通知
- 塑胶模具类中英文对照专业术语
- 安全- 中国移动认证考试L1题库(附答案)
- 干部民主推荐表(样式)
- 【公开课】社区教案
- 平面磨床操作时注意事项
- GB/T 29651-2013锰矿石和锰精矿全铁含量的测定火焰原子吸收光谱法
- GB/T 13275-1991一般用途离心通风机技术条件
- 核心素养下的高考语文命题评价体系讲座课件
- 高一英语必修一试卷(含答案)(适合测试)
评论
0/150
提交评论