日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當前位置:首頁 >> 技術中心 >> 單片機入門 >> PIC單片機人機接口4×4行列式鍵盤的工作原理

PIC單片機人機接口4×4行列式鍵盤的工作原理

關鍵字:PIC 4×4行列式鍵盤 單片機 人機接口 作者:admin 來源:不詳 發(fā)布時間:2018-05-19  瀏覽:3

(1)單片機系統(tǒng)鍵盤原理

行列式鍵盤的接法比獨立式鍵盤的接法復雜,編程實現(xiàn)上也會比較復雜。但是,在占用相同的I/O端口的情況下,行列式鍵盤的接法會比獨立式接法允許的按鍵數(shù)量多,其原理圖如圖1所示。

2.jpg

實際的工程中,可能會使用PIC16C5X這種通用的可編程的鍵盤、顯示接口器件,使用PIC16C5X單片器件就能夠完成鍵盤輸入和顯示控制兩種功能。

行列式鍵盤的工作方式是先用列線發(fā)送掃描字,然后讀取行線的狀態(tài),查看是否有按鍵按下。鍵盤部分提供一種掃描的工作方式,可以和具有64個按鍵的矩陣鍵盤相連接,能對鍵盤不斷掃描、自動消抖、自動識別按下的鍵,并給出編碼,能對雙鍵或n個鍵同時按下的情況實行保護。

在顯示部分,它可以為發(fā)光二極管、熒光管及其他顯示器提供按掃描方式工作的顯示接口,而且為顯示器提供多路復用信號,可以顯示多達16位的字符或數(shù)字。

鍵盤中有無按鍵按下是由列線送入全掃描字、行線讀入行線狀態(tài)來判斷的,其方法是將列線的所有I/O線均置成低電平,然后將行線電平狀態(tài)讀入累加器A中,如果有鍵按下,總會有一根行線被拉至低電平,從而使行輸入不全為1。

鍵盤中哪一個鍵按下可由列線逐列置低電平后,檢查行輸入狀態(tài)來判斷,其方法是依次給列線送低電平,然后檢查所有行線狀態(tài),如果全為1,則所按下的鍵不在此列,如果不全為1,則所按下的鍵必在此列,而且是在與0電平線相交的交點上的那個鍵。

(2)單片機鍵盤掃描法

掃描法是在判定有鍵按下后逐列果行(或列)的狀態(tài)出現(xiàn)非全1狀態(tài),如果(或列)的狀態(tài)出現(xiàn)非全1狀態(tài),這時0狀態(tài)的行、列交點的鍵就是所按下的鍵。

掃描法的特點是逐行(或逐列)掃描查詢,這時相應行(或列)應有上拉電阻接高電平。行列式鍵盤掃描程序就是采用掃描法來確定哪個鍵按下的,圖1中行線上拉電阻接+5V,列線逐列掃描。

①逐行(或列)掃描查詢法。

確定矩陣式鍵盤上哪個鍵被按下時運用掃描法,又稱為逐行(或列)掃描查詢法,是一種最常用的按鍵識別方法,過程如下。

· 判斷鍵盤中有無鍵按下,將全部行線Y0~Y3置低電平,然后檢測列線的狀態(tài)。只要有一列的電平為低,則表示鍵盤中有鍵被按下,而且閉合的鍵位于低電平線與4根行線相交叉的4個按鍵之中。若所有列線均為高電平,則鍵盤中無鍵按下。

· 判斷閉合鍵所在的位置,在確認有鍵按下后,即可進入確定具體閉合鍵的過程。其方法是:依次將行線置為低電平,即在置某根行線為低電平時,其他線為高電平,在確定某根行線位置為低電平后,再逐行檢測各列線的電平狀態(tài),若某列為低,則該列線與置為低電平的行線交叉處的按鈕就是閉合的按鍵。

②反轉法。

掃描法要逐列(行)掃描查詢,當按下的鍵在最后行(列),要經過多次掃描才能獲得鍵值/鍵號。而反轉法只要經過兩個步驟就可獲得鍵值,原理如圖2所示。

1.jpg

圖中硬件采用中斷方式工作,用一個8位I/O口構成4×4鍵盤。假定圖中虛線為所按下的鍵,其反轉法的步驟如下。

· 將D3~D0設為列輸入線,D7~D4設為行輸出線,并使I/O輸出信號D7~D4為0000。若有鍵按下,與門的輸出端變?yōu)榈碗娖,向CPU申請中斷,表示鍵盤中有鍵按下。與此同時,D3~D0的數(shù)據(jù)輸入到內存中的某一單元中,其中0位對應的是被按下鍵的列位置。

· 將第一步中的傳送方向反轉過來,即將D7~D4設為輸入線,D3~D0設為輸出線。使I/O口輸出數(shù)據(jù)為N單元中的數(shù)(即D3~D0為按下鍵的列位置),然后讀入I/O口數(shù)據(jù),并送入內存N+1單元中存放,該數(shù)據(jù)的D7~D4位中0電平對應的位是按下鍵的行位置。最后,將N單元中的D3~D0與N+1單元中的D7~D4拼接起來就是按下鍵的鍵值。

單片機應用系統(tǒng)中,任何I/O口或擴展I/O口均可構成行列式鍵盤。典型的鍵盤接口有通用I/O擴展口、串行LO擴展口和專用鍵盤芯片構成的行列式鍵盤。由于帶有行列式鍵盤的應用系統(tǒng)中通常都有顯示器,為節(jié)省I/O口線,往往把顯示器電路與行列式鍵盤做在一個接口電路中。

【更多資源】

編輯:admin  最后修改時間:2018-05-19

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4

泰兴市| 西盟| 嘉定区| 清苑县| 禄丰县| 花莲市| 苗栗市| 独山县| 远安县| 新和县| 都江堰市| 新和县| 密云县| 临武县| 杨浦区| 饶河县| 拉萨市| 新邵县| 高尔夫| 集贤县| 桓台县| 泸州市| 隆子县| 行唐县| 嘉荫县| 洮南市| 南靖县| 嘉禾县| 湖北省| 巨鹿县| 多伦县| 繁峙县| 西盟| 金平| 永寿县| 桂平市| 浙江省| 阜南县| 民和| 云龙县| 呼玛县|