片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)_第1頁(yè)
片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)_第2頁(yè)
片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)_第3頁(yè)
片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)_第4頁(yè)
片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)_第5頁(yè)
已閱讀5頁(yè),還剩47頁(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)介

1、鍵盤(pán)與顯示器接口片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)LED顯示器接口技術(shù)LED數(shù)碼顯示器結(jié)構(gòu)與原理 LED數(shù)碼顯示器是由發(fā)光二極管顯示字段的顯示器件。在應(yīng)用系統(tǒng)中通常使用的是七段LED數(shù)碼顯示器。這種顯示塊有共陰極與共陽(yáng)極兩種,如下圖所示。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù) 使用LED顯示器時(shí),要注意區(qū)分共陰極和共陽(yáng)極兩種不同的接法。為了顯示數(shù)字或字符,必須對(duì)數(shù)字或字符進(jìn)行編碼,簡(jiǎn)稱段碼。七段數(shù)碼管加上一個(gè)小數(shù)點(diǎn),共計(jì)8段。因此為L(zhǎng)ED顯示器提供的段碼正好是一個(gè)字節(jié)。 實(shí)際使用中,通過(guò)單片機(jī)向LED顯示接口輸出不同段碼,即可顯示相應(yīng)的數(shù)字。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)LED數(shù)碼顯示器共陰極和共陽(yáng)極段碼 存儲(chǔ)

2、器地址顯示數(shù)字共陰極接法的七段狀態(tài)g f e d c b a共陰極接法段碼(十六進(jìn)制數(shù))共陽(yáng)極接法段碼(十六進(jìn)制數(shù))SEG00 1 1 1 1 1 13F40SEG+110 0 0 0 1 1 00679SEG+221 0 1 1 0 1 15B24SEG+331 0 0 1 1 1 14F30SEG+441 1 0 0 1 1 06619SEG+551 1 0 1 1 0 16D12SEG+661 1 1 1 1 0 17D02SEG+770 0 0 0 1 1 1 0778SEG+881 1 1 1 1 1 17F00SEG+991 1 0 0 1 1 16718SEG+10A1 1 1

3、0 1 1 17708SEG+11B1 1 1 1 1 0 07C03SEG+12C0 1 1 1 0 0 13946SEG+13D1 0 1 1 1 1 05E21SEG+14E1 1 1 1 0 0 17906SEG+15F1 1 1 0 0 0 1710E片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù) 硬件譯碼LED顯示接口 如圖所示為采用硬件譯碼器的七段LED接口電路,顯示器是共陰極的。9368是硬件段譯碼器,它能自動(dòng)將輸入的16進(jìn)制數(shù)轉(zhuǎn)換成段碼輸出,在+5V時(shí)能輸出約30mA的電流點(diǎn)亮顯示器的段。7475是4位鎖存器,4個(gè)數(shù)據(jù)輸入端接到系統(tǒng)數(shù)據(jù)總線的D3D0。鎖存器的選通端E接到地址譯碼器,若該接口的

4、地址為0088H,執(zhí)行以下指令即可在顯示器上顯示數(shù)字“0”。 MOV DPTR,0088H MOV A,00H MOVX DPTR,A片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)軟件譯碼LED顯示接口 軟件譯碼動(dòng)態(tài)掃描顯示接口如下圖,根據(jù)要顯示的字符查段碼表取得相應(yīng)的段碼并輸出到LED顯示器,采用逐位掃描的方法控制哪一位LED被點(diǎn)亮。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)動(dòng)態(tài)掃描匯編語(yǔ)言驅(qū)動(dòng)程序 START:MOV DPTR,#TABLE ;DPTR指向段碼表首地址MOV R7,#07FH ;設(shè)置動(dòng)態(tài)顯示掃描初值S1:MOVA,#00H MOVCA,A+DPTR ;查表取得段碼 CJNEA,#01H,S2 ;判斷段碼

