數(shù)碼顯示管及鍵盤的接口電路_第1頁
數(shù)碼顯示管及鍵盤的接口電路_第2頁
數(shù)碼顯示管及鍵盤的接口電路_第3頁
數(shù)碼顯示管及鍵盤的接口電路_第4頁
數(shù)碼顯示管及鍵盤的接口電路_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 數(shù)字顯示器及鍵盤的接口電路一 顯示器接口電路 單片機應(yīng)用系統(tǒng)中,常使用LED(發(fā)光二極管Light Emitting Diode )、CRT(陰極射線管Cathode Ray Tube)顯示器和LCD(液晶顯示器Liquid Crystal Display )等作為顯示器件。其中LED和LCD應(yīng)用較為廣泛。1。LED顯示器 LED是由若干個發(fā)光二極管組成的。當(dāng)發(fā)光二極管導(dǎo)通時,相應(yīng)的一個點或一個筆劃發(fā)亮。控制不同組合的二極管導(dǎo)通,就能顯示出各種字符。這種筆劃式的七段顯示器,能顯示的字符數(shù)量少,但控制簡單、使用方便。 發(fā)光二極管的陽極連在一起的稱為共陽極顯示器,陰極連在一起的稱為共陰極顯示器。

2、? LED的結(jié)構(gòu)及其工作原理? 通常的七段LED顯示塊中有八個發(fā)光二極管,故也有人叫做八段顯示塊。其中七個發(fā)光二極管構(gòu)成七筆字形“8”。一個發(fā)光二極管構(gòu)成小數(shù)點。七段顯示塊與單片機接口非常容易。只要將一個8位并行輸出口與顯示塊的發(fā)光二極管引腳相連即可。8位并行輸出口輸出不同的字節(jié)數(shù)據(jù)即可獲得不同的數(shù)字或字符。通常將控制發(fā)光二極管的8位字節(jié)數(shù)據(jù)稱為段選碼或段數(shù)據(jù)。? 共陰極結(jié)構(gòu)的數(shù)碼管顯示“0”的段選碼為: 3FH ? D7 D6 D5 D4 D3 D2 D1 D0? 段選碼 dp g f e dc b a? 0 0 1 1 1 1 1 13FH 共陽極與共陰極的段選碼互為反碼,二者之和為FFH

3、。其他一些字形的段選碼如下表:LED的結(jié)構(gòu)及其工作原理點亮顯示器有靜態(tài)和動態(tài)兩種方法。1) 靜態(tài)顯示:當(dāng)顯示某一個字符時,相應(yīng)的發(fā)光二極管恒定地導(dǎo)通或截止。例如七段顯示器的a、b、c、d、e、f導(dǎo)通,g、dp截止,顯示0。靜態(tài)顯示的特點是:每一位都需要一個8位輸出口控制,用于顯示位數(shù)較少(僅一、二位)的場合;較小的電流能得到較高的亮度,可以由8255的輸出口直接驅(qū)動。圖示為三位顯示器的接口邏輯。2)動態(tài)顯示:一位一位地輪流點亮各位顯示器(掃描)。對于每一位顯示器來說,每隔一段時間點亮一次。顯示器的亮度既與導(dǎo)通電流有關(guān),也和點亮?xí)r間與間隔時間的比例有關(guān)。 若顯示器的位數(shù)不大于8位,則控制顯示器公

4、共極電位只需一個8位并行口(稱為掃描口或位選口)??刂聘魑伙@示器所顯示的字形也需一個共用的8位口(稱為段數(shù)據(jù)口),用于顯示位數(shù)稍多的場合,需編寫掃描程序。 8位共陰極顯示器和8155的接口邏輯如圖所示。動態(tài)掃描程序流程圖MOV R0,#78H ; R0指向顯示緩沖區(qū)首地址MOV R3,#7FH ; 存首位位選字MOV A, R3LD0:MOV DPTR,#7F01H;指向PA口MOVX DPTR,A; 送位選字入PA口INC DPTR ; 指向PB口MOV A,R0 ;查段選碼MOVX DPTR,A;段選碼送PB口ACALL DL1 ; 延時lmsINC R0 ;指向顯示緩沖區(qū)下一單元MOV

