單片機(jī)第八章_第1頁(yè)
單片機(jī)第八章_第2頁(yè)
單片機(jī)第八章_第3頁(yè)
單片機(jī)第八章_第4頁(yè)
單片機(jī)第八章_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

單片機(jī)第八章第一頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.1鍵盤接口8.1.1鍵盤的工作原理和掃描方式鍵盤的結(jié)構(gòu):1、獨(dú)立式鍵盤第二頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口2、矩陣式鍵盤第三頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口3種鍵盤掃描方式1、程序控制掃描方式——在主程序中用一段專門的掃描和讀鍵程序來(lái)檢查有無(wú)鍵按下,并確定鍵值。

2、定時(shí)掃描方式——利用單片機(jī)內(nèi)的定時(shí)器來(lái)產(chǎn)生定時(shí)中斷,然后在定時(shí)中斷的服務(wù)程序中掃描和讀鍵,檢查有無(wú)鍵按下,并確定鍵值。3、中斷掃描方式——當(dāng)有鍵按下時(shí)由相應(yīng)的硬件電路產(chǎn)生中斷信號(hào),單片機(jī)在中斷服務(wù)程序中掃描和讀鍵,再次檢查有無(wú)鍵按下,并確定鍵值。第四頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口

用8255實(shí)現(xiàn)的鍵盤接口電路第五頁(yè),共三十六頁(yè),編輯于2023年,星期日鍵盤處理程序的步驟判斷鍵盤中有無(wú)鍵按下。單片機(jī)先使8255A的A口的各位PA0~PA3均為低電平,再讀C口(PC0~PC3)。若C口的各位不全為高電平,則表示有鍵按下。消除抖動(dòng)。先延時(shí)10ms,然后再讀C口,此時(shí),若C口各位仍不全為高電平,說(shuō)明確實(shí)有鍵按下。第八章單片機(jī)的人機(jī)接口第六頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口求鍵號(hào)。過(guò)程如下:先置PA0=0,PA1~PA3均為1,再讀C口,由C口低電平的位置便可確定按下鍵的位置。例如,若在PA0=0時(shí)PC0=0,那么是0號(hào)鍵按下。鍵碼值高4位是鍵所在行號(hào),低4位是鍵所在列的號(hào)碼。第七頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.1.3鍵盤輸入程序設(shè)計(jì)方法掃描與讀鍵程序:(1.判斷有無(wú)鍵按下子程序)JUDGE:MOVDPTR,#0FFDDH;8255A口地址

MOVA,#00H MOVX@DPTR,A;A口輸出低電平

INCDPTR INCDPTR MOVXA,@DPTR;從C口讀數(shù)據(jù)

CPLA ANLA,#0FH;取低四位

RET第八頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口(2.讀鍵程序)KEY1:ACALLJUDGE;看有否鍵按下

JNZLK1;有鍵按下,跳轉(zhuǎn)至按鍵處理

ACALLDELAYAJMPKEY1;無(wú)鍵則延時(shí)后再掃描LK1:ACALLDELAY;延時(shí)去抖動(dòng)

JNZLK2;再次判斷有無(wú)鍵

ACALLDELAYALMPKEY1;無(wú)鍵則延時(shí)后再掃描LK2:MOVR2,#0EH;掃描列線

MOVR4,#00H;列號(hào)LK3:MOVDPTR,#0FFDDHMOVA,R2MOVX@DPTR,A;送0EH至A口

INCDPTRINCDPTRMOVXA,@DPTR;從C口讀入第九頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口JBACC.0,LINE1;第0行為1表示無(wú)鍵,則轉(zhuǎn)1行

MOVA,#00HAJMPLKPLINE1:JBACC.1,LINE2;第1行為1表示無(wú)鍵,則轉(zhuǎn)2行

MOVA,#04HAJMPLKPLINE2:JBACC.2,LINE3;第2行為1表示無(wú)鍵,則轉(zhuǎn)3行