5、是否為結(jié)束符SJMPSTARTS2:MOV B,A ;段碼送B保存MOVA,R7RL A ;顯示位掃描值左移1位MOV P3,A ;顯示位掃描值送P3口MOV R7,AMOVP0,B ;顯示段碼送P0顯示LCALLDELAY ;延時(shí)INCDPTRSJMPS1DELAY: MOV R5,#80 ;延時(shí)子程序D2: DJNZ R5,D2RET TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ;段碼表DB01H ;結(jié)束符片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)串行接口LED驅(qū)動(dòng)器MAX7219 MAX7219是MAXIM公司生產(chǎn)的一種串行接口方式7段共陰極LED顯示驅(qū)動(dòng)器,其

6、片內(nèi)包含有一個(gè)BCD碼到B碼的譯碼器、多路復(fù)用掃描電路、字段和字位驅(qū)動(dòng)器以及存儲(chǔ)每個(gè)數(shù)字的88 RAM,每位數(shù)字都可以被尋址和更新,允許對(duì)每一位數(shù)字選擇B碼譯碼或不譯碼。采用三線串行方式與單片機(jī)接口,電路十分簡(jiǎn)單,只需要一個(gè)10k左右的外接電阻來(lái)設(shè)置所有LED的段電流。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)MAX7219采用串行數(shù)據(jù)傳輸方式,由16位數(shù)據(jù)包發(fā)送到DIN引腳的串行數(shù)據(jù)在每個(gè)CLK的上升沿被移入到內(nèi)部16位移位寄存器中,然后在LOAD的上升沿將數(shù)據(jù)鎖存到數(shù)字或控制寄存器中。LOAD信號(hào)必須在第16個(gè)時(shí)鐘上升沿同時(shí)或之后,但在下一個(gè)時(shí)鐘上升沿之前變高,否則將會(huì)丟失數(shù)據(jù)。DIN端的數(shù)據(jù)通過(guò)移位

7、寄存器傳送,并在16.5個(gè)時(shí)鐘周期后出現(xiàn)在DOUT端。DOUT端的數(shù)據(jù)在CLK的下降沿輸出。串行數(shù)據(jù)以16位為一幀,其中D15D12可以任意,D11D8為內(nèi)部寄存器地 址,D7D0為寄存器數(shù)據(jù),工作時(shí)序如下:片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)寄存器地 址D15D12D11 D10 D9 D8十六進(jìn)制代碼NO-OP 0 0 0 00H數(shù)字0 0 0 0 11H數(shù)字1 0 0 1 02H數(shù)字2 0 0 1 13H數(shù)字3 0 1 0 04H數(shù)字4 0 1 0 15H數(shù)字5 0 1 1 06H數(shù)字6 0 1 1 17H數(shù)字7 1 0 0 08H譯碼方式 1 0 0 19H亮度 1 0 1 0AH掃描界限 1

8、 0 1 1BH停機(jī) 1 1 0 0CH顯示測(cè)試 1 1 1 1FHMAX7219的內(nèi)部寄存器及其地址 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8051單片機(jī)與MAX7219的接口 8051的P3.5連到MAX7219的DIN端,P3.6連到LOAD端,P3.7連到CLK端,采用軟件模擬方式產(chǎn)生所需的工作時(shí)序。執(zhí)行驅(qū)動(dòng)程序后在LED上顯示8051字樣。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù) 鍵盤(pán)可分為編碼式鍵盤(pán)和非編碼式鍵盤(pán)。編碼鍵盤(pán)能夠由硬件自動(dòng)提供與被按鍵對(duì)應(yīng)的ASCII碼或其它編碼。非編碼鍵盤(pán)則僅提供行和列的矩陣,其硬件邏輯與按鍵編碼不存在嚴(yán)格的對(duì)應(yīng)關(guān)系,而要由所用的程序來(lái)確定。任何鍵盤(pán)接口均要解決三個(gè)主要

