單片機應用系統(tǒng)_第1頁
單片機應用系統(tǒng)_第2頁
單片機應用系統(tǒng)_第3頁
單片機應用系統(tǒng)_第4頁
單片機應用系統(tǒng)_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

人機接口鍵盤接口顯示器接口第

應用系統(tǒng)

本章內(nèi)容SingleChipMicrocomputer/sundae_mengPC機除了主機以外還需要哪些部分呢?單片機電路有時候也需要鍵盤、顯示等外設。/sundae_meng10.1鍵盤接口按鍵的特點及輸入原理獨立式按鍵矩陣式按鍵/sundae_meng按鍵的特點及輸入原理鍵輸入原理:

通過按鍵的接通與斷開,產(chǎn)生兩種相反的邏輯狀態(tài)低電平“0”與高電平“1”。鍵功能的實現(xiàn):對于一組鍵或一個鍵盤,需通過接口電路與單片機相連??刹捎貌樵兓蛑袛喾绞綔y試有無鍵按下,再確定是哪一個鍵按下,將該鍵號送入累加器ACC,然后判斷是數(shù)字鍵還是功能鍵,若是數(shù)字鍵,則將鍵號對應的數(shù)字送入相關輸入緩沖區(qū);若是功能鍵,則通過跳轉(zhuǎn)指令轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完后再返回主程序。

/sundae_meng

硬件方案——雙穩(wěn)態(tài)去抖電路鍵盤接口需要解決的問題是否有鍵按下按鍵識別:鍵抖動及消除:機械按鍵抖動時間在5ms~10ms之間

軟件方案——延時10ms~20ms后再次判斷消除方法:求鍵號/sundae_meng----掃描(判斷哪個鍵按下)、去抖動、判斷按鍵是否抬起(以防止重復進行鍵處理)。

前沿抖動后沿抖動鍵按下閉合穩(wěn)定鍵釋放/sundae_meng獨立式按鍵接口電路:特點:一線一鍵,按鍵識別(編程)簡單;但占用較多口線,適合8鍵以下使用。/sundae_meng原理----當任何一個鍵被按下時,與其相連的輸入線被置成“0”,平時該線為“1”。鍵處理程序ORG2000HSTART:MOVA,#0FFH;先置P1口為“1”MOVP1,AMOVA,P1;輸入鍵狀態(tài)JNBACC.0,P0F;查詢0號鍵JNBACC.1,P1F;查詢1號鍵JNBACC.2,P2F;查詢2號鍵JNBACC.3,P3F;查詢3號鍵JNBACC.4,P4F;查詢4號鍵JNBACC.5,P5F;查詢5號鍵JNBACC.6,P6F;查詢6號鍵JNBACC.7,P7F;查詢7號鍵LJMPSTART鍵盤掃描/sundae_mengP0F:LJMPPROM0;入口地址表P1F:LJMPPROM1P6F:LJMPPROM6P7F:LJMPPROM7……PROM0:…..;0號鍵功能程序PROM7:…..;7號鍵功能程序…..LJMPSTART;0號鍵處理完返回鍵盤掃描LJMPSTART;7號鍵處理完返回鍵盤掃描…....../sundae_meng例1:用P1口檢測三個按鍵的狀態(tài)并完成相應的功能解:資源分配:用P1口的低3位檢測3個按鍵的輸入,為1則表示按鍵沒有按下,為0則表示相應按鍵被按下。流程圖:/sundae_meng ORG2000HKB: MOVP1,#0FFH MOVA,P1 CPLA ANLA,#0FH JZKBACK LCALLD10MS MOVA,P1 CPLA ANLA,#0FH JZKBACK CJNEA,#01H,KB01 LCALLPGM1 SJMPKBACKKB01: CJNEA,#02H,KB02 LCALLPGM2 SJMPKBACKKB02: CJNEA,#04H,KB LCALLPGM3KBACK:LJMPKB END編程(1):按三個按鍵中的任一鍵都對應一個特定功能。若判斷鍵釋放應如何修改?/sundae_meng矩陣式按鍵關鍵:如何判斷鍵號?3210476511109815141312+5VP1.4P1.3P1.0MCS-51P1.7P1.6P1.5P1.2P1.1接口電路:特點:按鍵識別應采用掃描法或線路反轉(zhuǎn)法編程較為復雜,節(jié)省口資源,8鍵以上使用/sundae_meng鍵盤掃描子程序一般包括以下內(nèi)容:

1.判別有無鍵按下;

2.掃描獲取閉合鍵的行、列值;

3.用計算法或查表法得到鍵值;

4.判斷閉合鍵釋放否,如沒釋放則繼續(xù)等待;

5.保存閉合鍵號。/sundae_meng鍵按下/釋放判斷

