第六章mcs-51單片機接口技術_第1頁
已閱讀1頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、1,一、鍵盤基礎知識 二、MCS-51對非編碼鍵盤的接口 三、鍵盤的工作方式,§10.2 鍵盤接口原理,2,一 鍵盤基礎知識,鍵盤是一組按鍵的組合,它是最常用的單片機輸入設備,操作人員可以通過鍵盤輸入數(shù)據(jù)或命令,實現(xiàn)簡單的人機對話。,1、什么是鍵盤?,3,2、按鍵的分類,按鍵按照結構原理可分為兩類:觸點式開關按鍵:如機械式開關等。無觸點式開關按鍵:如磁感應按鍵。 前者造價低,后者壽命長。 目前,微機系統(tǒng)中最常見

2、的是: 觸點式開關按鍵,4,鍵盤按其結構形式可分為兩種:編碼鍵盤:由硬件邏輯自動提供與鍵對應的編碼。使用方便,但電路復雜,價格較貴,在單片機應用系統(tǒng)中較少采用。非編碼鍵盤:由軟件來實現(xiàn)鍵盤的定義與識別。結構簡單、成本低廉,在單片機應用系統(tǒng)中被普遍采用。,5,3、按鍵去抖動處理,由于通常的按鍵所用的開關是機械開關,當開關閉合、斷開時并不是馬上穩(wěn)定地接通和斷開,而是在閉合與斷開瞬間均伴隨有一連串的抖動。當掃描表明有鍵

3、被按下之后,緊接著應進行去抖動處理。抖動時間長、短與鍵的機械特性有關,一般為5~l0ms。,6,如圖所示:,圖3-1,7,★請思考,什么是鍵抖動?為什么鍵盤要考慮去抖動? 一般常用去抖動的方法有哪些?,8,什么是鍵抖動? 由于通常的按鍵所用的開關是機械開關,被按下時,由于機械觸點的彈性及電壓突跳等原因,觸點閉合或斷開的瞬間會出現(xiàn)電壓抖動。為什么鍵盤要考慮去抖動? 鍵抖動可能導致計算機將人工按一次鍵

4、操作識別為多次,為了消除干擾,保證在按鍵閉合穩(wěn)定狀態(tài)下讀取鍵值,需要對鍵盤進行消抖處理。,9,一般常用去抖動的方法有幾種?常用的消抖措施有硬件消抖和軟件消抖。硬件方法就是在鍵盤中附加去抖動電路,從根本上消除抖動產(chǎn)生的可能性;軟件方法則是采用時間延遲以躲過抖動(大約延時10~30ms即可),待行線上狀態(tài)穩(wěn)定之后,再進行狀態(tài)輸入。,10,就是在第一次檢測到有鍵按下時先不動作,延時一段時間(一般為10ms),再次檢測按鍵的狀態(tài),如果仍保

5、持閉合狀態(tài),則確認真正有鍵按下。當檢測到按鍵釋放后,也要給5ms~10ms的延時,待后沿抖動消失后才能轉入按鍵的處理程序。,◆軟件消抖,11,對于兩個或多個按鍵同時按下的重鍵問題,可以采用“先入有效”或“后留有效”的原則加以處理。 “先入有效”:指當多個按鍵同時按下時,只有第一個按下的鍵有效,其它鍵無效。 “后留有效”:指當多個按鍵同時按下時,只有最后松開的按鍵有效,其它鍵均無效。,12,4、鍵盤接口的操作功能,從按一個鍵到鍵的功

6、能被執(zhí)行主要包括兩項工作:第一項:鍵的識別,即在鍵盤中找出被按的是哪個鍵。第二項:鍵功能的實現(xiàn)。 第一項工作使用接口電路實現(xiàn),第二項工作是通過執(zhí)行查詢/中斷服務程序來完成。我們先討論第一項,即鍵盤接口問題。,13,鍵盤接口的操作功能:① 鍵盤掃描,以判定是否有鍵被按下(稱之為“閉合鍵”)。② 鍵識別,以確定閉合鍵的行列位置。③ 產(chǎn)生閉合鍵的鍵碼。④ 排除多鍵、竄鍵(復按)及去抖動。,14,二 MCS-51對非編

7、碼鍵盤的接口,非編碼鍵盤有兩種形式:獨立式鍵盤接口:單片機系統(tǒng)中,如只需要幾個功能鍵,此時,可采用獨立式按鍵結構。矩陣式(行列式)鍵盤接口:單片機系統(tǒng)中,若使用按鍵較多時,通常采用矩陣式鍵盤。,15,1、獨立式鍵盤接口,獨立式按鍵是直接用I/O口線構成的單個按鍵電路,其特點是每個按鍵單獨占用一根I/O口線,每個按鍵的工作不會影響其它I/O口線的狀態(tài)。獨立式按鍵電路配置靈活,軟件結構簡單,但每個按鍵必須占用一根I/O口線,因

8、此,在按鍵較多時,I/O口線浪費較大,不宜采用。,①按鍵硬件結構,16,MCS-51對獨立式非編碼鍵盤的接口,此種接口適于鍵數(shù)較少或操作速度較高的場合。,圖3-3,17,圖(a)為中斷方式的獨立式鍵盤工作電路,圖(b)為查詢方式的獨立式鍵盤工作電路,②工作原理: 當任何一個鍵被按下時,與其相連的輸入線被置成 “0”,平時該線為“1”。,工作方式:,18,,圖3-4,19,③獨立式按鍵的軟件結構 常采用查詢式結構: 先