9、問(wèn)題:1、反彈跳2、串鍵保護(hù)3、按鍵識(shí)別鍵盤(pán)接口技術(shù)片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)1、反彈跳當(dāng)按鍵開(kāi)關(guān)的觸點(diǎn)閉合或斷開(kāi)到其穩(wěn)定,會(huì)產(chǎn)生一個(gè)短暫的抖動(dòng)和彈跳,如下圖所示,這是機(jī)械式開(kāi)關(guān)的一個(gè)共同性問(wèn)題。消除由于鍵抖動(dòng)和彈跳產(chǎn)生的干擾可采用硬件方法,也可采用軟件延遲的方法。 采用RS觸發(fā)器實(shí)現(xiàn)硬件反彈跳片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)當(dāng)鍵數(shù)較多時(shí)經(jīng)常用軟件延時(shí)的方法來(lái)反彈跳,如流程圖所示。當(dāng)檢出有鍵按下后,先執(zhí)行一個(gè)反顫延時(shí)20ms的子程序,待前沿彈跳消失后再轉(zhuǎn)入鍵閉合CLOSE子程序。然后再判斷此次按鍵是否松開(kāi),如果沒(méi)有,則進(jìn)行等待。若已松開(kāi),則又執(zhí)行一次延時(shí)20ms的子程序以消除后沿彈跳的影響,再去

10、檢測(cè)下次按鍵的閉合。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)2、串鍵保護(hù) 有三種處理串鍵的技術(shù):兩鍵同時(shí)按下、n鍵同時(shí)按下和n鍵鎖定。 “兩鍵同時(shí)按下”技術(shù)是在兩個(gè)鍵同時(shí)按下時(shí)產(chǎn)生保護(hù)作用。最簡(jiǎn)單的辦法是當(dāng)只有一個(gè)鍵按下時(shí)才讀取鍵盤(pán)的輸出,最后仍被按下的鍵是有效的正確按鍵。當(dāng)用軟件掃描鍵盤(pán)時(shí)常采用這種方法。另一種方法是當(dāng)?shù)谝粋€(gè)按鍵未松開(kāi)時(shí),按第二個(gè)鍵不產(chǎn)生選通信號(hào)。這種方法常藉助硬件來(lái)實(shí)現(xiàn)。 “n鍵同時(shí)按下”技術(shù)或者不理會(huì)所有被按下的鍵,直至只剩下一鍵按下時(shí)為止,或者將所有按鍵的信息都存入內(nèi)部緩沖器中,然后逐個(gè)處理,這種方法成本較高。 “n鍵鎖定”技術(shù)只處理一個(gè)鍵,任何其它按下又松開(kāi)的鍵不產(chǎn)生任何碼。通

11、常第一個(gè)被按下或最后一個(gè)松開(kāi)的鍵產(chǎn)生碼。這種方法最簡(jiǎn)單也最常用。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)3、按鍵識(shí)別 決定是否有鍵被按下,如有則應(yīng)識(shí)別鍵盤(pán)矩陣中被按鍵對(duì)應(yīng)的編碼。編碼鍵盤(pán)通過(guò)硬件直接提供按鍵與被按鍵對(duì)應(yīng)的ASCII碼或其它編碼。非編碼鍵盤(pán)則需要通過(guò)編程方式提供按鍵編碼。其優(yōu)點(diǎn)是結(jié)構(gòu)簡(jiǎn)單、成本低廉。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)非編碼鍵盤(pán)接口技術(shù) 非編碼鍵盤(pán)接口技術(shù)主要是如何確定被按鍵的行、列位置,即鍵碼(值)。按鍵識(shí)別是接口技術(shù)的關(guān)鍵問(wèn)題。 常用按鍵識(shí)別方法有行掃描法(Row-Scanning)和線反轉(zhuǎn)法(Line-Reverse) 。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)典型非編碼鍵盤(pán)結(jié)構(gòu) 非編碼

12、鍵盤(pán)大都采用按行、列排列的矩陣開(kāi)關(guān)結(jié)構(gòu),這種結(jié)構(gòu)可以減少硬件和連線。 矩陣鍵盤(pán)接口片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)行掃描法識(shí)別按鍵 行掃描法是采用步進(jìn)掃描方式,CPU通過(guò)輸出口把一個(gè)“步進(jìn)的0”逐行加至鍵盤(pán)的行線上,然后通過(guò)輸入口檢查列線的狀態(tài)。由行線列線電平狀態(tài)的組合來(lái)確定是否有鍵按下,并確定被按鍵所處的行、列位置。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)R1K13K14K15K16R2K9K10K11K12R3K5K6K7K8R4K1K2K3K4C1C2C3C4鍵位與行列線關(guān)系表 上表列出了識(shí)別按鍵位置與各行之間的關(guān)系。其中,R1、R2、R3、R4表示行,C1、C2、C3、C4表示列。當(dāng)掃描第一行時(shí),R

