版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、顯示器與鍵盤控制,鍵盤 單片機(jī)系統(tǒng)中完成控制參數(shù)輸入及修改的基本輸入設(shè)備,是人工干預(yù)系統(tǒng)的重要手段。,單片機(jī)與計算機(jī)在鍵盤規(guī)模/鍵符設(shè)置等方面差別很大。,鍵盤分類 按鍵值編碼方式分 (硬件)編碼鍵盤與非(硬件)編碼鍵盤。 按鍵組連接方式分 獨(dú)立連接鍵盤與矩陣連接鍵盤。,編碼鍵盤: 采用專用的編碼/譯碼器件,被按下的鍵由該器件譯碼輸出相應(yīng)的鍵碼/鍵值。 特點:增加了硬件開銷,編碼因選用器件而異,編碼固定,但編程簡單。適用于規(guī)模大的鍵盤。,非編碼鍵盤: 單片機(jī)系統(tǒng)多采用此類鍵盤 采用軟件編/譯碼的方式,通過掃描,對每個被按下的鍵判別輸出相應(yīng)的鍵碼/鍵值。 特點:不增加硬件開銷,編碼靈活,適用于小規(guī)
2、模的鍵盤,特別是單片機(jī)系統(tǒng)。但編程較復(fù)雜,占CPU時間,還須軟件“消抖”。P.160,按鍵值編碼方式:編碼鍵盤與非編碼鍵盤,按鍵組連接方式:獨(dú)立連接鍵盤與矩陣連接鍵盤,獨(dú)立連接鍵盤: 每鍵相互獨(dú)立,各自與一條I/O線相連,CPU可直接讀取該I/O線的高/低電平狀態(tài)。 特點:占I/O口線多,但判鍵速度快,多用于設(shè)置控制鍵、功能鍵。適用于鍵數(shù)少的場合。,矩陣連接鍵盤: 鍵按矩陣排列,各鍵處于矩陣行/列的 節(jié)點處,CPU通過對連在行(列)的I/O線送已知電平的信號,然后讀取列(行)線的狀態(tài)信息。逐線掃描,得出鍵碼。 特點:鍵多時占用I/O口線少,但判鍵速度慢,多用于設(shè)置數(shù)字鍵。適用于鍵數(shù)多的場合。,
3、獨(dú)立連接式鍵盤,特點: 此子程序采用中斷 查詢不會漏判,省時。 鍵的優(yōu)先級由指令 順序決定。,P1.0P1.1P1.2P1.3,ORG 0003H LJMP KEY KEY: JNB P1.0,FUNC1 ;逐鍵判別 JNB P1.1,FUNC2 JNB P1.2,FUNC3 JNB P1.3,FUNC4 RETI ;無任何鍵按下由此返回 FUNC1: ;做P1.0要求的“功能1” RETI FUNC2: ;做P1.1要求的“功能2” RETI FUNC3: ;做P1.2要求的“功能3” RETI FUNC4: ;做P1.3要求的“功能4” RETI,INT0,向所有列線發(fā)出低電平信號 MOV
4、 DPTR,#0BFFFH MOVX A,DPTR ;輸入行線信號 CPL A ;A不為0則有鍵按下 ANL A,#0FH RET,判斷是否有鍵按下子程序:,K2: MOV R3,#0F7H KEY: MOV DPTR,#8FFFH MOV A,R3 ;使某列為 0 MOVX DPTR,A MOV DPTR,#0BFFFH MOVX A,DPTR ;輸入行線信號 ANL A,#0FH CJNE A,#0FH ,KN1 ;判斷端口3是否得到全“1”信號 MOV A,R3 RL A MOV R3,A ;掃描下一列 CJNE A,#0FEH,KEY CLR 00H;位地址00H=0表示沒有找到鍵值;
5、00H=1,表示找到鍵值。 RET,鍵識別子程序,KN1: XCH A,03H ;得到非全1信號,則表明找到鍵 ANL A,#0F0H ADD A,R3 ;形成特征碼 MOV R2,A MOV R3,#0 LKP: MOV DPTR,#TG MOV A,R3 MOVC A,A+DPTR ;取某鍵的特征碼 CJNE A,02H,NEXT ;與形成特征碼比較 SETB 00H ;找到鍵值,在R3寄存器中 MOV A,R3 RET,NEXT: INC R3 MOV A,R3 CJNE A,#14H,LKP CLR 00H RET TG:DB 0FEH,0FDH,0FBH,0F7H ;特征碼 DB 0
6、EEH,0EDH,0EBH,0E7H DB 0DEH,0DDH,0DBH,0D7H DB 0BEH,0BDH,0BBH,0B7H DB 7EH,7DH,7BH,77H,找到閉合鍵后,讀入相應(yīng)的鍵值,再轉(zhuǎn)至相應(yīng)的鍵處理程序。可以利用鍵的散轉(zhuǎn)程序?qū)崿F(xiàn)相應(yīng)的鍵處理程序。鍵的轉(zhuǎn)移首地址在DPTR 中。常用的程序段如下: MOV DPTR,#TBB MOV A,R3 ;取鍵值 RL A JMP A + DPTR TBB:AJMP KK1 AJMP KK2 AJMP KK20,LED顯示器的擴(kuò)展(結(jié)構(gòu)),LED數(shù)碼管的結(jié)構(gòu):共陽與共陰, 單片機(jī)系統(tǒng)擴(kuò)展LED數(shù)碼管時多用共陽LED: 共陽數(shù)碼管每個段筆畫是
7、用低電平(“0”)點亮的,要求驅(qū)動功率很??;而共陰數(shù)碼管段筆畫是用高電平(“0”)點亮的,要求驅(qū)動功率較大。 通常每個段筆畫要串一個數(shù)百歐姆的降壓電阻。,公共陽極,h g f e d c b a,a,b,c,d,g,e,f,h,公共陰極,h g f e d c b a,a,b,c,d,g,e,f,h,h g f a,h g f a,高電平點亮,低電平點亮,接高電平,接地,LED數(shù)碼管的譯碼:硬件譯碼與軟件譯碼,硬件譯碼特點:采用專用的譯碼/驅(qū)動器件,驅(qū)動功 率較大;增加了硬件的開銷;軟件編程簡單;字型固 定(比如:只有七段,只可譯數(shù)字,字型不好看)。,共陰LED,a,b,c,d,g,e,f,h
8、,gfedcb a,DCBA,P1.3P1.2P1.1P1.0,CD4511,AT89C51,74LS48/CD4511是“BCD碼七段共陰譯碼/驅(qū)動”IC; 74LS47是“BCD碼七段共陽譯碼/驅(qū)動”IC,LED顯示器的擴(kuò)展(結(jié)構(gòu)),LED顯示器的擴(kuò)展(軟件譯碼),LED數(shù)碼管的譯碼:軟件譯碼,軟件譯碼特點: 不用專用的譯碼/驅(qū)動器件,驅(qū)動功率較??;不增加硬件的開銷;軟件編程較復(fù)雜;字型靈活(比如:有八段,可譯多種字符,字型好看)。,共陽LED,a,b,c,d,g,e,f,h,P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7,+5V,AT89C51,硬件譯碼特點: 采用專用
9、譯碼/驅(qū)動器件,驅(qū)動功率較大;增加了硬件的開銷;軟件編程簡單;字型固定(比如:只可譯數(shù)字,字型不好看)。,LED數(shù)碼管的軟件譯碼,LED數(shù)碼管段代碼編碼表(連線不同可有多種表):,公共陽極,h g f e d c b a,a,b,c,d,g,e,f,h,公共陰極,h g f e d c b a,a,b,c,d,g,e,f,h,h g f a,h g f a,高電平點亮,低電平點亮,接高電平,接地,LED顯示器的擴(kuò)展(顯示方式),LED數(shù)碼管的顯示方式:靜態(tài)與動態(tài),動態(tài)顯示特點: 有閃爍,用元器件少,占I/O線少,必須掃描,花費(fèi)CPU時間,編程復(fù)雜。(有多個LED時尤為突出),靜態(tài)顯示特點: 無
10、閃爍,用元器件多,占I/O線多,無須掃描,節(jié)省CPU時間,編程簡單。,靜態(tài)顯示: 各數(shù)碼管在顯示過程中持續(xù)得到送顯信號,與各數(shù)碼管接口的I/O口線是專用的。,動態(tài)顯示: 各數(shù)碼管在顯示過程中輪流得到送顯信號,與各數(shù)碼管接口的I/O口線是共用的。,AB,CLK,h g f e d c b a,CLR,AB,CLK,CLR,AB,CLK,CLR,+5V,VCC,TxD,RxD,89C51單片機(jī),74LS164,74LS164,74LS164,h g f e d c b a,h g f e d c b a,+5V,共陽LED數(shù)碼管,LED數(shù)碼管靜態(tài)顯示舉例,有幾個LED就要幾個74LS164,但只要
11、數(shù)據(jù)不變, 送一次就保持住了,且不閃爍,編程十分簡單。,要求:根據(jù)上圖編寫通過串行口和74LS164驅(qū)動共 陽LED數(shù)碼管查表顯示的子程序。 條件:系統(tǒng)有6個LED數(shù)碼管,待顯數(shù)據(jù)(00H09H)已放在35H30H單元中(分別對應(yīng)十萬位個位),,DSPLY:MOV DPTR, #TABLE ;共陽LED數(shù)碼管譯碼表首址 MOV R0,#30H ;待顯數(shù)據(jù)緩沖區(qū)的個位地址 REDO:MOV A, R0 ;通過R0實現(xiàn)寄存器間接尋址 MOVC A, A+DPTR ;查表 MOV SBUF, A ;經(jīng)串行口發(fā)送到74LS164 JNB TI, $ ;查詢送完一個字節(jié)的第8位? CLR TI ;為下一
12、字節(jié)發(fā)送作準(zhǔn)備 INC R0 ;R0指向下一個數(shù)據(jù)緩沖單元 CJNE R0,#36H,REDO ;判斷是否發(fā)完6個數(shù)? RET ;發(fā)完6個數(shù)就返回 TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H ;共陽LED譯碼表 DB 92H, 82H, 0F8H, 80H,90H,LED數(shù)碼管動態(tài)顯示舉例,P1.5 P1.4P1.3P1.2P1.2P1.0,P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0,7406 OC門 X 3,上拉電阻14,+5V,AT89C51,工作原理:從P0口送段代碼,P1口送位選信號。段碼雖同時到達(dá) 6個LED,但一次僅一個LE
13、D被選中。利用“視覺暫留”,每送一個字符并選中相應(yīng)位線,延時一會兒,再送/選下一個循環(huán)掃描即可。,共陰 數(shù)碼管,位選線,段代碼,要求:此處為共陰數(shù)碼管,P0口送段代碼,P1口送位選信號。通過查表實現(xiàn)動態(tài)顯示。 條件:待顯數(shù)據(jù)(00H09H)已放在: 7FH7AH單元中(分別對應(yīng)十萬位個位) 說明:由于用了反相驅(qū)動器7406,要用共陽譯碼表。,7406 OC門 X 3,+5V,(7FH) (7EH) (7DH) (7CH) (7BH) (7AH) 十萬 萬位 千位 百位 十位 個位,數(shù)據(jù)緩沖區(qū) / 顯示緩沖區(qū),P0口送段代碼,P1口送位選信號。 待顯數(shù)據(jù)已經(jīng)放在: 7FH7AH單元(分別對應(yīng)十萬
14、位個位) 使用共陽譯碼表。,DIR: MOV DPTR, #DSEG ;數(shù)碼管譯碼表首址 MOV R0,#7AH ;待顯緩沖區(qū)個位地址 MOV R3,#01H ;個位的位選信號=01H LD1: MOV A, R0 ;通過R0間接尋址 MOVC A, A+DPTR ;查表 MOV P0, A ;字段碼送到P0口 MOV P1,R3 ;字位選擇送到P1口 LCALL DELY ;調(diào)延時1ms子程序 MOV P0,#00H INC R0 ;R0 指向下一字節(jié) MOV A,R3 JB ACC.5,LD2 ;判是否發(fā)完6個數(shù)? RL A ;R1指向下一個位 MOV R3,A ;位選信號存回R3 SJM
15、P LD1 ;跳去再顯示下一個數(shù) LD2: RET ;發(fā)完6個數(shù)就返回 DSEG:DB 0C0H,0F9H,0A4H,0B0H,99H;共陽譯碼表 DB 92H, 82H, 0F8H, 80H,90H,動態(tài)顯示舉例 (循環(huán)顯示“1234”的實驗),ORG 0000H MAIN: MOV R0, #01H MOV R1, #04 MOV R2,#00 MOV DPTR,#TAB LOOP: MOV A, R2 MOVC A, A+DPTR MOV P0,A MOV P1, R0 LCALL DELAY MOV P0,#0FFH INC R2 MOV A,R0 RL A,MOV R0,A DJNZ
16、 R1,LOOP SJMP MAIN DELAY: MOV R3,#50 LL: MOV R4,#100 DJNZ R4,$ DJNZ R3,LL RET ORG 0100H TAB: DB 0F9H,0A4H,0B0H,99H END,實例演示,99秒馬表,74LS47,ORG 0000H START:ANL P2,#00H ;顯示00 JB P3.5,$ ; T1=0?有鍵按下 LCALL DELAY1 ; 消除抖動 JNB P3.5,$ ; T1=1?放開 MOV R0,#00 ; 計時指針初值 L1: MOV A,R0 ; 計時指針載入ACC MOV P2,A ; 輸出至P2顯示 MOV R5,#10 ;延時1秒 A1: MOV R6,#200 LCALL DELAY DJNZ R5,A1 MOV A,R0 ;計時指針加1 ADD A,#01H DA A ; 做十進(jìn)制調(diào)整 MOV R0,A ;存回寄時指針寄存器 SJMP L1 ; 重復(fù)計時,L2: LCALL DELAY1 ;第二次按鍵消除抖
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 某著名企業(yè)實施人力資源戰(zhàn)略創(chuàng)造持續(xù)佳績003
- 《GBT 22265-2008 直接作用模擬指示最大需量電流表》專題研究報告
- 道路安全教育培訓(xùn)內(nèi)容課件
- 道路安全培訓(xùn)演講稿課件
- 道路交通安全警示課件
- 2025-2026年西師版九年級語文上冊期末試卷含答案
- 道教消防安全培訓(xùn)課件
- 2026年度醫(yī)保政策法規(guī)考試試題答案+解析
- 2026年甘肅省蘭州市輔警考試題庫含答案
- 2025體外循環(huán)心臟手術(shù)中的細(xì)胞因子吸附器應(yīng)用指南課件
- 2025年公司押運(yùn)年終總結(jié)樣本(五篇)
- 2025屆央國企校招筆試真題及答案
- 2025年新蘇教版七上生物知識點歸納
- 鋁單板幕墻施工工藝與鋁單板幕墻施工方案
- 2025教育機(jī)構(gòu)全職教師勞動合同(示范文本)
- 安全協(xié)議責(zé)任書模板
- 卵巢顆粒細(xì)胞瘤的診治進(jìn)展2025
- 2025甘肅慶陽正寧縣公安局招聘警務(wù)輔助人員40人考試參考試題及答案解析
- 新一代能源管理系統(tǒng)建設(shè)方案
- 小型手持式采茶機(jī)
- 人工智能與終身學(xué)習(xí)體系構(gòu)建研究報告
評論
0/150
提交評論