5、A,R3 ;JNB ACC.0 ,LD1 ;判斷八位顯示完?RR A ; 未顯示完,變?yōu)橄乱晃晃贿x字MOV R3, AAJMP LD0 ; 轉(zhuǎn)顯示下一位LD1: RET段碼表DSEG:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,(78H) “0” “1” “2” “3” “4” “5” “6” “7” “8” “9” “A”7CH,39H,5EH,79H,71H“B” “C” “D” “E” “F”延時lms子程序DL1:MOV R7,#02H; DL:MOV R6,#0FFHDL6:DJNZ R6,DL6 DJNZ R7,DL RET 2LC

6、D顯示器 液晶顯示器(LCD)是一種功耗極低的顯示器件,它廣泛應(yīng)用于便攜式電子產(chǎn)品中,它不僅省電,而且能夠顯示大量的信息,如文字、曲線、圖形等,其顯示界面較之?dāng)?shù)碼管有了質(zhì)的提高。近年來,液晶顯示技術(shù)發(fā)展很快,LCD顯示器已經(jīng)成為僅次于顯像管的第二大顯示產(chǎn)業(yè)。 LCD顯示器由于類型、用途不同,其性能、結(jié)構(gòu)不可能完全相同,但其基本形態(tài)和結(jié)構(gòu)卻是大同小異。二、鍵盤接口電路鍵盤是單片機應(yīng)用系統(tǒng)的一個重要輸入設(shè)備,用于輸入數(shù)據(jù)、干預(yù)系統(tǒng)的工作狀態(tài);1按鍵輸入原理 在單片機應(yīng)用系統(tǒng)中,除了復(fù)位按鍵有專門的復(fù)位電路及專一的復(fù)位功能外,其它按鍵都是以開關(guān)狀態(tài)來設(shè)置控制功能或輸入數(shù)據(jù)的。當(dāng)所設(shè)置的功能鍵或數(shù)字鍵

7、按下時,計算機應(yīng)用系統(tǒng)應(yīng)完成該按鍵所設(shè)定的功能,鍵信息輸入是與軟件結(jié)構(gòu)密切相關(guān)的過程。對于一組鍵或一個鍵盤,總有一個接口電路與CPU相連。CPU可以采用查詢或中斷方式了解有無將鍵輸入,并檢查是哪一個鍵按下,將該鍵號送入累加器ACC,然后通過跳轉(zhuǎn)指令轉(zhuǎn)入執(zhí)行該鍵的功能程序,執(zhí)行完后再返回主程序。2單片機上的按鍵 單片機系統(tǒng)中最常見的是觸點式開關(guān)按鍵, 這些按鍵的連接方式,可分為獨立式按鍵和行列式鍵盤。觸點式按鍵在按下或釋放時,由于機械彈性作用的影響,通常伴隨有一定時間的觸點機械抖動,然后其觸點才穩(wěn)定下來。其抖動過程如圖所示,抖動時間的長短與開關(guān)的機械特性有關(guān),一般為510 ms。在觸點抖動期間檢

8、測按鍵的通與斷狀態(tài),可能導(dǎo)致判斷出錯,即按鍵一次按下或釋放被錯誤地認(rèn)為是多次操作,這種情況是不允許出現(xiàn)的。為了克服按鍵觸點機械抖動所致的檢測誤判,必須采取去抖動措施。這一點可從硬件、軟件兩方面予以考慮。在鍵數(shù)較少時,可采用硬件去抖,而當(dāng)鍵數(shù)較多時,采用軟件去抖。在硬件上可采用在鍵輸出端加R-S觸發(fā)器(雙穩(wěn)態(tài)觸發(fā)器)或單穩(wěn)態(tài)觸發(fā)器構(gòu)成去抖動電路。右圖是一種由R-S觸發(fā)器構(gòu)成的去抖動電路,當(dāng)觸發(fā)器一旦翻轉(zhuǎn),觸點抖動不會對其產(chǎn)生任何影響。電路工作過程如下: 按鍵未按下時,a = 0,b = 1,輸出Q = 1。按鍵按下時,因按鍵的機械彈性作用的影響,使按鍵產(chǎn)生抖動。當(dāng)開關(guān)沒有穩(wěn)定到達b端時,因與非門