MOVA,#08HAJMPLKPLINE3:JBACC.3,NEXT;第3行為1表示無(wú)鍵,則轉(zhuǎn)NEXTMOVA,#0CHLKP:ADDA,R4PUSHACCNT:ACALLDELAYACALLJUDGEJNZNTPOPACC第十頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口RETNEXT:INCR4MOVA,R2JNBACC.3,KND;判斷整個(gè)4×4鍵盤是否掃描結(jié)束

RLAMOVR2,A;掃描下一列

AJMPLK3KND:AJMPKEY1第十一頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.2LED顯示器接口LED顯示器是由發(fā)光二極管構(gòu)成的字段組成的顯示器分類:8段和16段LED顯示器

連接方法:共陰極和共陽(yáng)極第十二頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口字型碼表:通過(guò)字符查到相應(yīng)的字型碼。排列順序:dp/g/f/e/d/c/b/a例如“0”的字型碼,共陰極為3FH,共陽(yáng)極為0C0H第十三頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口LED顯示器的工作原理靜態(tài)顯示——需要顯示的字符的各字段連續(xù)通電,所顯示的字段連續(xù)發(fā)光。動(dòng)態(tài)顯示——所需顯示字段斷續(xù)通以電流,在需要多個(gè)字符同時(shí)顯示時(shí),可以輪流給每一個(gè)字符通以電流,逐次把所需顯示的字符顯示出來(lái)。第十四頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口1.靜態(tài)顯示電路1)、本身的靜態(tài)端口(P1口)或擴(kuò)展的I/O端口直接與LED電路連接;2)、利用本身的串行端口TXD和RXD與LED電路連接(讓串行接口工作在方式0:RXD-串行I/O、TXD-移位脈沖)。第十五頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口1.靜態(tài)顯示程序

DIR:SETBP3.3MOVR7,#08H;循環(huán)次數(shù)為8次

MOVR0,#6FH;先送最后一個(gè)顯示字符DI0:MOVA,@R0;取顯示的數(shù)據(jù)

ADDA,#e;加上字形碼表的偏移量

MOVCA,@A+PC;取字形碼

MOVSBUF,A;送出顯示

DI1:JNBTI,DIl;查詢輸出完否?CLRTIDECR0DJNZR7,DI0CLRP3.3RET第十六頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口TBT:

DB0COH,0F9H,0A4HTBLl:

DB0BOH,99H,92HTBL2:

DB82H,0F8H,80HTBL3:

