藍(lán)橋杯備賽筆記.doc

藍(lán)橋杯備賽筆記.doc

ID:56766625

大小:4.90 MB

頁(yè)數(shù):64頁(yè)

時(shí)間:2020-07-08

藍(lán)橋杯備賽筆記.doc_第1頁(yè)
藍(lán)橋杯備賽筆記.doc_第2頁(yè)
藍(lán)橋杯備賽筆記.doc_第3頁(yè)
藍(lán)橋杯備賽筆記.doc_第4頁(yè)
藍(lán)橋杯備賽筆記.doc_第5頁(yè)
資源描述:

《藍(lán)橋杯備賽筆記.doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)

1、1、P0口的復(fù)用P2口高3位的值38譯碼器低電平端口功能備注000(0x00)Y0無(wú)001(0x20)Y1010(0x40)Y2011(0x60)Y38255的CE引腳0:使能82551:禁用8255100(0x80)Y4LED燈鎖存信號(hào)0:點(diǎn)亮LED燈1:熄滅LED燈101(0xA0)Y5UNL2003輸出鎖存信號(hào)0:斷開繼電器、禁用直流電機(jī)、關(guān)閉蜂鳴器1:閉合繼電器、轉(zhuǎn)動(dòng)直流電機(jī)、開啟蜂鳴器110(0xC0)Y6數(shù)碼管位選鎖存信號(hào)0:禁用該位1:使能該位111(0xE0)Y7數(shù)碼管段選鎖存信號(hào)0:點(diǎn)亮該段

2、1:熄滅該段PS1:上電后需給所有鎖存器初始化(Y5,Y6初始化為0x00,其余初始化為0xFF)PS2:使用P0口時(shí),按如下方式:禁用所有寄存器——P0口賦值——打開目標(biāo)寄存器——禁用所用寄存器PS3:鎖存器高電平選通,低電平關(guān)閉/***********************************************@brief初始化開發(fā)板*@paramnone*@returnnone************************************************/voidiniti

3、al_board(void){P0_BUS_COMcom;P2&=0x1F;//禁用所有鎖存器for(com=3;com<8;com++){if(com==UNL2003

4、

5、com==DIGITAL_BIT)P0=0x00;elseP0=0xFF;P2

6、=com<<5;_nop_();P2&=0x1F;}}/***********************************************@brief通過(guò)P0總線傳輸數(shù)據(jù)*@paramcom:總線占用的端口;databuf:傳輸?shù)臄?shù)據(jù)*@retur

7、nnone************************************************/voidP0_BUS(unsignedcharcom,unsignedchardatabuf){P2&=0x1F;//禁用所有鎖存器P0=databuf;P2

8、=com<<5;_nop_();P2&=0x1f;}PS4:數(shù)碼管段碼unsignedcharcodeNUM[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};2、按鍵一、單按鍵單按鍵按如

9、下流程圖獲取按鍵值:分層思想在按鍵上的應(yīng)用:1、硬件層從I/0口獲取按鍵信息映射到keybuf(按鍵寄存器)上2、驅(qū)動(dòng)層根據(jù)keybuf的值,分析按鍵是否有效(是否有抖動(dòng)產(chǎn)生的),并返回按鍵編碼3、應(yīng)用層對(duì)不同按鍵的響應(yīng)分層的好處:如果按鍵連接的I/O變化,或者按鍵所在的I/O口不連續(xù),只需修改硬件層的程序,驅(qū)動(dòng)層和應(yīng)用層則不受影響。/***********************************************@brief初始化鍵盤*@paramnone*@returnnone*******

10、*****************************************/voidinitial_key(void){KEY0=1;KEY1=1;KEY2=1;KEY3=1;}/***********************************************@brief讀鍵值(硬件層)*@paramnone*@return讀取的鍵值************************************************/staticuint8get_keybuf(void){u

11、int8keybuf;keybuf=P3&0x0F;returnkeybuf;}/***********************************************@brief獲取按鍵編碼值(驅(qū)動(dòng)層)*@paramnone*@return按鍵的編碼值************************************************/uint8readkey(void){staticuint8lastkey=NOKEY;//上一次獲取的鍵值staticuint16keycount=0;

12、//獲取同一鍵值的次數(shù)staticuint16keyovertime=KEY_OVER_TIME;//進(jìn)入連擊延時(shí)staticuint16upspeed=0;//加速相應(yīng)(長(zhǎng)按越久連擊延時(shí)越短)uint8keytemp=NOKEY;//保存當(dāng)前獲取的鍵值keytemp=get_keybuf();if(keytemp==NOKEY){//是否有按鍵按下keycount=0;upspeed=0;keyo

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。