13、1=0, 若讀入的列值C1=0,則表明按鍵K13被壓下,如果C3=0,則表明按鍵K15被壓下。第一行掃描完畢后再掃描第二行,逐行掃描至最后一行為止,即可識(shí)別出所有的按鍵。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)線反轉(zhuǎn)法識(shí)別按鍵線反轉(zhuǎn)法是藉助程控并行接口實(shí)現(xiàn)的,比行掃描法的速度快。如圖所示為一個(gè)44鍵盤(pán)與并行接口的連接。并行接口有一個(gè)方向寄存器和一個(gè)數(shù)據(jù)寄存器,方向寄存器規(guī)定了接口總線的方向,寄存器的某位置“1”,規(guī)定該位口線為輸出。寄存器的某位置“0”,規(guī)定該位口線為輸入。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)線反轉(zhuǎn)法的具體操作分兩步 第一步:先把控制字0FH置入并行接口的方向寄存器,使4條行線(PB0PB3)作

14、輸出,4條列線(PB4-PB7)作輸入。然后把控制字F0H寫(xiě)入數(shù)據(jù)寄存器,PB0PB3將輸出“0”到鍵盤(pán)行線。這時(shí)若無(wú)鍵按下,則4條列線均為“”;若有某鍵按下,則該鍵所在行線的“0”電平通過(guò)閉合鍵使相應(yīng)的列線變?yōu)椤?”,并經(jīng)與非門(mén)發(fā)出鍵盤(pán)中斷請(qǐng)求信號(hào)給單片機(jī)。圖4.6(a)是第2行第1列有鍵按下的情況。這時(shí)PB7PB4線的輸入為1011,其中0對(duì)應(yīng)于被按鍵所在的列。第二步:使接口總線的方向反轉(zhuǎn),把控制字F0H寫(xiě)入方向寄存器,使PB0PB3作輸入,PB4PB7作輸出。這時(shí)PB7PB4線的輸出為1011,PB3PB0的輸入為1011,其中“0”對(duì)應(yīng)于被按鍵的行。單片機(jī)現(xiàn)在讀取數(shù)據(jù)寄存器的完整內(nèi)容為

15、10111011,其中兩個(gè)0分別對(duì)應(yīng)于被按鍵所在的行列位置。根據(jù)此位置碼到ROM中去查表,就可識(shí)別是何鍵被按下。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)單片機(jī)通過(guò)8155實(shí)現(xiàn)的鍵盤(pán)、顯示器接口 如圖所示為單片機(jī)8051與矩陣鍵盤(pán)及LED顯示器的一種接口電路,通過(guò)編程設(shè)定8155的PA口、PB口作為輸出口,PC口作為輸入口。PA口完成鍵盤(pán)的行掃描輸出,同時(shí)又對(duì)LED顯示器作字位掃描,PC口輸入鍵盤(pán)列線狀態(tài)。7407為同相驅(qū)動(dòng)器,75452為反相驅(qū)動(dòng)器。接口電路中采用8031的P2.7作為8155的片選線,P2.0作為8155的IO端口和片內(nèi)RAM選擇線,因此8155的命令寄存器地址為7F00H,PAPC口地

16、址為7F01H7F03H。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)按鍵識(shí)別子程序KEY: MOV DPTR, #7F00H ;8155命令口地址 MOV A, #03H ;置PA、PB口為輸出, MOVX DPTR,A ;PC口為輸入MOV R4,00H ;0鍵號(hào)寄存器R4MOV R2,01H ;掃描模式01HR2KEY1:MOV DPTR,7F01HMOV A,R2MOVX DPTR,A ;掃描模式8155PA口INC DPTRINC DPTRMOVX A,DPTR ;讀8155PC口JB ACC.0,KEY2 ;0列無(wú)鍵閉合,轉(zhuǎn)判1列MOV A,00H ;0列有鍵閉合,0AAJMP KEY5KEY2