9、2輸出為0反饋到與非門1的輸入端,封鎖了與非門1,雙穩(wěn)態(tài)電路的狀態(tài)不會改變,輸出保持為1,輸出Q不會產(chǎn)生抖動的波形。當(dāng)開關(guān)穩(wěn)定到達b端時,因a = 1,b = 0,使Q = 0,雙穩(wěn)態(tài)電路狀態(tài)發(fā)生翻轉(zhuǎn)。當(dāng)釋放按鍵時,在開關(guān)未穩(wěn)定到達a端時,因Q = 0,封鎖了與非門2,雙穩(wěn)態(tài)電路的狀態(tài)不變,輸出Q保持不變,消除了后沿的抖動波形。當(dāng)開關(guān)穩(wěn)定到達a端時,因a = 0,b = 1,使Q = 1,雙穩(wěn)態(tài)電路狀態(tài)發(fā)生翻轉(zhuǎn),輸出Q重新返回原狀態(tài)。由此可見,鍵盤輸出經(jīng)雙穩(wěn)態(tài)電路之后,輸出已變?yōu)橐?guī)范的矩形方波。軟件上采取的措施是:在檢測到有按鍵按下時,執(zhí)行一個10 ms左右(具體時間應(yīng)視所使用的按鍵進行調(diào)整)

10、的延時程序后,再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)電平,若仍保持閉合狀態(tài)電平,則確認(rèn)該鍵處于閉合狀態(tài)。同理,在檢測到該鍵釋放后,也應(yīng)采用相同的步驟進行確認(rèn),從而可消除抖動的影響。3獨立式按鍵 當(dāng)單片機控制系統(tǒng)中只需要幾個功能鍵時,可采用獨立式按鍵結(jié)構(gòu)。獨立式按鍵是直接用I/O口線構(gòu)成單個按鍵電路,其特點是每個按鍵單獨占用一根I/O口線,每個按鍵的工作不會影響其它I/O口線的狀態(tài)。 獨立式按鍵電路配置靈活,軟件結(jié)構(gòu)簡單,但每個按鍵必須占用一根I/O口線,因此,在按鍵較多時,I/O口線浪費較大,不宜采用。獨立式按鍵的典型應(yīng)用如圖所示。其軟件常采用查詢式結(jié)構(gòu)。先逐位查詢每根I/O口線的輸入狀態(tài),如某一根

11、I/O口線輸入為低電平,則可確認(rèn)該I/O口線所對應(yīng)的按鍵已按下,然后,再轉(zhuǎn)向該鍵的功能處理程序。4、行列式鍵盤接口電路單片機系統(tǒng)中,若使用按鍵較多時,通常采用行列式(也稱行列式)鍵盤。用I/O口線組成行、列結(jié)構(gòu),按鍵設(shè)置在行列的交點上。例如用22的行、列可構(gòu)成4個鍵的鍵盤,44的行列結(jié)構(gòu)可構(gòu)成16個鍵的鍵盤。因此,在按鍵數(shù)量較多時,可以節(jié)省I/O口線。1) 鍵盤工作原理:行列式鍵盤的按鍵設(shè)置在行、列線交點上。行線通過上拉電阻接到+5V上。當(dāng)無鍵按下時,行線處于高電平狀態(tài);當(dāng)有鍵按下時,行、列線將導(dǎo)通,此時,行線電平將由與此行線相連的列線電平?jīng)Q定。這是識別按鍵是否按下的關(guān)鍵。然而,行列式鍵盤中的

