點(diǎn)擊查看:全國(guó)計(jì)算機(jī)三級(jí)嵌入式系統(tǒng)開(kāi)發(fā)技術(shù)歷年真題精選匯總
綜合題
1:1、酒店客房的門鎖系統(tǒng)是由總臺(tái)服務(wù)器和若干客房指紋鎖組成,其基本功能具體描述如下:
a、客房的指紋鎖與總臺(tái)服務(wù)器之間通過(guò)通信網(wǎng)絡(luò)連接。
b、旅客在總臺(tái)登記住宿時(shí),錄入其指紋信息,并提取其特征值存儲(chǔ)在總臺(tái)服務(wù)器中。同時(shí)錄入一個(gè)密碼(若干位數(shù)字組成),以備指紋無(wú)法開(kāi)鎖時(shí),用密碼開(kāi)鎖。
c、旅客在開(kāi)客房指紋鎖時(shí),把相應(yīng)手指放在門鎖的指紋采集部件上,采集相應(yīng)的指紋圖像信息,并傳輸給總臺(tái)服務(wù)器。
d、總臺(tái)服務(wù)器接收到某個(gè)客房指紋鎖傳輸來(lái)的指紋圖像信息后,進(jìn)行特征值求取并進(jìn)行匹配,若匹配正確,則回送開(kāi)鎖指令給客房指紋鎖。
e、客房指紋鎖收到開(kāi)鎖指令后,控制開(kāi)鎖的機(jī)械動(dòng)作,并用綠色LED燈指示開(kāi)鎖成功。
f、若匹配不正確,總臺(tái)服務(wù)器回送不開(kāi)鎖指令給客房指紋鎖。
g、客房指紋鎖收到不開(kāi)鎖指令后,用紅色LED燈指示開(kāi)鎖不成功。
h、若指紋無(wú)法開(kāi)鎖,旅客還可以通過(guò)客房指紋鎖上的數(shù)字按鍵輸入密碼,若密碼匹配正確,也可以控制開(kāi)鎖的機(jī)械動(dòng)作,并用綠色LED燈指示開(kāi)鎖成功。
根據(jù)上述功能要求的描述,若采用S3C2410芯片為核心來(lái)構(gòu)建客房指紋鎖控制器的硬件平臺(tái),請(qǐng)完善下面的敘述和C語(yǔ)言程序(需要使用的控制寄存器的格式見(jiàn)題后說(shuō)明)。
(1)若采集的指紋圖像分辨率為320×40,灰度等級(jí)為256,則存儲(chǔ)一幅指紋圖像的原始像素信息需要的存儲(chǔ)容量為_(kāi)__【1】_____KB(1K=1000)。若采用115.2Kbps的異步串行通信網(wǎng)傳輸,一幅指紋圖像的傳輸時(shí)間至少需要____【2】____秒,若采用10Mbps的以太網(wǎng)傳輸,一幅指紋圖像的傳輸時(shí)間至少要____【3】____秒,因此,系統(tǒng)中總臺(tái)服務(wù)器和若干個(gè)客房指紋鎖之間選用以太網(wǎng)連接。
(2)硬件構(gòu)件設(shè)計(jì)時(shí),以太網(wǎng)接口選用AX88796芯片為核心來(lái)設(shè)計(jì),若S3C2410芯片的nGCS2引腳連接到該芯片的____【4】____引腳(低電平有效),那么,AX88796芯片內(nèi)部寄存器地址的首地址是:____【5】____。
(3)若客房指紋鎖紅色LED指示燈的驅(qū)動(dòng)電路由GPIO的GPC0引腳控制,綠色LED指示燈的驅(qū)動(dòng)電路由GPC1引腳控制。GPC0、GPC1引腳各自輸出“0”時(shí),其對(duì)應(yīng)的LED燈滅,各自輸出“1”時(shí),其對(duì)應(yīng)的LED燈亮。那么,初始化GPC0、GPC1引腳為輸出功能的語(yǔ)句是:
rGPCCON=((rGPCCON|0x00000005)&___【6】_____); // rGPCCON是端口C的控制寄存器
控制綠色LED燈點(diǎn)亮和熄滅的語(yǔ)句分別是:
rGPCDAT = rGPCDAT |___【7】_____; //rGPCDAT是端口C的數(shù)據(jù)寄存器
rGPCDAT = rGPCDAT &____【8】____;
紅色LED燈點(diǎn)亮和熄滅的語(yǔ)句分別是:
rGPCDAT = rGPCDAT |___【9】_____;
rGPCDAT =rGPCDAT &____【10】____;
(4)指紋采集部件由一個(gè)攝像芯片和光學(xué)鏡頭組成。S3C2410芯片通過(guò)I2C總線傳輸控制命令給攝像芯片。硬件設(shè)計(jì)時(shí),選擇S3C2410芯片的GPE15、GPE14引腳與攝像芯片的引腳___【11】_____、SCL相連。軟件設(shè)計(jì)時(shí),需要用下面語(yǔ)句初始化該引腳為I2C功能引腳。
rGPECON=((rGPECON|0xA0000000)&____【12】____); // rGPECON是端口E的控制寄存器
(5)若輸入密碼的鍵盤采用非標(biāo)準(zhǔn)鍵盤,鍵盤接口設(shè)計(jì)成4?的陣列。若設(shè)計(jì)時(shí)選用了GPE0~GPE3來(lái)輸出鍵盤行掃描信號(hào),選用GPD0~GPD2來(lái)輸入鍵盤列信號(hào)。請(qǐng)補(bǔ)充完善下面的鍵盤掃描函數(shù):
//**keyoutput 是鍵盤掃描時(shí)的輸出地址,keyinput是鍵盤讀入時(shí)的地址
#define KEYOUTPUT (*(volatile INT8U *)0x56000044) //定義GPE的數(shù)據(jù)端口
#define KEYINPUT(*(volatile INT8U *)0x56000034) //定義GPD的數(shù)據(jù)端口
INT16U ScanKey()
{
INT16U key=0xFFFF;
INT16U i;
INT8U temp=0xFF,output;
rGPDCON= rGPDCON &___【13】_____; //初始化GPD0~GPD2為輸入
rGPECON= ((rGPECON &____【14】____)|0x00000055); //初始化GPE0~GPE3為輸出;
for (i=1;(( i<=____【15】____)&&(i>0)); 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;
}
上面的鍵盤掃描函數(shù)返回的是由鍵盤行信號(hào)和鍵盤列信號(hào)合并而成的一個(gè)16位二進(jìn)制值,根據(jù)該函數(shù)的返回值,可以判斷是否有按鍵按下,并可確定是哪個(gè)按鍵按下。若返回值為_(kāi)__【17】__時(shí),可知鍵盤中無(wú)鍵按下,若返回值為_(kāi)___【18】____時(shí),可知鍵盤中第3行第2列的鍵被按下。(注:以GPE0對(duì)應(yīng)的鍵盤行為第一行,以GPD0對(duì)應(yīng)的鍵盤列為第一列)
(6)為了便于以太網(wǎng)通信程序的編寫,客房指紋鎖的應(yīng)用軟件基于霤/OS-II操作系統(tǒng)來(lái)設(shè)計(jì),客房指紋鎖的應(yīng)用程序主函數(shù)中,需要用OSTaskCreate()函數(shù)____【19】____,并用____【20】____函數(shù)啟動(dòng)多任務(wù)調(diào)度功能。
說(shuō)明:下面是試題解答時(shí)需要用到的寄存器格式及相關(guān)說(shuō)明。
1)端口C的控制寄存器(GPCCON)
引腳GPCCON的位描述
GPC15[31:30]00=輸入,01=輸出,10=VD7,11=保留
GPC14[29:28]00=輸入,01=輸出,10= VD6,11=保留
GPC13[27:26]00=輸入,01=輸出,10= VD5,11=保留
GPC12[25:24]00=輸入,01=輸出,10= VD4,11=保留
GPC11[23:22]00=輸入,01=輸出,10= VD3,11=保留
GPC10[21:20]00=輸入,01=輸出,10= VD2,11=保留
GPC9[19:18]00=輸入,01=輸出,10= VD1,11=保留
GPC8[17:16]00=輸入,01=輸出,10= VD0,11=保留
GPC7[15:14]00=輸入,01=輸出,10=LCDVF2,11=保留
GPC6[13:12]00=輸入,01=輸出,10= LCDVF1,11=保留
GPC5[11:10]00=輸入,01=輸出,10=LCDVF0,11=保留
GPC4[9:8]00=輸入,01=輸出,10=VM,11=IIS數(shù)據(jù)輸出
GPC3[7:6]00=輸入,01=輸出,10=VFRAME,11= IIS數(shù)據(jù)輸入
GPC2[5:4]00=輸入,01=輸出,10=VLINE,11=保留
GPC1[3:2]00=輸入,01=輸出,10=VCLK,11=保留
GPC0[1:0]00=輸入,01=輸出,10=LEND,11=保留
2)端口D的控制寄存器(GPDCON)
引腳GPDCON的位描述
GPD15[31:30]00=輸入,01=輸出,10=VD23,11=保留
GPD14[29:28]00=輸入,01=輸出,10= VD22,11=保留
GPD13[27:26]00=輸入,01=輸出,10= VD21,11=保留
GPD12[25:24]00=輸入,01=輸出,10= VD20,11=保留
GPD11[23:22]00=輸入,01=輸出,10= VD19,11=保留
GPD10[21:20]00=輸入,01=輸出,10= VD18,11=保留
GPD9[19:18]00=輸入,01=輸出,10= VD17,11=保留
GPD8[17:16]00=輸入,01=輸出,10= VD16,11=保留
GPD7[15:14]00=輸入,01=輸出,10= VD15,11=保留
GPD6[13:12]00=輸入,01=輸出,10= VD14,11=保留
GPD5[11:10]00=輸入,01=輸出,10= VD13,11=保留
GPD4[9:8]00=輸入,01=輸出,10= VD12,11=保留
GPD3[7:6]00=輸入,01=輸出,10= VD11,11=保留
GPD2[5:4]00=輸入,01=輸出,10= VD10,11=保留
GPD1[3:2]00=輸入,01=輸出,10= VD9,11=保留
GPD0[1:0]00=輸入,01=輸出,10= VD8,11=保留
3)端口E的控制寄存器(GPECON)
引腳GPECON的位描述
GPE15[31:30]00=輸入,01=輸出,10=IICSDA,11=保留
GPE14[29:28]00=輸入,01=輸出,10=IICSCL,11=保留
GPE13[27:26]00=輸入,01=輸出,10=SPICLK0,11=保留
GPE12[25:24]00=輸入,01=輸出,10=SPIMOSI0,11=保留
GPE11[23:22]00=輸入,01=輸出,10=SPIMISO0,11=保留
GPE10[21:20]00=輸入,01=輸出,10=SSDAT3,11=保留
GPE9[19:18]00=輸入,01=輸出,10=SSDAT2,11=保留
GPE8[17:16]00=輸入,01=輸出,10=SSDAT1,11=保留
GPE7[15:14]00=輸入,01=輸出,10=SSDAT0,11=保留
GPE6[13:12]00=輸入,01=輸出,10=SDCMD,11=保留
GPE5[11:10]00=輸入,01=輸出,10=SDLCK,11=保留
GPE4[9:8]00=輸入,01=輸出,10=IISSDO,11=IIS數(shù)據(jù)輸出
GPE3[7:6]00=輸入,01=輸出,10=IISSI,11= IIS數(shù)據(jù)輸入
GPE2[5:4]00=輸入,01=輸出,10=CDCLK,11=保留
GPE1[3:2]00=輸入,01=輸出,10=IISCLK,11=保留
GPE0[1:0]00=輸入,01=輸出,10=IISLRCK,11=保留
4)端口H的控制寄存器(GPHCON)
引腳GPHCON的位描述
GPH10[21:20]00=輸入,01=輸出,10=CLKOUT1,11=保留
GPH9[19:18]00=輸入,01=輸出,10= CLKOUT0,11=保留
GPH8[17:16]00=輸入,01=輸出,10=UEXTCLK,11=保留
GPH7[15:14]00=輸入,01=輸出,10=RXD2,11=保留
GPH6[13:12]00=輸入,01=輸出,10=TXD2,11=保留
GPH5[11:10]00=輸入,01=輸出,10=RXD1,11=保留
GPH4[9:8]00=輸入,01=輸出,10=TXD1,11=IIS數(shù)據(jù)輸出
GPH3[7:6]00=輸入,01=輸出,10=RXD0,11= IIS數(shù)據(jù)輸入
GPH2[5:4]00=輸入,01=輸出,10=TXD0,11=保留
GPH1[3:2]00=輸入,01=輸出,10=nRTS0,11=保留
GPH0[1:0]00=輸入,01=輸出,10=nCTS0,11=保留
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國(guó)計(jì)算機(jī)等級(jí)考試必做試題匯總(各科目)
2018年全國(guó)計(jì)算機(jī)等級(jí)考試復(fù)習(xí)知識(shí)點(diǎn)匯總(各科目)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |