歡迎來到嵌入式培訓專家——華清遠見嵌入式學院
集團官網
創客學院
研發中心
北京
上海
深圳
成都
南京
西安
武漢
廣州
沈陽
濟南
重慶
長沙
嵌入式AI就業班
星創客精英班
嵌入式視頻教程
C語言視頻教程
Linux視頻教程
ARM視頻教程
原創圖書
研發硬實力
關于我們
聯系我們
加入我們
總裁寄語
專利軟著
當前位置:首頁 > 嵌入式培訓 > 單片機學習 > 單片機教程 > 51單片機學習筆記:矩陣鍵盤
記錄:矩陣鍵盤中判斷某一個鍵是否按下,是靠單片機掃描P3的值來確定的,P3的后四位表示行值,前四位表示列值,如0xe7 , 1110 0111,表示第四行,第一列的鍵被按下。
編碼方法:先確定列值,在確定行值。
看源碼:
uchar KeyScan() //帶返回值的子函數 { uchar cord_l,cord_h;//聲明列線和行線的值的儲存變量 P3 = 0xf0;//1111 0000 //當某一鍵被按下時,高位(即置1的位)會被拉低(變成0位) if( (P3 & 0xf0) != 0xf0)//判斷是否有按鍵按下 { delay(5);//軟件消抖 if( (P3 & 0xf0) != 0xf0)//判斷是否有按鍵按下 { cord_l = P3 & 0xf0;// 儲存列線值 P3= 0x0f;// cord_h = P3 & 0x0f;// 儲存行線值 while( (P3 & 0x0f) != 0x0f );//松手檢測 return (cord_l + cord_h);//返回鍵值碼 } } }
上一篇:單片機外設模塊數據傳輸不成功的原因和解決辦法
下一篇:51型號單片機定時器及其應用
· 單片機AD轉換方法 為什么要AD轉換?
· 新手必看的單片機開發書籍推薦
· 淺談單片機解密 單片機解密方法
· 單片機開關方式 控制開關電源三種方式
· 如何用單片機控制驅動直流電機方法詳解
回到頂部