




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、鍵盤接口鍵盤接口顯示器接口顯示器接口第第十十章章單單片片機(jī)機(jī)應(yīng)應(yīng)用用系系統(tǒng)統(tǒng) 本章內(nèi)容本章內(nèi)容single chip microcomputerhttp:/ 鍵盤接口鍵盤接口q按鍵的特點及輸入原理q獨立式按鍵q矩陣式按鍵http:/ 通過按鍵的接通與斷開,產(chǎn)生兩種相反的邏輯通過按鍵的接通與斷開,產(chǎn)生兩種相反的邏輯狀態(tài)狀態(tài) 低電平低電平“0 0”與與高電平高電平“1 1”。 v鍵功能的實現(xiàn):鍵功能的實現(xiàn): 對于一組鍵或一個鍵盤,需通過接口電路與單對于一組鍵或一個鍵盤,需通過接口電路與單片機(jī)相連??刹捎闷瑱C(jī)相連??刹捎没蚧蚍绞綔y試有無鍵按下,方式測試有無鍵按下,再確定是哪一個鍵按下,將該鍵號送入累
2、加器再確定是哪一個鍵按下,將該鍵號送入累加器accacc,然后判斷是數(shù)字鍵還是功能鍵,若是數(shù)字鍵,則將然后判斷是數(shù)字鍵還是功能鍵,若是數(shù)字鍵,則將鍵號對應(yīng)的數(shù)字送入相關(guān)輸入緩沖區(qū);若是功能鍵,鍵號對應(yīng)的數(shù)字送入相關(guān)輸入緩沖區(qū);若是功能鍵,則通過跳轉(zhuǎn)指令轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完則通過跳轉(zhuǎn)指令轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完后再返回主程序。后再返回主程序。 http:/ 硬件方案硬件方案雙穩(wěn)態(tài)去抖電路雙穩(wěn)態(tài)去抖電路鍵盤接口需要解決的問題是否有鍵按下是否有鍵按下按鍵識別:按鍵識別:鍵抖動及消除鍵抖動及消除:機(jī)械按鍵抖動時間在機(jī)械按鍵抖動時間在5 5msms10ms10ms之之間間 軟件方案軟件方
3、案延時延時10ms10ms20ms20ms后再次判斷后再次判斷消除方法消除方法:求鍵號求鍵號http:/ 前沿抖動前沿抖動后沿抖動后沿抖動鍵按下鍵按下閉合穩(wěn)定閉合穩(wěn)定鍵釋放鍵釋放http:/ 0 3 1p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.7vc c接口電路:http:/ “0 0”,平時該線為,平時該線為“1 1”。鍵處理程序鍵處理程序org 2000hstart:mov a ,#0ffh ;先置;先置p1口為口為“1”mov p1,amov a,p1 ;輸入鍵狀態(tài);輸入鍵狀態(tài)jnb acc.0, p0f ;查詢;查詢0號鍵號鍵jnb acc.1, p1f ;查詢;查
4、詢1號鍵號鍵jnb acc.2, p2f ;查詢;查詢2號鍵號鍵jnb acc.3, p3f ;查詢;查詢3號鍵號鍵jnb acc.4, p4f ;查詢;查詢4號鍵號鍵jnb acc.5, p5f ;查詢;查詢5號鍵號鍵jnb acc.6, p6f ;查詢;查詢6號鍵號鍵jnb acc.7, p7f ;查詢;查詢7號鍵號鍵ljmp starthttp:/ prom0 ;入口地址表;入口地址表p1f:ljmp prom1p6f:ljmp prom6p7f:ljmp prom7prom0:. ;0號鍵功能程序號鍵功能程序prom7:. ;7號鍵功能程序號鍵功能程序.ljmp start ;0號鍵處
5、理完返回鍵盤掃描號鍵處理完返回鍵盤掃描ljmp start ;7號鍵處理完返回鍵盤掃描號鍵處理完返回鍵盤掃描.http:/ 1:用:用p1p1口檢測三個按鍵的狀態(tài)并完成相應(yīng)的功能口檢測三個按鍵的狀態(tài)并完成相應(yīng)的功能解:資源分配:用p1口的低3位檢測3個按鍵的輸入,為1則表示按鍵沒有按下,為0則表示相應(yīng)按鍵被按下。流程圖:http:/ org 2000hkb: mov p1,#0ffh mov a,p1 cpl a anl a,#0fh jz kback lcall d10ms mov a,p1 cpl a anl a,#0fh jz kback cjne a,#01h,kb01 lcall p
6、gm1 sjmp kbackkb01:cjne a,#02h,kb02 lcall pgm2 sjmp kbackkb02:cjne a,#04h,kb lcall pgm3kback: ljmp kb end編程(1):按三個按鍵中的任一鍵都對應(yīng)一個特定功能。若判斷鍵釋放應(yīng)如何修改?http:/ 1.判別有無鍵按下; 2.掃描獲取閉合鍵的行、列值; 3.用計算法或查表法得到鍵值; 4.判斷閉合鍵釋放否,如沒釋放則繼續(xù)等待; 5.保存閉合鍵號。http:/ /釋放判斷釋放判斷 ks:mov p1,#0fh mov a,p1 ;讀入讀入p1口狀態(tài)口狀態(tài) cpl a ;變正邏輯,高電平表示有鍵按下
7、;變正邏輯,高電平表示有鍵按下 anl a,#0fh ;取低;取低4位位 ret ;返回,;返回,a0表示有鍵按下表示有鍵按下 http:/ 流程: 當(dāng)?shù)诋?dāng)?shù)? 0列處于低電平時,列處于低電平時,逐行逐行查找是否有行線變低,查找是否有行線變低,若有,則若有,則第第0 0列與該行的交叉點列與該行的交叉點按鍵按下;若無,則表示按鍵按下;若無,則表示第第0 0列無鍵按下,再讓下一列處在低電平,依此循環(huán),這列無鍵按下,再讓下一列處在低電平,依此循環(huán),這種方式稱為種方式稱為鍵盤掃描鍵盤掃描。 原理: 在某一時刻只讓在某一時刻只讓一條列線一條列線處于處于低低電平,其余列線均電平,其余列線均處于高電平,則當(dāng)
8、這一列有鍵按下時,該鍵所在的行處于高電平,則當(dāng)這一列有鍵按下時,該鍵所在的行電平將會由高電平變?yōu)榈碗娖?,可判定該列相?yīng)的行電平將會由高電平變?yōu)榈碗娖?,可判定該列相?yīng)的行有鍵按下。有鍵按下。http:/ mov r2,#0efh mov r3,#00h line0: mov a,r2 mov p1,a mov a,p1 jb acc.3,line1 mov a,#00h ajmp trykline1: jb acc.2,line2 mov a,#04h ajmp tryk line2: jb acc.1,line3 mov a,#08h接口電路http:/ ajmp trykline3: jb
9、acc.0,line4 mov a,#0ch ajmp trykline4: inc r3 mov a,r2 rl a jnb acc.0,back mov r2,a ajmp line0 tryk: add a,r3back: ret接口電路http:/ 定時掃描方式就是每隔一段時間對鍵盤掃描一次,它利用單片機(jī)內(nèi)部的定時器產(chǎn)生一定時間(例如10 ms)的定時,當(dāng)定時時間到就產(chǎn)生定時器溢出中斷。cpu響應(yīng)中斷后對鍵盤進(jìn)行掃描,并在有鍵按下時識別出該鍵,再執(zhí)行該鍵的功能程序。http:/ 為提高cpu工作效率,可采用中斷掃描工作方式。其工作過程如下:當(dāng)無鍵按下時,cpu處理自己的工作,當(dāng)有鍵按下
10、時,產(chǎn)生中斷請求,cpu轉(zhuǎn)去執(zhí)行鍵盤掃描子程序,并識別鍵號。p1.0p1.1p1.3p1.2p1.4p1.5p1.6p1.7int08031&http:/ 顯示器接口技術(shù)ledled的結(jié)構(gòu)和顯示原理的結(jié)構(gòu)和顯示原理靜態(tài)顯示方式靜態(tài)顯示方式動態(tài)顯示方式動態(tài)顯示方式動態(tài)顯示的實現(xiàn)動態(tài)顯示的實現(xiàn)動態(tài)顯示方式http:/ ledled顯示器如何顯示出指定數(shù)字顯示器如何顯示出指定數(shù)字/ /字符?字符?comcomhttp:/ p1.0p1.1p1.2p1.3p1.4p1.5p1.6p1.7 p3.3 5v5108例:模擬產(chǎn)品計數(shù)顯示電路例:模擬產(chǎn)品計數(shù)顯示電路http:/ org1000hsta
11、r:movtmod,#60h;定時器t1工作在方式2計數(shù) movth1,#00h ;t1置初值 movtl1,#00hmain:movp1,#0c0h;數(shù)碼管顯示0disp: jb p3.3,disp ;監(jiān)測按鍵信號 acall delay ;消抖延時 jb p3.3,disp ;確認(rèn)低電平信號disp1:jnb p3.3,disp1;監(jiān)測按鍵信號 acall delay ;消抖延時 jnbp3.3,disp1;確認(rèn)高電平信號 setb tr1 ;啟動計數(shù)器http:/ a,tl1 movc a,a+dptr ;查表獲取數(shù)碼管顯示值 movp1,a ;數(shù)碼管顯示計數(shù)值 cjne a,#8eh,
12、disp2 ljmpstartab:0c0h,0f9h,0a4h delay:mov r2,#14hdelay1:mov r3,#0fah djnz r3,$ djnz r2,delay1 ret endhttp:/ 所有l(wèi)ed的位選均共同連接到+vcc或gnd,每個led的8根段選線分別連接一個8位并行i/o口,從該i/o口送出相應(yīng)的字型碼顯示字型。 q特點 原理簡單;顯示亮度強(qiáng),無閃爍;占用i/o資源較多。http:/ 所有l(wèi)ed的段選線共同連接在一起共用一個 8位i/o口,而每個led的位選分別由一根相應(yīng)的i/o口線控制。因此必須采用動態(tài)掃描顯示方式,每一個時刻只選通其中一個led,同時在段選口送出該位led的字型碼。 http:/ 029c e8pb 130r d9pb 231w r10pb 332io/m7pb 433al e11pb 534pb 635pb 736t m r out6pc 037pc 138t m
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司組織晚餐活動方案
- 公司夢想活動方案
- 公司春節(jié)布置活動方案
- 公司組織旅行活動方案
- 公司活動秋游活動方案
- 公司紅酒品鑒活動方案
- 公司歡送儀式活動方案
- 公司系列大講堂活動方案
- 公司母親節(jié)日活動方案
- 公司水餃比賽活動方案
- 2025三方借款中介合同范本
- 2024-2025成都各區(qū)初二年級下冊期末數(shù)學(xué)試卷
- 代加工模具加工合同范文
- 目標(biāo)探測與識別知到智慧樹章節(jié)測試課后答案2024年秋北京航空航天大學(xué)
- 安全附件管理培訓(xùn)
- 寫字樓保安培訓(xùn)資料
- 市政道路施工方案投標(biāo)文件(技術(shù)方案)
- 08SS523建筑小區(qū)塑料排水檢查井
- 瑞得RTS-820系列全站儀說明書(適用RTS-822.822A.822L.822R.822R .822R3)
- 學(xué)生干部培訓(xùn)2024年學(xué)生干部培訓(xùn)方案
- 天津市西青區(qū)2023-2024學(xué)年八年級下學(xué)期期末歷史試卷(解析版)
評論
0/150
提交評論