17、:JB ACC.1,KEY3 ;1列無(wú)鍵閉合,轉(zhuǎn)判2列MOV A,01H ;1列有鍵閉合AJMP KEY5片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)KEY3:JB ACC.2,KEY4 ;2列無(wú)鍵閉合,轉(zhuǎn)判3列 MOV A,02H ;2列有鍵閉合,02HA AJMP KEY5KEY4:JB ACC.3,NEXT ;3列無(wú)鍵閉合,轉(zhuǎn)判下一行 MOV A,03H ;3列有鍵閉合,03HAKEY5: ADD A,R4 ;列線號(hào)+(R4)作為鍵值A(chǔ) MOV R4,A ;鍵值R4 RET ;返回NEXT:MOV A,R4; ADD A,04 ;鍵號(hào)寄存器加4 MOV R4,A MOV A,R2 JB ACC.3,NE

18、XT1 ;判是否已掃描到最后一行 RL A ;掃描模式左移一位 MOV R2,A AJMP KEY1 ;重新開(kāi)始掃描下一行NEXT1: MOV R4,88H ;掃描到最后一行仍無(wú)按鍵 RET ;置無(wú)鍵閉合標(biāo)志后返回 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)鍵值分析 單片機(jī)從鍵盤(pán)接口獲得鍵值后究竟執(zhí)行什么操作,完全取決于鍵盤(pán)解釋程序。 常用的方法: 1、查表法 根據(jù)得到的鍵值代碼,到固化在ROM里的表格中查找對(duì)應(yīng)該代碼的動(dòng)作例行程序的首地址。這種方法適用于一個(gè)鍵就產(chǎn)生一個(gè)動(dòng)作的單個(gè)命令鍵。 2.狀態(tài)變量法 根據(jù)鍵碼和當(dāng)前所處的狀態(tài)找出下一個(gè)應(yīng)進(jìn)入的狀態(tài)及動(dòng)作例行程序。這種方法適用于多個(gè)鍵互相配合產(chǎn)生一個(gè)動(dòng)作

19、的多義鍵。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)查表法查表法的核心是一個(gè)固化在ROM中的功能子程序入口地址轉(zhuǎn)移表。如下表所示。在轉(zhuǎn)移表內(nèi)存有各個(gè)功能子程序的入口地址,根據(jù)鍵值代碼查閱此表獲得相應(yīng)功能的子程序入口地址,從而可以轉(zhuǎn)移到相應(yīng)的命令處理子程序。功能子程序入口地址子程序1子程序2子程序3入口地址1入口地址2入口地址3功能子程轉(zhuǎn)移地址片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)例:鍵盤(pán)接口調(diào)用按鍵識(shí)別子程序所獲得的鍵值如下表所示 ,當(dāng)鍵值小于10H時(shí)代表數(shù)字鍵,鍵值大于等于10H時(shí)代表功能鍵。 鍵值表按鍵鍵值0F00H0FHRUN10HRET11HADRS12HSTORE13HREAD14HWRITE15H片機(jī)學(xué)

20、習(xí)鍵盤(pán)與顯示器接口技術(shù)處理功能鍵的程序: INPUT: LCALL KEY ;調(diào)按鍵識(shí)別子程序,獲得鍵值在A中MOV R0,A ;鍵值暫存于R0 ANL A,10HJZ DATIN ;小于10H為數(shù)字鍵,轉(zhuǎn)入數(shù)字操作MOV A,R0 ;大于等于10H為命令鍵ANL A,0FH ;保留鍵值低4位MOV R0,A ;(A)3RL AADD A,R0MOV DPTR,TABEL ;取轉(zhuǎn)移表首地址JMP A+DPTR ;按不同鍵值散轉(zhuǎn)至子程序TABEL:LJMP RUN ;轉(zhuǎn)RUN命令子程序LJMP RET ;轉(zhuǎn)RET命令子程序LJMP ADRS ;轉(zhuǎn)ADRS命令子程序LJMP STORE ;轉(zhuǎn)STO

