


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上51單片機(jī)矩陣掃描鍵盤(pán)程序#include <reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intuchar idata x,y;uchar code disp_code = 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, / 0-9 0 1 2 3 4 5 6 7 8 9 0x88, 0x83, 0xc6, 0xa1, 0x86, 0x8e, / 10-15 a b
2、c d e f 0x7F, 0xBF, 0x9C, 0xFF / 16-19 . - 。null; /數(shù)碼管顯示值列表void delay(uchar c) /延時(shí)函數(shù) char a,b; for(a=c;a>0;a-) for(b=110;b>0;b-);uchar key_scan() /鍵盤(pán)掃描函數(shù) uchar k; uchar z; x=0x00; y=0x00; P3=0xf0; /先給P3賦一個(gè)初值 if(P3!=0xf0) /判斷P3不等于所賦初值,說(shuō)明有健按下 delay(10); /消除鍵盤(pán)抖動(dòng) 延時(shí)10ms if(P3!=0xf0) x=P3; P3=0x0f;
3、 y=P3; z=x|y; switch(z) case 0xee: k=0; break; case 0xed: k=1; break; case 0xeb: k=2; break; case 0xe7: k=3; break; case 0xde: k=4; break; case 0xdd: k=5; break; case 0xdb: k=6; break; case 0xd7: k=7; break; case 0xbe: k=8; break; case 0xbd: k=9; break; case 0xbb: k=10;break; case 0xb7: k=11;break;
4、case 0x7e: k=12;break; case 0x7d: k=13;break; case 0x7b: k=14;break; case 0x77: k=15;break; return(k);void main() uchar dat; while(1) P3=0xf0; while(P3!=0xf0) dat=key_scan(); P1=0; P0=disp_codedat; 2:#include <reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned in
5、tuchar idata x,y;uchar code disp_code = 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, / 0-9 0 1 2 3 4 5 6 7 8 9 0x88, 0x83, 0xc6, 0xa1, 0x86, 0x8e, / 10-15 a b c d e f 0x7F, 0xBF, 0x9C, 0xFF / 16-19 . - 。null; /數(shù)碼管顯示值列表void delay(uchar c) /延時(shí)函數(shù) char a,b; for(a=c;a>0;a-) for(b=110;b&
6、gt;0;b-);uchar key_scan() /鍵盤(pán)掃描函數(shù) uchar k; uchar z; x=0x00; y=0x00; P3=0xf0; /先給P3賦一個(gè)初值 if(P3!=0xf0) /判斷P3不等于所賦初值,說(shuō)明有健按下 delay(10); /消除鍵盤(pán)抖動(dòng) 延時(shí)10ms if(P3!=0xf0) x=P3; /*這里稍作解釋?zhuān)浩鸪跷覀円呀?jīng)給P3賦了一個(gè)0xf0的值,如果有鍵按下,P3便一定不再是0xf0 , 如果我們這時(shí)查看P3的值我們就能知道是哪一列的鍵按下了(說(shuō)明一下,我的開(kāi)發(fā)板上P3.0-P3.3接的是列) 但這時(shí)我們先不看P3的值,這時(shí)我們先把P3的值賦給x,再給
7、P3賦一個(gè)0x0f的值,由于這兩條語(yǔ)句執(zhí)行的速度是 很快的,是us級(jí)的,而我們按一個(gè)按鍵怎么也得幾十到上百ms,盡管我們?cè)谇懊嬉呀?jīng)做過(guò)一個(gè)10ms的延時(shí),但是 在我們給P3重新賦值后,按鍵一定還是閉合的,所以P3被賦0xof后由于有按鍵閉合,故P3的值又變了,這時(shí)候我們 查看P3的值就可以判斷出來(lái)是是哪一行的按鍵按下了.然后我們把這時(shí)的P3值賦給y,再用x或上y,把他們的值賦給z 然后判斷z的值就可以知道是具體哪一個(gè)鍵被按下了?。ㄐ泻土卸即_定了,具體是哪一個(gè)鍵自然就確定了) */ P3=0x0f; y=P3; z=x|y; switch(z) case 0xee: k=0; break; ca
8、se 0xed: k=1; break; case 0xeb: k=2; break; case 0xe7: k=3; break; case 0xde: k=4; break; case 0xdd: k=5; break; case 0xdb: k=6; break; case 0xd7: k=7; break; case 0xbe: k=8; break; case 0xbd: k=9; break; case 0xbb: k=10;break; case 0xb7: k=11;break; case 0x7e: k=12;break; case 0x7d: k=13;break; case 0x7b: k=14;break; case 0x77: k=15;break; return(k);void main() uchar dat; while(1) P3=0xf0; while(P3!=0xf0) /*剛開(kāi)始運(yùn)行程序就判斷
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 創(chuàng)業(yè)合伙人分紅合同范本
- 農(nóng)村燃?xì)獍惭b合同范本
- 企業(yè)常用合同范本庫(kù)
- 別墅精裝修包工合同范本
- 勞動(dòng)合同范本(社保)
- 勞動(dòng)保密合同范例
- 北辰區(qū)勞務(wù)派遣合同范本
- 農(nóng)村鄰里土地糾紛合同范本
- 加工定做設(shè)備合同范本
- 勞動(dòng)咨詢合同范本
- 企業(yè)級(jí)軟件開(kāi)發(fā)作業(yè)指導(dǎo)書(shū)
- 《中國(guó)古代文學(xué)史及作品選II》教學(xué)大綱
- 代工生產(chǎn)合同范本
- 瑜伽課程合同轉(zhuǎn)讓協(xié)議書(shū)范本
- 個(gè)人經(jīng)營(yíng)性貸款合同模板
- 人教版英語(yǔ)2025七年級(jí)下冊(cè) Unit1Animal Friends教師版 語(yǔ)法講解+練習(xí)
- DeepSeek新手入門(mén)教程
- 課件:《教育強(qiáng)國(guó)建設(shè)規(guī)劃綱要(2024-2035年)》學(xué)習(xí)宣講
- 2025年山東化工職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- 2025年全國(guó)幼兒園教師資格證考試教育理論知識(shí)押題試題庫(kù)及答案(共九套)
- 2024年鄭州電力高等專(zhuān)科學(xué)校高職單招職業(yè)適應(yīng)性測(cè)試歷年參考題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論