• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

改良版矩陣鍵盤(pán),仿真及程序詳解

2017/09/28
29
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

矩陣鍵盤(pán).rar

共1個(gè)文件

首先分享一個(gè)矩陣鍵盤(pán)電路


上述的鍵盤(pán)編碼方式是目前為止原理最簡(jiǎn)單的方式。首先我們知道當(dāng)有一個(gè)按鍵按下去之后,相應(yīng)的列線和行線之間就會(huì)短路(也可以說(shuō)是直接相連),因此我們做掃描程序編碼時(shí)候,一般都是讓我們的8位輸出口首先輸出0xf0或者0x0f這樣子比較有特點(diǎn)的一些數(shù)值,因?yàn)橐坏┌存I按下之后,就能和清晰的讀取回來(lái),并且第一次判斷是哪一行,哪一列。然后在第二次把這些行全一或者列全一的數(shù)值進(jìn)行對(duì)調(diào),再讀入之后就能進(jìn)行編碼了。
但是,我們仔細(xì)想一下以下的敘述方式。我第一次輸出0xf0,假設(shè)KEY2按下時(shí),入讀的就應(yīng)該是0xe0,那么假設(shè)我讓第二次輸出0x0e,試想下在讀取8這個(gè)電路的行列時(shí)候會(huì)變成什么樣子?是不是很容易得出0xde這個(gè)值?那這個(gè)0xde就是KEY2的編碼。因此我們?cè)谶@里總結(jié)了行反轉(zhuǎn)法的基本流程:
(1)端口輸出0xf0;
(2)讀入,判斷是否為0xf0,如果不是表示有按鍵按下;
(3)將讀入值的高4位和低4位交換,再輸出;
(4)讀入端口的值,即按鍵的編碼。

仿真原理圖如下(proteus仿真工程文件可到附件中下載)

附件內(nèi)容截圖:

部分源碼截圖:

  • 矩陣鍵盤(pán).rar
    下載
    描述:仿真和程序

相關(guān)推薦