21、RE命令子程序LJMP READ ;轉(zhuǎn)READ命令子程序LJMP WRITE ;轉(zhuǎn)WRITE命令子程序DATIN: ; 數(shù)字鍵操作程序,略;片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8279可編程鍵盤(pán)/顯示器接口技術(shù)8279的工作原理鍵盤(pán)部分 提供64按鍵陣列(可擴(kuò)展為128)的掃描接口,也可以接傳感器陣列。鍵的按下可以是雙鍵鎖定或N鍵互鎖。鍵盤(pán)輸入經(jīng)過(guò)反彈跳電路自動(dòng)消除前后沿按鍵抖動(dòng)影響之后,被選通送入一個(gè)8字符的FIFO(先進(jìn)先出棧)存儲(chǔ)器。如果送入的字符多于8個(gè),則溢出狀態(tài)置位。按鍵輸入后將中斷輸出線升到高電平向CPU發(fā)中斷申請(qǐng)。 顯示部分 對(duì)7段LED、白熾燈或其他器件提供顯示接口。8279有一個(gè)內(nèi)

22、部的168顯示RAM,組成一對(duì)164存儲(chǔ)器。顯示RAM可由CPU寫(xiě)入或讀出。顯示方式有從右進(jìn)入的計(jì)算器方式和從左進(jìn)入的電傳打字方式。顯示RAM每次讀寫(xiě)之后,其地址自動(dòng)加1。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8279內(nèi)部邏輯結(jié)構(gòu)框圖片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)I/O控制和數(shù)據(jù)緩沖 控制與定時(shí)寄器及定時(shí)控制掃描計(jì)數(shù)器 返回緩沖器和鍵盤(pán)消顫及控制 FIFO/傳感器RAM和狀態(tài) 顯示地址寄存器和顯示RAM 8279內(nèi)部主要組成模塊 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8279功能命令一覽表片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8279功能命令一覽表(續(xù)表)片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8279與單片機(jī)的一般接口方法 片機(jī)學(xué)習(xí)鍵

23、盤(pán)與顯示器接口技術(shù) 單片機(jī)在初始化8279后,把顯示字符送到8279內(nèi)部的一個(gè)16字節(jié)寄存器內(nèi),并將字符轉(zhuǎn)換成段碼,經(jīng)A0A3、B0B3線把段碼送到顯示器,同時(shí)經(jīng)SL0SL3線發(fā)出4位數(shù)位選通碼。4-16譯碼器對(duì)選通碼進(jìn)行譯碼后輪流選通各位顯示器。SL0SL2線同時(shí)連到3-8譯碼器。該譯碼器的輸出用于掃描鍵盤(pán)8行。8279經(jīng)8根返回線(RL0RL7)讀取鍵盤(pán)的狀態(tài)。如果發(fā)現(xiàn)按鍵閉合則等待10ms,顫動(dòng)過(guò)去后再檢驗(yàn)按鍵是否閉合。若按鍵仍然閉合,則把被按鍵的鍵值選通輸入8279內(nèi)部的先進(jìn)先出(FIFO)存儲(chǔ)器,同時(shí)經(jīng)INT線發(fā)出一個(gè)高電平,指出FIFO內(nèi)已經(jīng)有一個(gè)字符。INT線連接到CPU的中斷請(qǐng)

24、求輸入線。當(dāng)單片機(jī)接收到中斷請(qǐng)求后,若開(kāi)中斷,則轉(zhuǎn)到鍵盤(pán)服務(wù)程序,從FIFO中讀取按鍵的鍵值。在這種接口中,單片機(jī)要做的事僅是初始化8279、送出要顯示的字符、接到中斷請(qǐng)求后讀取按鍵的鍵值,其它工作均由8279自動(dòng)完成。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)單片機(jī)與8279的接口電路片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8031的P2.7接到8279的片選端,最低位地址A0接到8279的C/D端,因此該接口對(duì)用戶來(lái)說(shuō)只有二個(gè)口地址:命令口地址7FFFH和數(shù)據(jù)口地址7FFEH。 圖中8279外接48鍵盤(pán)和8位共陰極LED顯示器,采用編碼掃描方式,譯碼器74LS138對(duì)掃描線譯碼后一方面接鍵盤(pán)的列線,同時(shí)通過(guò)驅(qū)動(dòng)器接