12、行線、列線和多個鍵相連,各按鍵間將相互影響,因此,必須將行線、列線信號配合起來作適當(dāng)處理,才能確定有無按鍵按下,及按鍵的位置。2) 按鍵的識別:識別按鍵的方法很多,最常見的方法是掃描法。由列線送入全“0”掃描字、行線讀入行線狀態(tài)來判斷的。其方法是:給列線的所有I/O線均置成低電平,然后將行線電平狀態(tài)讀入累加器A中。如果有鍵按下,總會有一根行線電平被拉至低電平,從而使行輸入不全為1。鍵盤中哪一個鍵按下是由列線逐列置低電平后,檢查行輸入狀態(tài)。其方法是:依次給列線送低電平,然后查所有行線狀態(tài),如果全為1,則所按下之鍵不在此列。如果不全為1,則所按下的鍵必在此列。而且是在與電平為“0”的行線相交點上的

13、那個鍵。3) 鍵盤的編碼鍵盤上的每個鍵都有一個鍵值。對于獨立式按鍵鍵盤,因按鍵數(shù)量少,可根據(jù)實際需要靈活編碼。對于矩陣式鍵盤,按鍵的位置由行號和列號唯一確定,因此可分別對行號和列號進行二進制編碼,然后將兩值合成一個字節(jié),高4位是行號,低4位是列號。如圖中的5號鍵,它位于第1行,第0列,因此,其鍵盤編碼應(yīng)為40H。采用上述編碼對于不同行的鍵離散性較大,不利于散轉(zhuǎn)指令對按鍵進行處理。因此,可采用依次排列鍵號的方式對按排進行編碼。以上圖的44鍵盤為例,可將鍵號編碼為:01H、02H、03H、0EH、0FH、10H等16個鍵號。編碼相互轉(zhuǎn)換可通過計算或查表的方法實現(xiàn)。4) 鍵盤掃描方式 單片機應(yīng)用系統(tǒng)

14、中,對按鍵的處理是通過鍵盤掃描來完成的。鍵盤掃描只是CPU工作的一個內(nèi)容之一。CPU在忙于各項工作任務(wù)時,如何兼顧鍵盤掃描,即既保證不失時機地響應(yīng)鍵操作,又不過多占用CPU時間。 鍵盤的掃描方式有編程掃描方式、定時掃描方式和中斷掃描方式三種。編程掃描工作方式:在CPU的空閑時間,調(diào)用鍵盤掃描子程序,來響應(yīng)鍵輸入要求。在執(zhí)行鍵功能程序時,CPU不再響應(yīng)鍵輸入要求。a)編程掃描工作方式下面以圖的8155擴展I/O口組成的行列式鍵盤為例,介紹編程掃描工作方式的工作過程與鍵盤掃描子程序流程。圖中的48 =32個鍵由8位PA口構(gòu)成列線,4位PC口組成行線。在鍵盤掃描子程序中完成下述幾個功能:(1)判斷鍵

15、盤上有無鍵按下:PA口輸出全掃描字00H,讀PC口狀態(tài),PC0PC3為全l,則鍵盤無鍵按下,若不全為1,則有鍵按下。(2)去鍵的機械抖動影響:在判斷有鍵按下后,軟件延時一段時間再判斷鍵盤狀態(tài),如果仍為有鍵按下狀態(tài),則認(rèn)為有一個確定的鍵按下,否則按鍵抖動處理。(3)求按下鍵的鍵號:根據(jù)前述鍵盤掃描法,進行逐列置0掃描。上圖中32個鍵的鍵值分布如下(鍵值由4位十六進制數(shù)碼組成,前兩位是列的值,即A口數(shù)據(jù),后兩位是行的值,即C口數(shù)據(jù),X為任意值): FEXE FDXE FBXE F7XE EFXE DFXE BFXE7FXE FEXD FDXD FBXD F7XD EFXD DFXD BFXD 7F

16、XD FEXB FDXB FBXB F7XB EFXB DFXB BFXB 7FXB FEX7 FDX7 FBX7 F7X7 EFX7 DFX7 BFX7 7FX7對應(yīng)的按鍵編號如圖所示。按照行首鍵號與列號相加的辦法處理,每行的行首鍵號依次為:0,8,16,24,列首依列線順序為07。掃描時從零電平對應(yīng)的位可以找出行首鍵號與相應(yīng)的列號,相加后即得到鍵值。(4)鍵閉合一次僅進行一次功能操作:按鍵閉合一次只能進行一次功能操作,因此,等按鍵釋放后才能根據(jù)鍵號執(zhí)行相應(yīng)的功能鍵操作。右圖為鍵盤掃描子程序框圖,CPU空閑時調(diào)用該程序。b)定時掃描方式定時掃描方式就是每隔一段時間對鍵盤掃描一次,它利用單片機

