版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、接口與通訊技術(shù)武漢科技大學(xué)計算機科學(xué)與技術(shù)學(xué)院,第13章 基本人機交互設(shè)備接口,本章內(nèi)容13.1 鍵盤接口13.2 LED數(shù)碼顯示器接口13.3 可編程鍵盤/LED接口芯片82C79A13.4 打印機接口,13.1 鍵盤接口,13.1.1 鍵盤的類型1. 按鍵的種類——機械式、電容式、導(dǎo)電橡膠式、薄膜式2. 鍵盤的結(jié)構(gòu)線性鍵盤:每個按鍵直接與微機接口相連;按鍵少時適用矩陣鍵盤:可減少與微機接口的連線數(shù)目矩
2、陣鍵盤的識鍵和譯鍵方法——非編碼鍵盤、編碼鍵盤編碼鍵盤:內(nèi)部設(shè)有鍵盤編碼器,能識鍵、生成鍵碼、去抖動、防串鍵;硬件電路復(fù)雜非編碼鍵盤:只提供鍵盤矩陣,按鍵的識別、鍵碼的提供都由軟件來完成;結(jié)構(gòu)簡單,成本低,13.1.2 鍵盤的結(jié)構(gòu)與工作原理——非編碼鍵盤,1. 線性鍵盤的結(jié)構(gòu)與工作原理硬件接口:,13.1.2 鍵盤的結(jié)構(gòu)與工作原理——非編碼鍵盤,1. 線性鍵盤的結(jié)構(gòu)與工作原理軟件編程:①查詢是否有鍵按下②確定按下的鍵,執(zhí)行服務(wù)
3、例如:按下S0報警;按下S1解除報警;按下S2退出,線性鍵盤的匯編語言程序,MOV DX,303HMOV AL,90HOUT DX,AL;82C55A初始化KB:MOV DX,300HIN AL,DXAND AL,07HJZ KB;檢查3個鍵是否有鍵按下CALL DELAY;延時去抖動MOV DX,300HIN AL,DXAND AL,07HJZ KB;再次檢查是否按鍵
4、CMP AL,01HJZ BJ;按下S0CMP AL,02HJZ JBJ;按下S1CMP AL,04HJZ STP;按下S2JMP KBDELAY:延時子程序(略)BJ:報警處理(略)JBJ:解除報警處理(略)STP:MOV AX,4C00HINT 21H,13.1.2 鍵盤的結(jié)構(gòu)與工作原理——非編碼鍵盤,2. 矩陣鍵盤的結(jié)構(gòu)與工作原理行掃描方式:列線一端接輸入端口,另一端
5、接高電平;行線接輸出端口;輪流對行線輸出低電平,從列線讀掃描結(jié)果列掃描方式:行線一端接輸入端口,另一端接高電平;列線接輸出端口;輪流對列線輸出低電平,從行線讀掃描結(jié)果工作原理(以列掃描為例):,13.1.3 鍵盤接口設(shè)計,例13.1 設(shè)計一個采用行掃描方式的3?4非編碼鍵盤接口硬件設(shè)計:采用82C55A作為接口芯片,PA輸出,PB輸入,行掃描方式3?4非 編碼鍵盤的軟件設(shè)計,行掃描方式識鍵和譯鍵的步驟:①判斷是否有鍵按下②去抖
6、動——延時10?20ms③找到被按下的鍵④根據(jù)鍵號進行處理,行掃描方式3?4非 編碼鍵盤查找按鍵的匯編程序,MOV DX,303HMOV AL,82HOUT DX,AL;82C55A初始化;檢查是否有鍵按下BEGIN:MOV DX,300HMOV AL,00HOUT DX,AL;令所有行線為0WAIT1:MOV DX,301HIN AL,DXAND AL,0FHCMP AL,0FH;讀
7、列線,判斷是否按鍵JZ WAIT1;無按鍵,等待MOV CX,7FFHL0:LOOP L0;延時去抖動;識別哪一個鍵被按下ST:MOV BL,3;設(shè)置行數(shù)MOV AH,4;設(shè)置列數(shù)MOV AL,0FEH;起始行掃描碼(0行開始)MOV CL,0FH;列線屏蔽碼(只查低4位)MOV CH,0FFH;起始鍵號(-1的補碼),L1:MOV DX,300HOUT DX,AL;掃描
8、一行ROL AL,1MOV AH,ALMOV DX,301HIN AL,DXAND AL,CLCMP AL,CL;是否有列線為0JNZ L2ADD CH,BH;無,修改鍵號指向改行末列鍵號MOV AL,AHDEC BL;行數(shù)減1JNZ L1JMP BEGINL2:INC CH;鍵號加1,指向本行首列鍵號RCR AL,1;右移1位,檢測一列JC L2MOV
9、 AL,CH;該列為0,鍵號送ALJMP KeyTable;轉(zhuǎn)去查找鍵盤編碼表,獲取鍵碼;或者直接轉(zhuǎn)向按鍵相應(yīng)的子程序去執(zhí)行相關(guān)操作,13.2 LED數(shù)碼顯示器接口,13.2.1 LED顯示器的結(jié)構(gòu)與工作原理,13.2 LED數(shù)碼顯示器接口,13.2.2 LED顯示器的字形碼(段碼)——采用不同的段進行組合來表示字符形狀的數(shù)據(jù),13.2.3 LED顯示器的顯示方式靜態(tài)顯示: 構(gòu)成字符的發(fā)光二極管總處于點亮狀態(tài)動態(tài)
10、顯示:用掃描方式使多位顯示器逐位輪流循環(huán)顯示,13.3 可編程鍵盤/LED接口芯片82C79A,輸入:掃描鍵盤、掃描傳感器、選通輸入方式輸出:8段LED顯示器接口,8個或16個,左(右)入口13.3.1 82C79A的外部特性(40腳)1. 面向CPU的信號線(15)D0~7、CS、RD、WRCLK:系統(tǒng)時鐘,為82C79A提供內(nèi)部定時RESET:復(fù)位,高有效;復(fù)位后為16個字符顯示(左進方式),編碼掃描鍵盤(雙鍵鎖定)
11、,時鐘設(shè)置為31A0:端口選擇;A0=0數(shù)據(jù)寄存器,A0=1命令/狀態(tài)寄存器IRQ:中斷申請,高有效;通常鍵盤有數(shù)據(jù)輸入時有效,,,,13.3 可編程鍵盤/LED接口芯片82C79A,13.3.1 82C79A的外部特性(40腳)2. 面向鍵盤的信號線(14)SL0~SL3:矩陣鍵盤的行掃描線,可編程為編碼輸出/譯碼輸出RL0~RL7:返回線,用作鍵盤矩陣的列線值返回SHIFT:移位信號,高有效,用于擴充鍵功能,上/下檔
12、鍵CNTL/STB:控制線,高有效;用于擴充鍵的控制功能,功能鍵3. 面向顯示器的信號線(9)SL0~SL3(與鍵盤共用):字符顯示器的位掃描線,可編程為左進/右進OUTA0~OUTA3、OUTB0~OUTB3、A、B組顯示輸出線,兩組可獨立或合并使用;輸出與SL0~3同步,實現(xiàn)按位分時顯示BD:顯示消隱,低有效;顯示切換或執(zhí)行消隱命令時有效,,13.3.2 82C79A的內(nèi)部寄存器,,13.3.2 82C79A的內(nèi)部寄存
13、器,1. 顯示器/鍵盤共享的模塊(1)掃描計數(shù)器:4位的計數(shù)器,可編程為譯碼/編碼方式譯碼掃描:最低兩位經(jīng)譯碼,由SL0~3輸出,作為鍵盤及顯示器的掃描信號(任何時刻SL0~3只有一個有效,實現(xiàn)4選1)編碼掃描:計數(shù)器的狀態(tài)由SL0~3直接輸出,再經(jīng)外部譯碼,才能作為掃描信號(實現(xiàn)16選1)(2)定時控制:將外部時鐘CLK分頻為內(nèi)部要求的100KHz2. LED顯示器接口模塊(1)顯示存儲器RAM:16×8位,存儲
14、16個數(shù)碼顯示器的數(shù)據(jù)(2)顯示字符寄存器:存放要顯示的字符,顯示過程中與顯示掃描配合,輪流從顯示RAM中讀出顯示信息輸出(3)顯示地址寄存器:讀/寫顯示RAM的地址指針;可由命令直接設(shè)定,或設(shè)置為每次讀/寫后自動加1,13.3.2 82C79A的內(nèi)部寄存器,3. 鍵盤接口模塊(1)返回緩沖器:緩沖并鎖存回復(fù)信號RL0~7的狀態(tài);與CNTL、SHIFT一起構(gòu)成完整的鍵盤按鍵數(shù)據(jù)(2)鍵盤去抖動:實現(xiàn)對鍵盤輸入的去抖動
15、(3)FIFO RAM及狀態(tài)寄存器FIFO RAM:8×8位,鍵盤輸入方式暫存鍵盤輸入數(shù)據(jù)FIFO RAM狀態(tài)寄存器:寄存FIFO RAM的工作狀態(tài),F(xiàn)IFO RAM不空時,會使IRQ變高,82C79A的數(shù)據(jù)輸入/輸出方式,輸入方式鍵盤輸入(鍵掃描)、傳感器掃描、選通輸入鍵掃描:按下一個鍵時形成鍵盤數(shù)據(jù),送入FIFO RAM并產(chǎn)生IRQ(數(shù)據(jù)讀出后撤除) 傳感器掃描:FIFO RAM中8個單元用于寄存?zhèn)鞲衅鞯默F(xiàn)時狀態(tài)
16、,地址編號與掃描線順序一致,傳感器陣列(最多為8×8位)中某一位狀態(tài)發(fā)生變化時,產(chǎn)生IRQ選通輸入:與82C55A選通輸入端口功能相同,CNTL/STB作為選通信號,上升沿將RL0~7鎖存到FIFO RAM輸出方式8字符左入口、16字符左入口、8字符右入口、16字符右入口左入口:顯示器位置編號與顯示RAM地址一一對應(yīng)(0號單元顯示在0號顯示器上),顯示時從最左位開始右入口(計算機顯示方式):最高位從最右邊顯示器進入,
17、以后逐次左移,13.3.3 82C79A的編程模型,數(shù)據(jù)端口30CH ,命令/狀態(tài)端口30DH1. 命令字——8個,最高3位為特征位,0?2、4號命令使用最多,13.3.3 82C79A的編程模型,1. 命令字(1)0號命令 :設(shè)置鍵盤及顯示方式K0:設(shè)置掃描方式;K0=0編碼掃描,K0=1譯碼掃描K2K1 :設(shè)置輸入方式(其中4種為鍵盤輸入)DD :設(shè)置顯示輸出方式,13.3.3 82C79A的編程模型,1. 命令
18、字(2)1號命令 :設(shè)置掃描頻率PPPPP:設(shè)置對外部輸入CLK的分頻系數(shù)N(2?31)以獲得100KHz(3)2號命令 :讀FIFO RAM的設(shè)置A2?A0 :指定讀取鍵盤FIFO RAM中字符的起始地址AI :地址自動增量標(biāo)志;AI=1每次讀出后地址自動加1,13.3.3 82C79A的編程模型,1. 命令字(4)4號命令 :寫顯示RAM的設(shè)置A3?A0 :指定寫顯示RAM中字符的起始地址AI :
19、地址自動增量標(biāo)志;AI=1每次寫入后地址自動加1,13.3.3 82C79A的編程模型,2. 狀態(tài)字——指示FIFO RAM中待取走的字符數(shù)和有無錯誤發(fā)生DU:顯示無效標(biāo)志,執(zhí)行顯示RAM清除命令時為1S/E:傳感信號結(jié)束/特殊錯誤方式標(biāo)志;鍵盤輸入方式下作特殊錯誤標(biāo)志,S/E=1:多鍵同時按下O:超出標(biāo)志,向已滿的FIFO RAM寫入時置1U:“空”標(biāo)志,從已空的FIFO RAM讀出時置1F:“滿”標(biāo)志,F(xiàn)IFO
20、RAM中的字符數(shù)為8時置1N2N1N0:FIFO RAM中待取走的字符個數(shù),13.3.4 鍵盤/數(shù)碼顯示器接口設(shè)計,例13.2 設(shè)計一個8位LED顯示器接口,要求從0位開始顯示13579H六個字符,顯示方式為左進,采用編碼掃描硬件設(shè)計:接口由82C79A芯片、掃描譯碼器7445和段驅(qū)動器7406組成82C79A:核心,負(fù)責(zé)LED與CPU的連接、執(zhí)行控制命令7445:負(fù)責(zé)LED顯示器的動態(tài)掃描,產(chǎn)生位控信號7406:為LED
21、的8段字形碼提供電流驅(qū)動,13.3.4 鍵盤/數(shù)碼顯示器接口設(shè)計,例13.2 軟件設(shè)計——從0位開始顯示13579H六個字符,六個字符的共陰極字形碼存于BUF存儲區(qū)CODESEGMENTASSUME CS:CODE,DS:CODE ORG 100HBEGIN:JMP START BUF DB 06H,4FH,6DH,07H,67H,76HSTART:MOV AX,CODEMOV DS,AX
22、;82C79A初始化MOV DX,30DHMOV AL,00H;方式命令字OUT DX,ALMOV AL,39H;設(shè)置分頻系數(shù)OUT DX,ALMOV AL,90H;設(shè)置寫顯示RAM地址OUT DX,AL,MOV SI,OFFSET BUFMOV CX,6;顯示器顯示字符L:MOV DX,30CHMOV AL,[SI]OUT DX,ALINC SIDEC CX
23、JNZ LMOV AX,4C00HINT 21HCODEENDSEND BEGIN,,13.3.4 鍵盤/數(shù)碼顯示器接口設(shè)計,例13.3 設(shè)計一個鍵盤及LED雙功能接口,連接24鍵的鍵盤和8個共陽極數(shù)碼顯示器。鍵盤采用編碼掃描、雙鍵鎖定;顯示器采用編碼掃描、右進方式。外部時鐘CLK=2.5MHz。要求從鍵盤讀取10個字符代碼;在顯示器上從0位開始顯示“HELLO”五個字符硬件設(shè)計:,13.3.4 鍵盤/數(shù)碼顯
24、示器接口設(shè)計,例13.3 軟件設(shè)計①鍵盤輸入程序段CODESEGMENTASSUME CS:CODE,DS:CODE ORG 100HBEGIN:JMP START BUF DB 10 DUP(0)START:MOV AX,CODEMOV DS,AX;82C79A初始化MOV DX,30DHMOV AL,00H;方式命令字OUT DX,ALMOV AL,39H
25、;設(shè)置分頻系數(shù)OUT DX,ALMOV DI,OFFSET BUFMOV CX,10,;讀狀態(tài)字LOOP1:MOV DX,30DHIN AL,DXTEST AL,07HJZ LP1;設(shè)置讀出地址MOV AL,40HOUT DX,ALMOV DX,30CHIN AL,DX;讀數(shù)據(jù)MOV [DI],ALINC DIDEC CXJNZ LOOP1MOV AX,4
26、C00HINT 21HCODEENDSEND BEGIN,,13.3.4 鍵盤/數(shù)碼顯示器接口設(shè)計,例13.3 軟件設(shè)計①顯示器輸出程序段CODESEGMENTASSUME CS:CODE,DS:CODE ORG 100HBEGIN:JMP START BUF DB FH,38H,38H,79H,76HSTART:MOV AX,CODEMOV DS,AX;82C79A初始化
27、MOV DX,30DHMOV AL,10H;方式命令字OUT DX,ALMOV AL,39H;設(shè)置分頻系數(shù)OUT DX,ALMOV AL,90H;設(shè)置寫顯示RAM地址OUT DX,AL,MOV SI,OFFSET BUFMOV CX,5;顯示器顯示字符L:MOV DX,30CHMOV AL,[SI]OUT DX,ALINC SIDEC CXJNZ LMO
28、V AX,4C00HINT 21HCODEENDSEND BEGIN,,13.4 打印機接口,13.4.1 并行打印機接口標(biāo)準(zhǔn)(Centronics標(biāo)準(zhǔn),8位并行)1. 信號線定義,,,,,,,13.4 打印機接口,13.4.1 并行打印機接口標(biāo)準(zhǔn)2. 工作時序打印機與CPU采用查詢方式傳送數(shù)據(jù)的步驟:①CPU查詢BUSY,BUSY=1則等待;BUSY=0送數(shù)②CPU通過并口把數(shù)據(jù)送到DATA0?DA
29、TA7上③CPU給STROBE送一個負(fù)脈沖,將數(shù)據(jù)打入打印機內(nèi)部緩沖器④打印機收到數(shù)據(jù),置BUSY=1,直到處理完置BUSY=0⑤打印機送一個ACK(負(fù)脈沖)信號給主機——可用于中斷方式,,,13.4 打印機接口,13.4.1 并行打印機接口標(biāo)準(zhǔn)3. 打印機連接器(D-36芯插頭/插座)——與IBM-PC配置的打印機接口D-25不兼容打印機與PC機并口信號的連接,13.4 打印機接口,13.4.2 并行打印機接口設(shè)計例
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第8章人機交互設(shè)計
- 人機交互設(shè)計課程報告---談人機交互技術(shù)
- 移動設(shè)備中的人機交互設(shè)計研究.pdf
- 醫(yī)療設(shè)備界面的人機交互設(shè)計研究.pdf
- 人機交互設(shè)計界面問題研究.pdf
- 34124.中國盲文人機交互設(shè)備的設(shè)計與研究
- 移動學(xué)習(xí)人機交互設(shè)計研究【開題報告】
- 變電站智能電子設(shè)備通信和人機交互設(shè)計.pdf
- 自動售貨機人機交互設(shè)計研究.pdf
- 老人手機的人機交互設(shè)計研究.pdf
- 移動學(xué)習(xí)人機交互設(shè)計研究【畢業(yè)設(shè)計】
- 化學(xué)虛擬實驗的人機交互設(shè)計與研究.pdf
- 面向個人健康信息采集的人機交互設(shè)計.pdf
- 情感計算及其在人機交互設(shè)計中的應(yīng)用
- 電動車充電裝置的人機交互設(shè)計研究.pdf
- 地鐵自動售票機的人機交互設(shè)計研究.pdf
- 電子紙手持閱讀器人機交互設(shè)計實現(xiàn).pdf
- 面向航空MRO軟件系統(tǒng)的人機交互設(shè)計研究.pdf
- 基于2.4g無線通訊技術(shù)的多功能人機交互設(shè)備研究
- 基于WN6102的無線人機交互設(shè)備開發(fā)平臺的設(shè)計與實現(xiàn).pdf
評論
0/150
提交評論