《單片機原理及應(yīng)用》第八章單片機的人機接口.ppt
《《單片機原理及應(yīng)用》第八章單片機的人機接口.ppt》由會員分享,可在線閱讀,更多相關(guān)《《單片機原理及應(yīng)用》第八章單片機的人機接口.ppt(36頁珍藏版)》請在裝配圖網(wǎng)上搜索。
第八章單片機的人機接口,鍵盤接口LED顯示器接口LCD顯示器接口8279專用鍵盤顯示器,第八章單片機的人機接口,8.1鍵盤接口8.1.1鍵盤的工作原理和掃描方式鍵盤的結(jié)構(gòu):1、獨立式鍵盤,第八章單片機的人機接口,2、矩陣式鍵盤,第八章單片機的人機接口,3種鍵盤掃描方式1、程序控制掃描方式——在主程序中用一段專門的掃描和讀鍵程序來檢查有無鍵按下,并確定鍵值。2、定時掃描方式——利用單片機內(nèi)的定時器來產(chǎn)生定時中斷,然后在定時中斷的服務(wù)程序中掃描和讀鍵,檢查有無鍵按下,并確定鍵值。3、中斷掃描方式——當(dāng)有鍵按下時由相應(yīng)的硬件電路產(chǎn)生中斷信號,單片機在中斷服務(wù)程序中掃描和讀鍵,再次檢查有無鍵按下,并確定鍵值。,第八章單片機的人機接口,用8255實現(xiàn)的鍵盤接口電路,鍵盤處理程序的步驟判斷鍵盤中有無鍵按下。單片機先使8255A的A口的各位PA0~PA3均為低電平,再讀C口(PC0~PC3)。若C口的各位不全為高電平,則表示有鍵按下。消除抖動。先延時10ms,然后再讀C口,此時,若C口各位仍不全為高電平,說明確實有鍵按下。,第八章單片機的人機接口,第八章單片機的人機接口,求鍵號。過程如下:先置PA0=0,PA1~PA3均為1,再讀C口,由C口低電平的位置便可確定按下鍵的位置。例如,若在PA0=0時PC0=0,那么是0號鍵按下。鍵碼值高4位是鍵所在行號,低4位是鍵所在列的號碼。,第八章單片機的人機接口,8.1.3鍵盤輸入程序設(shè)計方法掃描與讀鍵程序:(1.判斷有無鍵按下子程序)JUDGE:MOVDPTR,#0FFDDH;8255A口地址MOVA,#00HMOVX@DPTR,A;A口輸出低電平INCDPTRINCDPTRMOVXA,@DPTR;從C口讀數(shù)據(jù)CPLAANLA,#0FH;取低四位RET,第八章單片機的人機接口,(2.讀鍵程序)KEY1:ACALLJUDGE;看有否鍵按下JNZLK1;有鍵按下,跳轉(zhuǎn)至按鍵處理ACALLDELAYAJMPKEY1;無鍵則延時后再掃描LK1:ACALLDELAY;延時去抖動JNZLK2;再次判斷有無鍵ACALLDELAYALMPKEY1;無鍵則延時后再掃描LK2:MOVR2,#0EH;掃描列線MOVR4,#00H;列號LK3:MOVDPTR,#0FFDDHMOVA,R2MOVX@DPTR,A;送0EH至A口INCDPTRINCDPTRMOVXA,@DPTR;從C口讀入,第八章單片機的人機接口,JBACC.0,LINE1;第0行為1表示無鍵,則轉(zhuǎn)1行MOVA,#00HAJMPLKPLINE1:JBACC.1,LINE2;第1行為1表示無鍵,則轉(zhuǎn)2行MOVA,#04HAJMPLKPLINE2:JBACC.2,LINE3;第2行為1表示無鍵,則轉(zhuǎn)3行MOVA,#08HAJMPLKPLINE3:JBACC.3,NEXT;第3行為1表示無鍵,則轉(zhuǎn)NEXTMOVA,#0CHLKP:ADDA,R4PUSHACCNT:ACALLDELAYACALLJUDGEJNZNTPOPACC,第八章單片機的人機接口,RETNEXT:INCR4MOVA,R2JNBACC.3,KND;判斷整個44鍵盤是否掃描結(jié)束RLAMOVR2,A;掃描下一列AJMPLK3KND:AJMPKEY1,第八章單片機的人機接口,8.2LED顯示器接口LED顯示器是由發(fā)光二極管構(gòu)成的字段組成的顯示器分類:8段和16段LED顯示器連接方法:共陰極和共陽極,第八章單片機的人機接口,字型碼表:通過字符查到相應(yīng)的字型碼。排列順序:dp/g/f/e/d/c/b/a例如“0”的字型碼,共陰極為3FH,共陽極為0C0H,第八章單片機的人機接口,LED顯示器的工作原理靜態(tài)顯示——需要顯示的字符的各字段連續(xù)通電,所顯示的字段連續(xù)發(fā)光。動態(tài)顯示——所需顯示字段斷續(xù)通以電流,在需要多個字符同時顯示時,可以輪流給每一個字符通以電流,逐次把所需顯示的字符顯示出來。,第八章單片機的人機接口,1.靜態(tài)顯示電路1)、本身的靜態(tài)端口(P1口)或擴展的I/O端口直接與LED電路連接;2)、利用本身的串行端口TXD和RXD與LED電路連接(讓串行接口工作在方式0:RXD-串行I/O、TXD-移位脈沖)。,第八章單片機的人機接口,1.靜態(tài)顯示程序DIR:SETBP3.3MOVR7,#08H;循環(huán)次數(shù)為8次MOVR0,#6FH;先送最后一個顯示字符DI0:MOVA,@R0;取顯示的數(shù)據(jù)ADDA,#e;加上字形碼表的偏移量MOVCA,@A+PC;取字形碼MOVSBUF,A;送出顯示DI1:JNBTI,DIl;查詢輸出完否?CLRTIDECR0DJNZR7,DI0CLRP3.3RET,第八章單片機的人機接口,TBT:DB0COH,0F9H,0A4HTBLl:DB0BOH,99H,92HTBL2:DB82H,0F8H,80HTBL3:DB90H,00H,00H,第八章單片機的人機接口,2.動態(tài)顯示電路,第八章單片機的人機接口,2.動態(tài)顯示程序DIR:MOVR0,#6AH;顯示緩沖區(qū)首地址送R0MOVR3,#01H;指向最右位MOVA,R3DIO:MOVDPTR,#0101H;DPTR指向8155PA口MOVX@DPTR,AINCDPTRMOVA,@R0ADDA,#12H;加上字形碼表的偏移量MOVCA,@A+PCMOVX@DPTR,AACALI,DELAY1;調(diào)1ms子程序INCR0MOVA,R3JBACC.6,DI1;查6個顯示位掃完否?RLAMOVR3,AAJMPDI0DI1:RET,第八章單片機的人機接口,CODE:DB3FH,06H,5BH,4FH,66H,6DHDB7DH,07H,7FH,6FH,77H,7CHDB39H,5EH,79H,71H,73H,3EHDB31H,6EH,1CH,23H,40H,03HDB18H,00H,00H,00H;共陰極段碼表ENDDELAY1:MOVR7,#02H;延時1msDE1:MOVR6,#0FFHDE2:DJNZR6,DE2DJNZR7,DE1RET,第八章單片機的人機接口,8.3LCD顯示器接口用液晶制成的顯示器是一種被動式顯示器件,液晶本身并不發(fā)光,而是借助自然光或外來光源顯示數(shù)碼。,第八章單片機的人機接口,8.3.2LCD顯示器的接口電路和顯示程序設(shè)計1、LCD顯示器的接口電路SED1335特點:(1)有較強功能的I/O緩沖器;(2)指令功能豐富;(3)四位數(shù)據(jù)并行發(fā)送,最大驅(qū)動能力為640256點陣。,第八章單片機的人機接口,,SED1335的電路原理圖,第八章單片機的人機接口,8.48279專用鍵盤顯示器功能:①接收來自鍵盤的輸入數(shù)據(jù),并作預(yù)處理;②數(shù)據(jù)顯示的管理和數(shù)據(jù)顯示器的控制。內(nèi)部資源:①168顯示數(shù)據(jù)RAM,每個單元寄存1個字符的8位顯示代碼,能將16個數(shù)據(jù)分時送到16個顯示器并顯示出來。②為顯示數(shù)據(jù)RAM輸出同步掃描信號。通過命令字可選擇顯示器的4種工作方式即左端入、右端輸入、8位字符顯示、16位字符顯示。③8個字節(jié)的鍵盤FIFO的RAM(先入先出堆棧),每按一次鍵8279便自動進行編碼,并送FIFORAM中。,第八章單片機的人機接口,,8279的內(nèi)部原理圖,第八章單片機的人機接口,8.4.28279的引腳分析1.輸出輸入信號DB0一DB7:雙向數(shù)據(jù)總線,用于傳送命令字和數(shù)據(jù)。RL0一RL7:鍵盤回送線,當(dāng)某一個鍵閉合時變低電平,在選通輸入方式下,這些輸入端亦可用作8位輸入線;SL0—SL3(掃描線):輸出為鍵盤掃描線及顯示位控輸出線;OUTAO~OUTA3,OUTB0~OUTB3:顯示寄存器輸出線。SHIFT(換檔信號):輸入,高有效。該信號線用來擴充鍵開關(guān)的功能。CNTL/STB(控制/選通):輸入,高電平有效,在鍵盤工作方式時,作為控制功能鍵使用,在選通方式時,該信號的上升沿可以將來自RL0-RL7的數(shù)據(jù)存入FIFO存儲器,在傳感器方式,無效;BD(消隱顯示):輸出,低有效。該輸出信號在數(shù)字切換顯示或使用顯示消隱命令時,將顯示消隱。,第八章單片機的人機接口,2.控制信號RD(讀信號)和WR(寫信號):輸入,低有效,使8279數(shù)據(jù)緩沖器向外部總線發(fā)送數(shù)據(jù)或從外部總線接收數(shù)據(jù);CLK:外部時鐘輸入信號,8279設(shè)置定時器將外部時鐘變?yōu)閮?nèi)部時鐘,其內(nèi)部基頻外部時鐘/定標(biāo)器值C/S,當(dāng)C/S=1時,信息的傳送地址為片內(nèi)命令字寄存器,C/S=0時,則傳送的信息將作為數(shù)據(jù)與16X8顯示數(shù)據(jù)存貯器或FIFORAM進行交換,其傳送方向由RD或WR確定;A0:緩沖器地址線;IRQ:中斷請求線,高電平有效。在鍵盤工作方式下,若FIFO/傳感器RAM中有數(shù)則IRQ變高,經(jīng)反相后向單片機請求中斷。,第八章單片機的人機接口,,8279的鍵盤顯示器電路,第八章單片機的人機接口,8.4.38279的鍵盤顯示器電路,8.4.48279的設(shè)置8279共有八條命令:(1)鍵盤/顯示方式設(shè)置命令命令特征位:D7D6D5=000,第八章單片機的人機接口,(2)時鐘編程命令命令特征位:D7D6D5=001,(3)讀FIFO/傳感器RAM命令命令特征位:D7D6D5=010,第八章單片機的人機接口,(4)讀顯示RAM命令命令特征位:D7D6D5=011,(5)寫顯示RAM命令命令特征位:D7D6D5=100,第八章單片機的人機接口,(6)顯示禁止寫入/消隱命令命令特征位:D7D6D5=101。,(7)清除命令命令特征位:D7D6D5=110。,第八章單片機的人機接口,(8)結(jié)束中斷/錯誤方式設(shè)置命令命令特征位D7D6D5=111。,第八章單片機的人機接口,8.4.58279的應(yīng)用程序介紹1.8279初始化程序SET8279:MOVR0,#0EDH;命令字口地址送R0MOVA,#25HMOVX@R0,AMOVA,#0A0HMOVX@R0,AMOVA,#10HMOVX@R0,AMOVA,#90H;寫顯示RAM,從0地址開始地址自動加1MOVX@R0,A;MOVA,#40HMOVX@R0,ASJMP$,第八章單片機的人機接口,2.顯示子程序:DISPLAY:MOVR7,#08H;顯示字符指針長度MOVR1,#060HMOVR0H,#0ECHDIS01:MOVA,@R1;顯示字符送8279MOVX@R0,AINCR1DJNZR7,DIS01;沒顯示完循環(huán)顯下一個RET,第八章單片機的人機接口,3.鍵盤中斷服務(wù)子程序INT01:PUSHPSWPUSHACCMOVR0,#0EDHMOVA,#40HMOVX@R0,AMOVR0,#0ECHMOVXA,@R0;讀入一個鍵值A(chǔ)NLA,#03FHMOVR6,ALCALLKEYCODE;調(diào)用鍵代碼處理子程序,獲得鍵碼POPACCPOPPSWRETI,- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 單片機原理及應(yīng)用 單片機 原理 應(yīng)用 第八 人機 接口
鏈接地址:http://appdesigncorp.com/p-12720619.html