娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年02月04日(星期二)

2021年02月04日 | 51單片機鍵盤掃描程序解析

發(fā)布者:快樂舞蹈 來源: eefocus關(guān)鍵字:51單片機  鍵盤掃描程序  定時器 手機看文章 掃描二維碼
隨時隨地手機看文章

/****************************************鍵盤_不采用定時器_不延時特點:按鍵在松手后有效,靈敏度高,消耗資源少,運行效率高獨立鍵盤為:K01=P2^4;K02=P2^5;K03=P2^6;K04=P2^7;矩陣鍵盤為:行(上到下)_P2.3_P2.2_P2.


/****************************************



鍵盤_不采用定時器_不延時


特點:


按鍵在松手后有效,靈敏度高,消耗資源少,運行效率高


獨立鍵盤為:K01=P2^4;K02=P2^5;K03=P2^6;K04=P2^7;


矩陣鍵盤為:行(上到下)_P2.3_P2.2_P2.1_P2.0


列(左到右)_P2.7_P2.6_P2.5_P2.4


提供的操作函數(shù):


//獨立鍵盤。無按鍵動作時其返回值num_key=0,否則返回按鍵號num_key


extern unsigned char keyboard_self();


//矩陣鍵盤。無按鍵動作時其返回值num_key=0,否則返回按鍵號num_key****檢測高四位


extern unsigned char keyboard_matrix();


****************************************/



先看獨立鍵盤(和矩陣鍵盤的算法一樣)


-----------------------------------------------------------------------


#include


#include


//獨立鍵盤。無按鍵動作時其返回值num_key=0,否則返回按鍵號num_key


extern unsigned char keyboard_self()


{


unsigned char num_key=0;//按鍵號


unsigned char temp=0;//用于讀取P2線上按鍵值


static unsigned char temp_code=0;//保存按鍵值


staTIc unsigned char num_check=0;//低電平有效次數(shù)


staTIc unsigned char key_flag=0;//按鍵有效標(biāo)識


temp=P2&0xF0;//讀取P2線數(shù)據(jù)


if(temp!=0xF0)//低電平判斷


{


num_check++;


if(num_check==10)//連續(xù)10次(10ms)低電平有效,則認(rèn)為按鍵有效


{


key_flag=1;//使能按鍵有效標(biāo)識


temp_code=temp;//保存按鍵值


}


}


else//松手時判斷


{


num_check=0;


if(key_flag==1)//按鍵有效


{


key_flag=0;


switch(temp_code)//讀取按鍵號


{


case 0xE0: num_key=1;


break;


case 0xD0: num_key=2;


break;


case 0xB0: num_key=3;


break;


case 0x70: num_key=4;


break;


}


}


}


return(num_key);


}


現(xiàn)在是矩陣鍵盤的


-----------------------------------------------------------------------


#include


#include


//矩陣鍵盤。無按鍵動作時其返回值num_key=0,否則返回按鍵號num_key****檢測高四位


extern unsigned char keyboard_matrix()


{


unsigned char num_key=0;//按鍵號


unsigned char temp=0;//讀取P2口線數(shù)據(jù)


staTIc unsigned char temp_code=0;//用于保存按鍵值


staTIc unsigned char temp_circle=0xFE;//保存P2線上的循環(huán)掃描值


static unsigned char num_check=0;//低電平計數(shù)


static unsigned char key_flag=0;//按鍵有效標(biāo)識


P2=temp_circle;//0xFX


temp=P2;//讀取P2口線數(shù)據(jù)


if(temp!=temp_circle)//有按鍵動作


{


num_check++;//低電平計數(shù)|逢低電平加1


if(num_check==10)//連續(xù)10次(10ms)低電平有效


{


key_flag=1;//按鍵有效標(biāo)識置1


temp_code=temp;//保存按鍵值


}


}


else//松手OR無按鍵動作,此時應(yīng)該改變掃描線


{


num_check=0;


if(key_flag==1)//按鍵有效判斷


{


key_flag=0;


switch(temp_code)//讀取按鍵號


{


//P2^0線


case 0xEE: num_key=1;


break;


case 0xDE: num_key=2;


break;


case 0xBE: num_key=3;


break;


case 0x7E: num_key=4;


break;


//P2^1線


case 0xED: num_key=5;


break;


case 0xDD: num_key=6;


break;


case 0xBD: num_key=7;


break;


case 0x7D: num_key=8;


break;


//P2^2線


case 0xEB: num_key=9;


break;


case 0xDB: num_key=10;


break;


case 0xBB: num_key=11;


break;


case 0x7B: num_key=12;


break;


//P2^3線


case 0xE7: num_key=13;


break;


case 0xD7: num_key=14;


break;


case 0xB7: num_key=15;


break;


case 0x77: num_key=16;


break;


}


}


temp_circle=_crol_(temp_circle,1);//改變掃描線


if(temp_circle==0xEF)


{


temp_circle=0xFE;


}


}


return(num_key);//返回按鍵號


}