25、到顯示器上。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)8279工作流程片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)LCD顯示器接口技術(shù)LCD的基本結(jié)構(gòu)及工作原理LCD的特點(diǎn)是體積小、重量輕、功耗極低、抗干擾能力強(qiáng)。片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)LCD的驅(qū)動(dòng)方式 LCD常采用交流驅(qū)動(dòng), 通常采用異或門(mén)把顯示控制信號(hào)和顯示頻率信號(hào)合并為交變的驅(qū)動(dòng)信號(hào), 如圖所示。當(dāng)顯示控制電極上的波形與公共電極上的方波相位相反時(shí), 則為顯示狀態(tài)。顯示控制信號(hào)由C端輸入, 高電平為顯示狀態(tài)。顯示頻率信號(hào)是一個(gè)方波。當(dāng)異或門(mén)的C端為低電平時(shí), 輸出端B的電位與A端相同, LCD兩端的電壓為0, LCD不顯示,當(dāng)異或門(mén)的C端為高電平時(shí), B端的電位

26、與A端相反, LCD兩端呈現(xiàn)交替變化的電壓, LCD顯示。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)點(diǎn)陣字符型液晶顯示模塊接口EPSON公司生產(chǎn)的EA-D系列點(diǎn)陣式液晶顯示模塊內(nèi)部結(jié)構(gòu)如圖所示。它由點(diǎn)陣式液晶顯示面板、SED1287專用集成電路和4個(gè)列驅(qū)動(dòng)器組成。SED1278完成顯示模塊的時(shí)序控制, 同時(shí)也可以驅(qū)動(dòng)16行40列的點(diǎn)陣庫(kù)。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)顯示數(shù)據(jù)存儲(chǔ)器(DDRAM)與顯示屏幕的物理位置是一一對(duì)應(yīng)的, 當(dāng)給顯示數(shù)據(jù)存儲(chǔ)器的某一單元寫(xiě)入一個(gè)字符的編碼時(shí), 該字符就在對(duì)應(yīng)的位置上顯示出來(lái)。DDRAM與顯示屏的物理位置對(duì)應(yīng)關(guān)系如下表所示。00 01 02 03 04 05 06 07

27、 08 09 0A 0B 0C 0D 0E 0F 10 11 12 1340 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 5314 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 2754 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 6712341 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20顯示 列地址 號(hào)行號(hào)片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)點(diǎn)陣字符型液晶模塊

28、與單片機(jī)的直接接口片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)液晶顯示模塊的R/W和RS信號(hào)由8051單片機(jī)的低8位地址線來(lái)控制,顯示模塊的E信號(hào)則由單片機(jī)的最高地址線P2.7和讀RD、寫(xiě)WR信號(hào)線組成的聯(lián)合邏輯電路來(lái)控制,從而可得該接口電路的命令寫(xiě)入地址為7FF0H,命令讀取地址為7FF1H,數(shù)據(jù)操作地址為7FF2H。主程序中首先調(diào)用液晶模塊初始化子程序,初始化內(nèi)容包括將功能設(shè)置(8位字長(zhǎng)、2行、57點(diǎn)陣)、清屏、設(shè)置輸入方式和設(shè)置顯示方式及光標(biāo)等,需要注意的是每寫(xiě)入一條命令,都應(yīng)先檢查忙標(biāo)志BF,只有當(dāng)BF=0時(shí)才能執(zhí)行下一條指令。自定義漢字字符子程序中先設(shè)定CGRAM首地址,然后依次向CGRAM中寫(xiě)入各個(gè)自定義漢字的字模數(shù)據(jù);接著設(shè)定顯示字符在液晶屏上的位置,即DDRAM的地址,最后將要顯示的字符代碼分別寫(xiě)入DDRAM。對(duì)于CGROM中的字符代碼可以通過(guò)查CGROM字符編碼表得到,而自定義漢字字符的代碼則為00H07H。 片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù)點(diǎn)陣字符型液晶模塊與單片機(jī)的間接接口片機(jī)學(xué)習(xí)鍵盤(pán)與顯示器接口技術(shù) 間接方式接口電路通過(guò)單片機(jī)的并行I/O端口引腳實(shí)現(xiàn)對(duì)液晶顯示模塊的間接控制。液晶顯示模塊的RS、R/W和E信號(hào)分別由8051單片機(jī)的P2.1、p2.2和P2.3來(lái)控制,與直接方式不同,間接控制方式不是通過(guò)固定的接口地址,而是通過(guò)單片機(jī)I/O端口引腳來(lái)

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論