17、內(nèi)部的定時器產(chǎn)生一定時間(例如10 ms)的定時,當(dāng)定時時間到就產(chǎn)生定時器溢出中斷。CPU響應(yīng)中斷后對鍵盤進行掃描,并在有鍵按下時識別出該鍵,再執(zhí)行該鍵的功能程序。定時掃描方式的硬件電路與編程掃描方式相同。c)中斷掃描方式采用上述兩種鍵盤掃描方式時,無論是否按鍵,CPU都要定時掃描鍵盤,而單片機應(yīng)用系統(tǒng)工作時,并非經(jīng)常需要鍵盤輸入,因此,CPU經(jīng)常處于空掃描狀態(tài)。 為提高CPU工作效率,可采用中斷掃描工作方式。其工作過程如下:當(dāng)無鍵按下時,CPU處理自己的工作,當(dāng)有鍵按下時,產(chǎn)生中斷請求,CPU轉(zhuǎn)去執(zhí)行鍵盤掃描子程序,并識別鍵號。 上圖是一種簡易鍵盤接口電路,該鍵盤是由8031 P1口的高、低

18、字節(jié)構(gòu)成的44鍵盤。鍵盤的列線與P1口的高4位相連,鍵盤的行線與P1口的低4位相連,因此,P1.4P1.7是鍵輸出線,P1.0P1.3是掃描輸入線。圖中的4輸入與門用于產(chǎn)生按鍵中斷,其輸入端與各列線相連,再通過上拉電阻接至+5V電源,輸出端接至8031的外部中斷輸入端。 具體工作如下:當(dāng)鍵盤無鍵按下時,與門各輸入端均為高電平,保持輸出端為高電平;當(dāng)有鍵按下時,INT0端為低電平,向CPU申請中斷,若CPU開放外部中斷,則會響應(yīng)中斷請求,轉(zhuǎn)去執(zhí)行鍵盤掃描子程序。三、典型的鍵盤顯示器接口電路在單片機應(yīng)用系統(tǒng)中,鍵盤和顯示器往往需同時使用,為節(jié)省I/O口線,可將鍵盤和顯示電路做在一起,構(gòu)成實用的鍵盤

19、、顯示電路。例圖是用8155并行擴展I/O口構(gòu)成的典型的鍵盤、顯示接口電路。由圖可知,LED顯示器采用共陰極數(shù)碼管。8155的B口用作數(shù)碼管段選碼輸出口;A口用作數(shù)碼管位選碼輸出口,同時,它還用作鍵盤列選口;C口用作鍵盤行掃描信號輸入口。當(dāng)其選用4根口線時,可構(gòu)成48鍵盤,選用6根口線時,可構(gòu)成68鍵盤。LED采用動態(tài)顯示軟件譯碼,鍵盤采用逐列掃描查詢工作方式,LED的驅(qū)動采用74LS244總線驅(qū)動器。 由于鍵盤與顯示共用一個接口電路,因此,在軟件設(shè)計中應(yīng)綜合考慮鍵盤查詢與動態(tài)顯示,通??蓪㈡I盤掃描程序中的去抖動延時子程序用顯示子程序代替。鍵盤、顯示器共用一個接口電路的設(shè)計方法除上述方案外,還可采用專用的鍵盤、顯示器接口的芯片Intel 8279??删幊替I盤/顯示器接口Intel8279 Intel 8279是一種可編程鍵盤/顯示器接口芯片,8279的內(nèi)部功能可分為鍵盤功能塊、顯示功能塊、控制功能塊、與CPU接口功能塊。鍵盤輸入時,它提供自動掃描,能與按鍵或傳感器組成的矩陣相連,接收輸入信息,它能自動消除開關(guān)抖動并能對多鍵同時按下提供保護。顯示輸

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論