/*************************************************************************


未按鍵時,掃描線一直變化。


長按鍵時,掃描線不變化,使得該行按鍵變成了獨立按鍵,這樣的掃描效率極高。


如當(dāng)按下P2.0線上的某個鍵時,程序將掃描到這個鍵,而后掃描線不變化,


當(dāng)鍵盤程序連續(xù)10次進入時檢測到10次按鍵有效,直到松手后掃描線才變化


*************************************************************************/


關(guān)鍵字:51單片機  鍵盤掃描程序  定時器 引用地址:51單片機鍵盤掃描程序解析

上一篇:如何用51單片機數(shù)碼管實現(xiàn)跑馬燈功能?
下一篇:淺析51單片機IO口的四種使用方法

推薦閱讀

  全新美國智能駕駛示范區(qū)——美國移動出行中心(American?Center?for?Mobility)或?qū)⒊蔀樽詣玉{駛汽車真實測試和驗證的終極試驗場。  如何才能顯著降低高速公路事故的傷亡情況?大家的共識都是“unscrewthe nut behind the wheel”。但為了實現(xiàn)這一目標(biāo),并為所有各方提供更多的交通出行新選擇,因此工程師必須首先完善自動駕駛互聯(lián) (A/C) ...
這是2028年。星期三晚上8點,你餓壞了。你盯著冰箱里僅剩的食物:一包令人沒胃口的灰色香腸。它原本就是這樣的嗎?還能安全食用嗎?在2018年,你只能依靠自己的嗅覺來賭上一把。而在2028年,你只需在包裝上方搖動智能手機。智能手機會詢問包裝內(nèi)嵌入的傳感器,該傳感器可測量肉類分解的有關(guān)氣體濃度。智能手機上會顯示“未來20小時內(nèi)可安全食用”的信息,...
防腐磁翻板液位計它的本體、浮標(biāo)、翻板箱、氟塑料等部件組成,其工作原理是根據(jù)阿基米德定律,利用磁性浮標(biāo)驅(qū)動雙色薄片來顯示液面的位置,采用雙色(黑色呈氣相,紅色呈液相)翻片顯示。當(dāng)液面上升時,液相翻板翻成紅色,液面下降時,氣相翻板翻成白色,從而醒目指示容器內(nèi)的液位變化,指示連續(xù)直觀醒目、無盲區(qū),在任何情況下都不會出現(xiàn)假液位。而且結(jié)構(gòu)...
臺積電因應(yīng)汽車芯片需求已重新調(diào)配產(chǎn)能供給,已通知面板驅(qū)動IC客戶減量供應(yīng),業(yè)內(nèi)人士估計,產(chǎn)能排擠影響效應(yīng)可能在5月逐步浮現(xiàn),不排除價格進一步調(diào)漲的可能性。近期芯片供應(yīng)短缺已影響汽車生產(chǎn),德國、美國和日本已要求中國臺灣地區(qū)相關(guān)部門幫助說服臺積電等晶圓代工廠助力緩解汽車行業(yè)的缺芯問題。日前臺積電公開表示將把解決影響汽車行業(yè)的芯片供應(yīng)挑...

史海拾趣

問答坊 | AI 解惑

集成電路加工的好去處

本帖最后由 jameswangsynnex 于 2015-3-3 20:00 編輯 深圳安博電子有限公司成立于1994年,專業(yè)從事集成電路加工制造。現(xiàn)有專業(yè)凈化廠房五千平方米,其中含數(shù)百平方米超凈度為千級和百級的凈化廠房。公司主要經(jīng)營項目有:集成電路晶圓測試;晶圓減 ...…

查看全部問答∨

DIY音樂顯示器(圖、軟件)

音樂顯示器Windows的音樂播放器里,純音樂播放時,會有絢麗多彩的煙霧似的圖案伴隨著音樂的節(jié)奏和旋律,真是美麗。我曾經(jīng)設(shè)想,如果把這種效果放在舞臺上,或者酒吧里,效果肯定不錯,這個產(chǎn)品的商業(yè)價值也一定很高。但是,我不是系統(tǒng)集成商,沒有 ...…

查看全部問答∨

全球速度最快的FPGA(Achronix)

日前,Achronix 半導(dǎo)體公司宣布全球速度最快的 FPGA 現(xiàn)已開始供貨。Speedster 系列的首款產(chǎn)品為 SPD60,該產(chǎn)品系列的速度可達 1.5 GHz,性能比現(xiàn)有 FPGA 提高了 3 倍。 參加 Achronix 早期試用合作的客戶已經(jīng)利用 Speedster 在需要類似 ASIC 性能 ...…

查看全部問答∨

搞嵌入式ARM RABBIT應(yīng)用的同仁請進

喜歡嵌入式的同仁 請加QQ群 104759788 共同交流…

查看全部問答∨

wince 啟動會自動加載哪些dll

它根據(jù)什么加載dll的?我的一個dll在release中生成了,但最后生成的NK.nb0中并沒有會是什么原因呢?…

查看全部問答∨

全屏播放與置頂?shù)膯栴}

