2014年計算機三級嵌入式系統(tǒng)開發(fā)技術(shù)真題(三)
三、綜合題
1、某機械設(shè)備的控制器,其基本功能要求有:
需要有8個數(shù)字量輸入,用于采集設(shè)備的狀態(tài)信息;且需要8個數(shù)字量輸出,用于控制設(shè)備動作。
具備一個RS-232接口,可以和上位機連接,接收上位機發(fā)送的命令及參數(shù)。
需要提供一個基準(zhǔn)定時信號,定時時間間隔為0.01秒。
需要彩色LCD顯示器,用于顯示狀態(tài)信息等。
根據(jù)上述功能要求的描述,若采用S3C2410芯片為核心來構(gòu)建該機械設(shè)備控制器的硬件平臺,請完善下面的敘述和C語言程序(需要使用的控制寄存器的格式見題后說明)。
(1)若硬件設(shè)計時采用GPIO端口E的GPE0~GPE7引腳作為8個數(shù)字量輸出,那么軟件設(shè)計時其初始化語句是:rGPECON=(rGPECON|0x00005555)&___【1】____。若軟件設(shè)計時需要通過GPE5引腳輸出“1”來驅(qū)動執(zhí)行機構(gòu)動作,那么語句是:rGPEDAT= rGPEDAT | ___【2】____。(注:rGPECON是端口E的控制寄存器所對應(yīng)的變量,rGPEDAT是端口E的數(shù)據(jù)寄存器所對應(yīng)的變量)
(2)硬件設(shè)計時,選用UART0來完成RS-232接口電路設(shè)計。在軟件設(shè)計時,其初始化程序中波特率設(shè)置為9600bps,數(shù)據(jù)格式設(shè)置為:8位數(shù)據(jù)位、奇校驗、1位停止位。請補充完善下面的UART0初始化函數(shù)(注:主頻參數(shù)為PCLK):
voidUART0_Init()
{
rGPHCON=(rGPHCON&0xFFFFFF00)|___【3】____; //端口H相應(yīng)引腳功能初始化
rUFCON0=0x0; //FIFO不使能
rUMCON0=0x0;
rULCON0=___【4】____; //設(shè)置線路控制寄存器
rUCON0=0x145; //設(shè)置控制寄存器
rUBRDIV0=((int)(PCLK/___【5】____) 1); //設(shè)置波特率,小數(shù)采用四舍五入
}
(3)按照上面UART0初始化函數(shù)所設(shè)置的通信速率,每秒鐘最多能傳輸___【6】____個字節(jié)的信息。若上位機有大小為4KB的初始參數(shù)需要下載到控制器中,那么,約需傳輸____【7】___秒才能完成下載(1K=1024,精確到小數(shù)點后面1位數(shù)字)。
(4)系統(tǒng)中所需要的0.01秒基準(zhǔn)定時時間選用S3C2410芯片內(nèi)部的Timer0部件來產(chǎn)生。若系統(tǒng)的主頻參數(shù)PCLK為264MHz,分頻器值選擇為16,預(yù)分頻系數(shù)選擇為3,那么,Timer0的計數(shù)常數(shù)為___【8】____。軟件設(shè)計時,設(shè)計了如下的Timer0初始化函數(shù),請補充完善。(注:下面程序中⑨、⑩、⑿用8位十六進制數(shù)表示,⑾用4位十六進制數(shù)表示)
voidTimer0Int(void)
{
//設(shè)置定時器配置寄存器0(TCFG0)
rTCFG0=___【9】____; //Timer0預(yù)分頻系數(shù)選擇為3,該寄存器中其它無關(guān)位均為0
//設(shè)置定時器配置寄存器1(TCFG1)
rTCFG1=___【10】___; // Timer0分頻器值為16,該寄存器中其它無關(guān)位均為0
//設(shè)置計數(shù)常數(shù)
rTCNTB0=___【11】____; //設(shè)置控制寄存器TCON
rTCON=___【12】____;//更新TCNTB0和TCMPB0,該寄存器中其它無關(guān)位均為0
rTCON=0x00000009;//設(shè)置Timer0自動裝載,并啟動
}
(5)彩色LCD顯示屏的硬件接口電路由S3C2410的專用GPIO端口__【13】_____和端口___【14】____相關(guān)引腳配以驅(qū)動電路來設(shè)計。軟件設(shè)計時,需要通過設(shè)置它們控制寄存器的值分別為___【15】____和____【16】___來確定它們的引腳功能。
(6)系統(tǒng)的軟件可以設(shè)計為在無操作系統(tǒng)的環(huán)境下運行。設(shè)計者自行設(shè)計系統(tǒng)的啟動引導(dǎo)程序,在該程序中完成異常向量設(shè)置、堆棧指針設(shè)置以及必要的硬件初始化。ARM9體系結(jié)構(gòu)中規(guī)定的IRQ異常所對應(yīng)的異常向量地址為___【17】____。Timer0部件所產(chǎn)生的0.01秒基準(zhǔn)時間到時將引起IRQ異常。由于IRQ異常向量地址與下一個異常向量地址之間間隔為___【18】____個字節(jié),因此,通常在IRQ異常向量地址處設(shè)計一條轉(zhuǎn)移指令。堆棧指針的設(shè)置需按工作模式來進行。設(shè)置IRQ模式下的堆棧指針,需在R0“清0”后用指令ORRR1,R0,#0x12|___【19】____和MSRCPSR_CXSF,R1來使CPU核進入IRQ模式,然后再給SP寄存器賦值作為該模式下的堆棧指針。這些初始化工作完成后,即可通過指令___【20】____來引導(dǎo)應(yīng)用程序的主函數(shù)main()。
說明:下面是試題解答時需要用到的寄存器格式及相關(guān)說明。
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=保留
5)UART線路控制寄存器(ULCONn n可以是0、1、2)
ULCONn的位[7][6][5:3][2][1]描述保留
值為0確定紅外模式
0=正常操作模式
1=正常操作模式確定校驗類型
0xx=無校驗
100=奇校驗
101=偶校驗確定停止位數(shù)
0=1位停止位
1=2位停止位確定數(shù)據(jù)位
00=5位01=6位
10=7位11=8位6)TCFG0寄存器
TCFG0的位功能描述初始狀態(tài)值
[31:24]保留0x00[23:16]在此不用0x00
[15:8]確定Timer2,Timer3,Timer4的預(yù)分頻系數(shù)0x00[7:0]確定
Timer0,Timer1的預(yù)分頻系數(shù)0x007)TCFG1寄存器
TCFG1的位功能描述初始狀態(tài)值[31:24]保留0x00
[23:20]在此不用0b0000
[19:16]確定Timer4的分頻器值0000=2 0001=4 0010=8 0011=16
[15:12]確定Timer3的分頻器值0000=2 0001=4 0010=8 0011=16
[11:8]確定Timer2的分頻器值0000=2 0001=4 0010=8 0011=16
[7:4]確定Timer1的分頻器值0000=2 0001=4 0010=8 0011=16
[3:0]確定Timer0的分頻器值0000=2 0001=4 0010=8 0011=16
說明:設(shè)置TCFG0、TCFG1可以確定預(yù)分頻器系數(shù)、分頻器值,如:通過設(shè)置TCFG0為0x0000001F,Timer0的預(yù)分頻器系數(shù)選擇為31,設(shè)置TCFG1為0x00000001,Timer0的分頻器值選擇為4。通過下面公式計算定時器的計數(shù)常數(shù):
定時器輸入時鐘頻率=PCLK/(預(yù)分頻系數(shù)+1)/分頻器值
計數(shù)常數(shù)=定時時間間隔/(1/定時器輸入時鐘頻率)
預(yù)分頻系數(shù)的范圍為0~255,分頻器值的取值范圍為2、4、8、16。
6)TCON寄存器(注:此處不用的位被省略,其值默認(rèn)為0x0000000)
TCON的位功能描述初始狀態(tài)值厖0x0000000[3]確定Timer0的自動裝載功能
1=自動裝載0=一次停止0b0[2]確定Timer0的輸出反轉(zhuǎn)位
1=TOUT0反轉(zhuǎn)0=TOUT0不反轉(zhuǎn)0b0[1]確定Timer0的更新
1=更新TCNTB0和TCMPB0 0=不更新0b0[0]確定Timer0的啟動/停止
1=啟動0=停止0b0
【計算機三級嵌入式系統(tǒng)開發(fā)技術(shù)真題三】相關(guān)文章:
計算機三級嵌入式系統(tǒng)開發(fā)技術(shù)真題及答案07-26
2022年計算機三級嵌入式系統(tǒng)開發(fā)技術(shù)真題(一)07-23
計算機三級嵌入式真題09-25
計算機三級《嵌入式系統(tǒng)開發(fā)技術(shù)》選擇題練習(xí)06-06
計算機三級《嵌入式系統(tǒng)開發(fā)》精選訓(xùn)練題及答案07-22
計算機三級《嵌入式系統(tǒng)開發(fā)技術(shù)》沖刺習(xí)題07-16
計算機三級嵌入式系統(tǒng)開發(fā)技術(shù)重要考點10-13
計算機三級嵌入式系統(tǒng)開發(fā)技術(shù)試題及答案10-24