9、逐位查詢每根I/O口線的輸入狀態(tài),如某一根I/O口線輸入為低電平,則可確認該I/O口線所對應的按鍵已按下; 然后,再轉向該鍵的功能處理程序。,20,獨立式鍵盤處理程序流程,圖3-5,21,2、矩陣式(行列式)鍵盤接口,用于按鍵數(shù)目較多的場合,由行線和列線組成,按鍵位于行、列的交叉點上。 行列式鍵盤與獨立式鍵盤相比,要節(jié)省很多的I/O口線。,①按鍵硬件結構,22,23,②矩陣式鍵盤工作原理,無鍵按下,該輸入(行)線為高電平,當有鍵按

10、下時,輸入(行)線電平由輸出(列)線的電平來決定。 由于行、列線為多鍵共用,各按鍵彼此將相互發(fā)生影響,必須將行、列線信號配合起來并作適當?shù)奶幚?,才能確定閉合鍵的位置。,24,③矩陣式按鍵的識別方法,a. 掃描法 b. 線反轉法,25,第1步:識別鍵盤有無鍵按下。,第2步:如有鍵被按下,識別出具體的按鍵。,把所有列線置0,檢查各行線電平是否有變化,如有變化,說明有鍵按下,如無變化,則無鍵按下。,先把某一列置低電平,其余各列為高電平,

11、檢查各行線電平的變化,如果某行線電平為低,可確定此行列交叉點處的按鍵被按下。,a. 掃描法,26,過程:1.先判斷有無鍵按下,列線輸出0000,然后輸入行線狀態(tài): 若沒有鍵按下,則行線狀態(tài)為全1(1111); 若有任一鍵按下,則行線狀態(tài)不為全1。,27,圖3-7,28,過程:2.再確認哪個鍵被按下,列線逐行輸出0,然后輸入行線狀態(tài): 若沒有鍵按下,則行線狀態(tài)為全1(1111); 若有任一鍵按下,則行線狀態(tài)不為全1。,29,掃描法

12、識別出具體按鍵的過程:,圖3-7,P1.7,P1.6,P1.4,P1.5,P1.3,P1.2,P1.0,P1.1,30,P1.7,P1.6,P1.4,P1.5,P1.3,P1.2,P1.0,P1.1,31,P1.7,P1.6,P1.4,P1.5,P1.3,P1.2,P1.0,P1.1,32,第1步:列線輸出為全低電平,則行線中電平由高變低的所在行為按鍵所在行。,第2步:行線輸出為全低電平,則列線中電平由高變低所在列為按鍵所在列。,b.

13、線反轉法,只需兩步便能獲得此按鍵所在的行列值。,33,圖3-7,34,圖3-7,35,比較說明:,掃描法對鍵的識別采用逐列掃描的方法獲得鍵的位置,當被按下的鍵在最后一列時需要掃描N次(N為列數(shù)),當N比較大時鍵盤工作速度較慢;而線反轉法則不論鍵盤有多少行和多少列只需經(jīng)過兩步即可獲得鍵的位置。,36,正邏輯表示--行列線數(shù)據(jù)求反組合,上例中的各鍵值分別為:88H、84H 、82H 、81H、,48H 、44H 、42H、41H、,28H

14、、24H、22H、21H、,18H、14H、12H、11H,④確定每個鍵的鍵值,負邏輯表示--行列線數(shù)據(jù)直接組合,上例中的各鍵值分別為: 77H、7BH 、7DH 、7EH、,B7H 、BBH 、BDH、BEH、,D7H、DBH、DDH、DEH、,E7H、 EBH、EDH、EEH,37,三 鍵盤的工作方式,單片機在忙于各項工作任務時,如何兼顧鍵盤的輸入,取決于鍵盤的工作方式。原則:即要保證能及時響應按鍵操作,又不要過多占用CPU的工作

15、時間。通常,鍵盤工作方式有3種:,編程掃描、定時掃描、中斷掃描,38,1. 編程掃描方式,工作過程:,(1)在鍵盤掃描子程序中,先判斷 有無鍵按下。,(2)用軟件來消除按鍵抖動的影響。 如有鍵按下,則進行下一步。,(3)求按下鍵的鍵號。,(4)等待按鍵釋放后,再進行按鍵 功能的處理操作。,39,2. 定時掃描工作方式,利用單片機內(nèi)的定時器,產(chǎn)生10ms的定時中斷,對鍵盤進行掃描。

16、只有在鍵盤有鍵按下時,才執(zhí)行鍵盤掃描程序,如無鍵按下,單片機將不理睬鍵盤。,3.中斷工作方式,40,,小結:鍵盤所做的工作分為三個層次:,41,第1層:單片機如何來監(jiān)視鍵盤的輸入。 三種工作方式: ①編程掃描②定時掃描③中斷掃描,第2層:確定具體按鍵的鍵號。 體現(xiàn)在按鍵的識別方法上就是: ①掃描法;②線反轉法。,第3層:執(zhí)行鍵處理程序。,42,10.2節(jié)要點:,鍵盤的抖動與消抖。非編碼鍵盤的兩種形式,各自的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論