KS:MOVP1,#0FHMOVA,P1;讀入P1口狀態(tài)

CPLA;變正邏輯,高電平表示有鍵按下

ANLA,#0FH;取低4位

RET ;返回,A≠0表示有鍵按下

/sundae_meng按鍵識別——掃描法

流程:

當?shù)?列處于低電平時,逐行查找是否有行線變低,若有,則第0列與該行的交叉點按鍵按下;若無,則表示第0列無鍵按下,再讓下一列處在低電平,依此循環(huán),這種方式稱為鍵盤掃描。

原理:

在某一時刻只讓一條列線處于低電平,其余列線均處于高電平,則當這一列有鍵按下時,該鍵所在的行電平將會由高電平變?yōu)榈碗娖?,可判定該列相應的行有鍵按下。/sundae_meng例2:鍵盤掃描程序SERCH:MOVR2,#0EFH MOVR3,#00HLINE0:MOVA,R2 MOVP1,A MOVA,P1 JBACC.3,LINE1 MOVA,#00H AJMPTRYKLINE1:JBACC.2,LINE2 MOVA,#04H AJMPTRYK LINE2:JBACC.1,LINE3MOVA,#08H接口電路/sundae_meng

AJMPTRYK

LINE3:JBACC.0,LINE4

MOVA,#0CH

AJMPTRYK

LINE4:INCR3

MOVA,R2

RL A

JNBACC.0,BACK

MOVR2,A

AJMPLINE0

TRYK:ADDA,R3

BACK:RET 接口電路/sundae_meng矩陣式按鍵關鍵:如何判斷鍵號?3210476511109815141312+5VP1.4P1.3P1.0MCS-51P1.7P1.6P1.5P1.2P1.1接口電路:特點:按鍵識別應采用掃描法或線路反轉(zhuǎn)法編程較為復雜,節(jié)省口資源,8鍵以上使用/sundae_meng定時掃描方式

定時掃描方式就是每隔一段時間對鍵盤掃描一次,它利用單片機內(nèi)部的定時器產(chǎn)生一定時間(例如10ms)的定時,當定時時間到就產(chǎn)生定時器溢出中斷。CPU響應中斷后對鍵盤進行掃描,并在有鍵按下時識別出該鍵,再執(zhí)行該鍵的功能程序。/sundae_meng中斷掃描方式

為提高CPU工作效率,可采用中斷掃描工作方式。其工作過程如下:當無鍵按下時,CPU處理自己的工作,當有鍵按下時,產(chǎn)生中斷請求,CPU轉(zhuǎn)去執(zhí)行鍵盤掃描子程序,并識別鍵號。/sundae_meng10.2顯示器接口技術LED的結(jié)構(gòu)和顯示原理靜態(tài)顯示方式動態(tài)顯示方式動態(tài)顯示的實現(xiàn)動態(tài)顯示方式/sundae_meng問題引入:

LED顯示器如何顯示出指定數(shù)字/字符?comcom/sundae_meng例:模擬產(chǎn)品計數(shù)顯示電路/sundae_meng編程

ORG 1000HSTAR:MOV TMOD,#60H ;定時器T1工作在方式2計數(shù)

MOV TH1,#00H;T1置初值

MOV TL1,#00HMAIN:MOV P1,#0C0H ;數(shù)碼管顯示0DISP:JBP3.3,DISP;監(jiān)測按鍵信號

ACALLDELAY ;消抖延時

JBP3.3,DISP ;確認低電平信號DISP1:JNB P3.3,DISP1 ;監(jiān)測按鍵信號

ACALLDELAY ;消抖延時

JNB P3.3,DISP1 ;確認高電平信號

SETB TR1 ;啟動計數(shù)器/sundae_meng編程DISP2:MOVA,TL1MOVCA,@A+DPTR;查表獲取數(shù)碼管顯示值

MOV P1,A ;數(shù)碼管顯示計數(shù)值

CJNEA,#8EH,DISP2 LJMP STAR TAB:0C0H,0F9H,0A4H…… DELAY:MOVR2,#14HDELAY1:MOVR3,#0FAHDJNZR3,$DJNZR2,DELAY1RETEND/sundae_meng靜態(tài)顯示方式連接

所有LED的位選均共同連接到+VCC或GND,每個LED的8根段選線分別連接一個8位并行I/O口,從該I/O口送出相應的字型碼顯示字型。

特點原理簡單;顯示亮度強,無閃爍;占用I/O資源較多。/sundae_meng動態(tài)顯示方式連接

所有LED的段選線共同連接在一起共用一個8位I/O口,而每個LED的位選分別由一根相應的I/O口線控制。因此必須采用動態(tài)掃描顯示方式,每一個時刻只選通其

溫馨提示

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

最新文檔

評論

0/150

提交評論