我在目標(biāo)機上運行Media Player并且全屏播放,當(dāng)我在啟動另外一個進程,并且讓他置頂,確無效,有人知道是怎么回事嗎?我的置頂函數(shù)是這樣調(diào)用的 SetWindowPos(m_hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE | SIZE);有什么辦法解決嗎》?…

查看全部問答∨

G.729用哪個系列DSP做比較好

小弟還在讀研  剛剛步入語音壓縮   不知道用什么型號的DSP做G.729   求高手指教…

查看全部問答∨

基于ARMv8架構(gòu)的Cortex-A50系列處理器發(fā)布

    ARM 官方就正式公布了新一代 64 位 Cortex-A50 系列處理器將于 2014 年問世的消息。這一系列中既有同等功耗下「性能為現(xiàn)有產(chǎn)品三倍」的 Cortex-A57,又有更為省電、全球最小的 64 位處理器 Cortex-A53。ARM 表示更出色的平行計算技術(shù) ...…

查看全部問答∨

TI 電源設(shè)計小貼士 22

歡迎來到電源設(shè)計小貼士!隨著現(xiàn)在對更高效、更低成本電源解決方案需求的強調(diào),我們創(chuàng)建了該專欄,就各種電源管理課題提出一些對您有幫助的小技巧。該專欄面向各級設(shè)計工程師。無論您是從事電源業(yè)務(wù)多年還是剛剛步入電源領(lǐng)域,您都可以在這里找到一 ...…

查看全部問答∨

STM8程序燒錄

  ST-LINK/V2一直在閃,但是最后提示出錯,程序燒不進去。…

查看全部問答∨
小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 孝昌县| 旌德县| 丽水市| 巴林左旗| 霍山县| 靖远县| 电白县| 定西市| 从化市| 若尔盖县| 奎屯市| 门头沟区| 秀山| 寻乌县| 莒南县| 兴安县| 玉林市| 资溪县| 无为县| 凉城县| 灵石县| 南开区| 甘谷县| 茶陵县| 浠水县| 固阳县| 麻阳| 子洲县| 金川县| 钟山县| 哈尔滨市| 辽宁省| 成安县| 伊吾县| 井研县| 兴山县| 哈尔滨市| 高陵县| 永城市| 准格尔旗| 堆龙德庆县|