DB90H,00H,00H第十七頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口2.動(dòng)態(tài)顯示電路第十八頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口2.動(dòng)態(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個(gè)顯示位掃完否?

RLAMOVR3,AAJMPDI0DI1:RET第十九頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口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;共陰極段碼表

END

DELAY1:MOVR7,#02H;延時(shí)1msDE1:MOVR6,#0FFHDE2:DJNZR6,DE2DJNZR7,DE1RET第二十頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.3LCD顯示器接口用液晶制成的顯示器是一種被動(dòng)式顯示器件,液晶本身并不發(fā)光,而是借助自然光或外來(lái)光源顯示數(shù)碼。第二十一頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.3.2LCD顯示器的接口電路和顯示程序設(shè)計(jì)1、LCD顯示器的接口電路

SED1335特點(diǎn):(1)有較強(qiáng)功能的I/O緩沖器;(2)指令功能豐富;(3)四位數(shù)據(jù)并行發(fā)送,最大驅(qū)動(dòng)能力為640×256點(diǎn)陣。第二十二頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口SED1335的電路原理圖第二十三頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.48279專用鍵盤顯示器功能:①接收來(lái)自鍵盤的輸入數(shù)據(jù),并作預(yù)處理;

②數(shù)據(jù)顯示的管理和數(shù)據(jù)顯示器的控制。內(nèi)部資源:①

16×8顯示數(shù)據(jù)RAM,每個(gè)單元寄存1個(gè)字符的8位顯示代碼,能將16個(gè)數(shù)據(jù)分時(shí)送到16個(gè)顯示器并顯示出來(lái)。

②為顯示數(shù)據(jù)RAM輸出同步掃描信號(hào)。通過(guò)命令字可選擇顯示器的4種工作方式即左端入、右端輸入、8位字符顯示、16位字符顯示。

8個(gè)字節(jié)的鍵盤FIFO的RAM(先入先出堆棧),每按一次鍵8279便自動(dòng)進(jìn)行編碼,并送FIFORAM中。

第二十四頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8279的內(nèi)部原理圖第二十五頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.4.28279的引腳分析1.輸出輸入信號(hào)

DB0一DB7:雙向數(shù)據(jù)總線,用于傳送命令字和數(shù)據(jù)。RL0一RL7:鍵盤回送線,當(dāng)某一個(gè)鍵閉合時(shí)變低電平,在選通輸入方式下,這些輸入端亦可用作8位輸入線;

SL0—SL3(掃描線):輸出為鍵盤掃描線及顯示位控輸出線;OUTAO~OUTA3,OUTB0~OUTB3:顯示寄存器輸出線。SHIFT(換檔信號(hào)):輸入,高有效。該信號(hào)線用來(lái)擴(kuò)充鍵開關(guān)的功能。CNTL/STB(控制/選通):輸入,高電平有效,在鍵盤工作方式時(shí),作為控制功能鍵使用,在選通方式時(shí),該信號(hào)的上升沿可以將來(lái)自RL0-RL7的數(shù)據(jù)存入FIFO存儲(chǔ)器,在傳感器方式,無(wú)效;BD(消隱顯示):輸出,低有效。該輸出信號(hào)在數(shù)字切換顯示或使用顯示消隱命令時(shí),將顯示消隱。第二十六頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口2.控制信號(hào)RD(讀信號(hào))和WR(寫信號(hào)):輸入,低有效,使8279數(shù)據(jù)緩沖器向外部總線發(fā)送數(shù)據(jù)或從外部總線接收數(shù)據(jù);CLK:外部時(shí)鐘輸入信號(hào),8279設(shè)置定時(shí)器將外部時(shí)鐘變?yōu)閮?nèi)部時(shí)鐘,其內(nèi)部基頻外部時(shí)鐘/定標(biāo)器值C/S,當(dāng)C/S=1時(shí),信息的傳送地址為片內(nèi)命令字寄存器,C/S=0時(shí),則傳送的信息將作為數(shù)據(jù)與16X8顯示數(shù)據(jù)存貯器或FIFORAM進(jìn)行交換,其傳送方向由RD或WR確定;A0:緩沖器地址線;IRQ:中斷請(qǐng)求線,高電平有效。在鍵盤工作方式下,若FIFO/傳感器RAM中有數(shù)則IRQ變高,經(jīng)反相后向單片機(jī)請(qǐng)求中斷。第二十七頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8279的鍵盤顯示器電路第二十八頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.4.38279的鍵盤顯示器電路8.4.48279的設(shè)置8279共有八條命令:(1)

鍵盤/顯示方式設(shè)置命令命令特征位:D7D6D5=000000DDKKK第二十九頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口(2)

時(shí)鐘編程命令

命令特征位:D7D6D5=001

001PPPPP(3)讀FIFO/傳感器RAM命令命令特征位:D7D6D5=010010AIXAAA第三十頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口(4)

讀顯示RAM命令

命令特征位:D7D6D5=011011AIAAAA(5)

寫顯示RAM命令命令特征位:D7D6D5=100100AIAAAA第三十一頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口(6)

顯示禁止寫入/消隱命令

命令特征位:D7D6D5=101。101XIWIWBLBL(7)

清除命令命令特征位:D7D6D5=110。

110CDCDCDCFCA第三十二頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口(8)

結(jié)束中斷/錯(cuò)誤方式設(shè)置命令命令特征位D7D6D5=111。

111EXXXX第三十三頁(yè),共三十六頁(yè),編輯于2023年,星期日第八章單片機(jī)的人機(jī)接口8.4.58279的應(yīng)用程序介紹1.8279初始化程序SET8279:MOVR0,#0EDH;命令字口地址送R0MOVA,#25HMOVX@R0,AMOVA,#0A0HMOVX@R0,AMOVA,#10H

溫馨提示

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

評(píng)論

0/150

提交評(píng)論