資源描述:
《按鍵資料整理》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、鍵盤知識(shí)講解一、鍵盤的分類編碼鍵盤鍵盤獨(dú)立鍵盤非編碼鍵盤矩陣鍵盤鍵盤在單片機(jī)應(yīng)用系統(tǒng)中,實(shí)現(xiàn)輸入數(shù)據(jù)、傳送命令的功能,是人工干預(yù)的主要手段。鍵盤分兩大類:編碼鍵盤和非編碼鍵盤。編碼鍵盤:由硬件邏輯電路完成必要的鍵識(shí)別工作與可靠性措施。每按一次鍵,鍵盤自動(dòng)提供被按鍵的讀數(shù),同時(shí)產(chǎn)生一選通脈沖通知微處理器,一般還具有反彈跳和同時(shí)按鍵保護(hù)功能。這種鍵盤易于使用,但硬件比較復(fù)雜,對(duì)于主機(jī)任務(wù)繁重之情況,采用8279可編程鍵盤管理接口芯片構(gòu)成編碼式鍵盤系統(tǒng)是很實(shí)用的方案。非編碼鍵盤:只簡(jiǎn)單地提供鍵盤的行列與矩陣,其他操作如鍵的識(shí)別,決定按鍵的讀數(shù)等僅靠軟件完成,故硬件較為簡(jiǎn)單,但占用CPU較多時(shí)
2、間。有:獨(dú)立式按鍵結(jié)構(gòu)、矩陣式按鍵結(jié)構(gòu)。二、鍵盤系統(tǒng)設(shè)計(jì)首先,確定鍵盤編碼方案:采用編碼鍵盤或非編碼鍵盤。隨后,確定鍵盤工作方式:采用中斷或查詢方式輸入鍵操作信息。然后,設(shè)計(jì)硬件電路。非編碼鍵盤系統(tǒng)中,鍵閉合和鍵釋放的信息的獲取,鍵抖動(dòng)的消除,鍵值查找及一些保護(hù)措施的實(shí)施等任務(wù),均由軟件來完成。(一)非編碼鍵盤的鍵輸入程序應(yīng)完成的基本任務(wù)1.監(jiān)測(cè)有無鍵按下;鍵的閉合與否,反映在電壓上就是呈現(xiàn)出高電平或低電平,所以通過電平的高低狀態(tài)的檢測(cè),便可確認(rèn)按鍵按下與否。2.判斷是哪個(gè)鍵按下。3.完成鍵處理任務(wù)。(二)從電路或軟件的角度應(yīng)解決的問題1.消除抖動(dòng)影響。鍵盤按鍵所用開關(guān)為機(jī)械彈性開關(guān),
3、利用了機(jī)械觸點(diǎn)的合、斷作用。由于機(jī)械觸點(diǎn)的的彈性作用,一個(gè)按鍵開關(guān)在閉合和斷開的瞬間均有一連串的抖動(dòng),波形如下:抖動(dòng)時(shí)間的長(zhǎng)短由按鍵的機(jī)械特性決定,一般為5~10ms,這是一個(gè)很重要的參數(shù)。抖動(dòng)過程引起電平信號(hào)的波動(dòng),有可能令CPU誤解為多次按鍵操作,從而引起誤處理。為了確保CPU對(duì)一次按鍵動(dòng)作只確認(rèn)一次按鍵,必須消除抖動(dòng)的影響。按鍵的消抖,通常有軟件,硬件兩種消除方法。硬件消抖:這種方法只適用于鍵的數(shù)目較少的情況。軟件消抖:如果按鍵較多,硬件消抖將無法勝任,常采用軟件消抖。通常采用軟件延時(shí)的方法:在第一次檢測(cè)到有鍵按下時(shí),執(zhí)行一段延時(shí)10ms的子程序后,再確認(rèn)電平是否仍保持閉合狀態(tài)電
4、平,如果保持閉合狀態(tài)電平,則確認(rèn)真正有鍵按下,進(jìn)行相應(yīng)處理工作,消除了抖動(dòng)的影響。(這種消除抖動(dòng)影響的軟件措施是切實(shí)可行的。)2.采取串鍵保護(hù)措施。串鍵:是指同時(shí)有一個(gè)以上的鍵按下,串鍵會(huì)引起CPU錯(cuò)誤響應(yīng)。通常采取的策略:?jiǎn)捂I按下有效,多鍵同時(shí)按下無效。3.處理連擊。連擊:是一次按鍵產(chǎn)生多次擊鍵的效果。要有對(duì)按鍵釋放的處理,為了消除連擊,使得一次按鍵只產(chǎn)生一次鍵功能的執(zhí)行(不管一次按鍵持續(xù)的時(shí)間多長(zhǎng),僅采樣一個(gè)數(shù)據(jù))。否則的話,鍵功能程序的執(zhí)行次數(shù)將是不可預(yù)知,由按鍵時(shí)間決定。連擊是可以利用的。連擊對(duì)于用計(jì)數(shù)法設(shè)計(jì)的多功能鍵特別有效。三、鍵盤工作方式查詢方式(編程掃描,定時(shí)掃描方式)
5、鍵盤的工作方式中斷掃描方式單片及應(yīng)用系統(tǒng)中,鍵盤掃描只是CPU的工作內(nèi)容之一。CPU忙于各項(xiàng)任務(wù)時(shí),如何兼顧鍵盤的輸入,取決于鍵盤的工作方式。考慮儀表系統(tǒng)中CPU任務(wù)的份量,來確定鍵盤的工作方式。鍵盤的工作方式選取的原則是:既要保證能及時(shí)響應(yīng)按鍵的操作,又不過多的占用CPU的工作時(shí)間。四、鍵盤電路結(jié)構(gòu)(一)獨(dú)立式按鍵接口設(shè)計(jì)獨(dú)立式按鍵就是各按鍵相互獨(dú)立,每個(gè)按鍵單獨(dú)占用一根I/O口線,每根I/O口線的按鍵工作狀態(tài)不會(huì)影響其他I/O口線上的工作狀態(tài)。因此,通過檢測(cè)輸入線的電平狀態(tài)可以很容易判斷哪個(gè)按鍵被按下了。優(yōu)點(diǎn):電路配置靈活,軟件結(jié)構(gòu)簡(jiǎn)單。缺點(diǎn):每個(gè)按鍵需占用一根I/O口線,在按鍵數(shù)
6、量較多時(shí),I/O口浪費(fèi)大,電路結(jié)構(gòu)顯得復(fù)雜。因此,此鍵盤是用于按鍵較少或操作速度較高的場(chǎng)合。也可以用擴(kuò)展I/O口搭接獨(dú)立式按鍵接口電路,可采用8255擴(kuò)展I/O口,用三態(tài)緩沖器擴(kuò)展。這兩種配接方式,都是把按鍵當(dāng)作外部RAM某一工作單元的位來對(duì)待,通過讀片外RAM的方法,識(shí)別按鍵的工作狀態(tài)。上電路中獨(dú)立式按鍵電路,各按鍵開關(guān)均采用了上拉電阻,是為了保證在按鍵斷開時(shí),各I/O有確定的高電平。如輸入口線內(nèi)部已有上拉電阻,則外電路的上拉電阻可省去。(二)矩陣式鍵盤接口設(shè)計(jì)矩陣式鍵盤適用于按鍵數(shù)量較多的場(chǎng)合,由行線和列線組成,按鍵位于行列的交叉點(diǎn)上。節(jié)省I/O口。矩陣鍵盤工作原理:行線通過上拉電
7、阻接到+5V上。無按鍵,行線處于高電平狀態(tài),有鍵按下,行線電平狀態(tài)將由與此行線相連的列線電平?jīng)Q定。列線電平為低,則行線電平為低;列線電平為高,則行線電平為高。五、雙功能及多功能鍵設(shè)計(jì)在單片機(jī)應(yīng)用系統(tǒng)中,為簡(jiǎn)化硬件線路,縮小整個(gè)系統(tǒng)的規(guī)模,總希望設(shè)置最少的按鍵,獲得最多的控制功能。矩陣鍵盤與獨(dú)立式按鍵鍵盤相比,硬件電路大大節(jié)省??赏ㄟ^軟件的方法讓一鍵具有多功能。方法:選擇一個(gè)RAM工作單元,對(duì)某一個(gè)按鍵進(jìn)行按鍵計(jì)數(shù),根據(jù)不同計(jì)數(shù)值,轉(zhuǎn)到子程序。這