在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個(ge) 按鍵加以連接。這樣,一個(ge) 端口(如P1口)就可以構成4*4=16個(ge) 按鍵,比之直接將端口線用於(yu) 鍵盤多出了一倍,而且線數越多,區別越明顯,比如再多加一條線就可以構成20鍵的鍵盤,而直接用端口線則隻能多出一鍵(9鍵)。由此可見,在需要的鍵數比較多時,采用矩陣法來做鍵盤是合理的。
<1>確定矩陣式鍵盤上何鍵被按下介紹一種“行掃描法”。
行掃描法 行掃描法又稱為(wei) 逐行(或列)掃描查詢法,是一種最常用的按鍵識別方法,如上圖所示鍵盤,介紹過程如下。
1、判斷鍵盤中有無鍵按下 將全部行線Y0-Y3置低電平,然後檢測列線的狀態。隻要有一列的電平為(wei) 低,則表示鍵盤中有鍵被按下,而且閉合的鍵位於(yu) 低電平線與(yu) 4根行線相交叉的4個(ge) 按鍵之中。若所有列線均為(wei) 高電平,則鍵盤中無鍵按下。
2、判斷閉合鍵所在的位置 在確認有鍵按下後,即可進入確定具體(ti) 閉合鍵的過程。其方法是:依次將行線置為(wei) 低電平,即在置某根行線為(wei) 低電平時,其它線為(wei) 高電平。在確定某根行線位置為(wei) 低電平後,再逐行檢測各列線的電平狀態。若某列為(wei) 低,則該列線與(yu) 置為(wei) 低電平的行線交叉處的按鍵就是閉合的按鍵。
<2>確定矩陣式鍵盤上何鍵被按下介紹一種“高低電平翻轉法”。
首先讓P1口高四位為(wei) 1,低四位為(wei) 0,。若有按鍵按下,則高四位中會(hui) 有一個(ge) 1翻轉為(wei) 0,低四位不會(hui) 變,此時即可確定被按下的鍵的行位置。
然後讓P1口高四位為(wei) 0,低四位為(wei) 1,。若有按鍵按下,則低四位中會(hui) 有一個(ge) 1翻轉為(wei) 0,高四位不會(hui) 變,此時即可確定被按下的鍵的列位置。
最後將上述兩(liang) 者進行或運算即可確定被按下的鍵的位置。