基于USB總線的式LCD圖文顯示系統(tǒng)設(shè)計(jì)
1 引言
本文引用地址:http://2s4d.com/article/247657.htm隨著科技的飛速發(fā)展,電腦的日益普及,人類文明踏入數(shù)字化時(shí)代的不斷成功,數(shù)字化已經(jīng)滲透到人類社會(huì)的各個(gè)角落。而顯示器是人與機(jī)器溝通的重要界面,早期以顯像管顯示器為主,但隨著科技不斷進(jìn)步,各種顯示技術(shù)不斷涌現(xiàn)。液晶顯示器件作為一種成熟的平板顯示器件,它獨(dú)具的低壓、微功耗特性使之可以直接與大規(guī)模集成電路結(jié)合而開發(fā)出一系列具有顯示功能的產(chǎn)品。這些產(chǎn)品不僅改變了人類生活甚至改變了整個(gè)社會(huì)??梢哉f,有信息的地方就離不開顯示,凡是需要顯示的地方就有液晶的用武之地,因此對 LCD顯示技術(shù)的研究和學(xué)習(xí)具有很高的實(shí)際應(yīng)用意義。
2 系統(tǒng)工作原理及總體設(shè)計(jì)
2.1系統(tǒng)工作原理
本系統(tǒng)將應(yīng)用單片機(jī)技術(shù)開發(fā)一種便捷的LCD圖文顯示設(shè)備,采用上/下位機(jī)設(shè)計(jì)方式,通過 USB通訊方式實(shí)現(xiàn)信息傳輸。具體工作原理是:上位機(jī)( PC機(jī))首先安裝驅(qū)動(dòng)程序和 PC應(yīng)用軟件,然后將下位機(jī)系統(tǒng)安裝到主機(jī)機(jī)箱上,將 USB插頭插入主機(jī)(或在機(jī)箱內(nèi)接入),經(jīng)主機(jī)正確識別后,運(yùn)行 PC應(yīng)用軟件生成要顯示的點(diǎn)陣數(shù)據(jù),通過 USB接口將數(shù)據(jù)向下傳輸, LCD圖文顯示設(shè)備通過單片機(jī)控制與主機(jī)進(jìn)行數(shù)據(jù)通訊,將要顯示的點(diǎn)陣數(shù)據(jù)存儲(chǔ)到下位機(jī)存儲(chǔ)單元中,在取得要顯示的數(shù)據(jù)之后,下位機(jī)系統(tǒng)便可實(shí)現(xiàn)顯示,比如系統(tǒng)時(shí)間、CPU占用率、內(nèi)存占用率等等。如果不是安裝到機(jī)箱上,該系統(tǒng)還可作為便攜設(shè)備,用來顯示一些其他的信息,比如上次關(guān)機(jī)時(shí)間、 CPU占用率、內(nèi)存占用率或者作為便攜記事本等。
2.2 系統(tǒng)總體設(shè)計(jì)
LCD圖文顯示系統(tǒng)的系統(tǒng)結(jié)構(gòu)如圖 1所示。單片機(jī) AT89C52是整個(gè) LCD顯示系統(tǒng)的控制核心,主要完成以下的控制功能:配合 PC機(jī)控制 USB通信電路完成硬件檢測、列舉、連接及數(shù)據(jù)的雙向傳輸;控制 LCD顯示電路完成 PC機(jī)數(shù)據(jù)的顯示;控制存儲(chǔ)電路完成數(shù)據(jù)的存取等。
?
?
3 硬件電路設(shè)計(jì)
基于 USB總線的 LCD圖文顯示系統(tǒng)的硬件電路結(jié)構(gòu)主要包括以下幾個(gè)部分:USB通信電路部分、LCD顯示部分、存儲(chǔ)管理部分。模塊的功能都是在以 AT89S52為核心的硬件平臺(tái)上實(shí)現(xiàn)的。
3.1 USB接口電路設(shè)計(jì)
CH372是一個(gè) USB 總線的通用設(shè)備接口芯片,是 CH371的升級產(chǎn)品,是CH375芯片的功能簡化版。CH372內(nèi)置了USB 通訊中的底層協(xié)議,具有省事的內(nèi)置固件模式和靈活的外置固件模式。在內(nèi)置固件模式下,CH372自動(dòng)處理默認(rèn)端點(diǎn)0的所有事務(wù),本地端單片機(jī)只要負(fù)責(zé)數(shù)據(jù)交換,所以單片機(jī)程序非常簡潔。在外置固件模式下,由外部單片機(jī)根據(jù)需要自行處理各種USB 請求,從而可以實(shí)現(xiàn)符合各種 USB 類規(guī)范的設(shè)備。
?
?
圖 2是單片機(jī)與 CH372的連接簡圖, CH372的 D0~D7是專用于與單片機(jī)連接的并行口,接到單片機(jī)的 P0口;片選端接地,始終處于選通狀態(tài); RD和 WR分別接到單片機(jī)的對應(yīng)端,INT#是中斷申請端,接到單片機(jī) INT0上。在本地端,CH372芯片以內(nèi)置的固件程序自動(dòng)處理了 USB通訊中的基本事務(wù),A0引腳與 P3.7相接,當(dāng) A0引腳為高電平時(shí)選擇命令端口,可以寫入命令;當(dāng) A0引腳為低電平時(shí)選擇數(shù)據(jù)端口,可以讀寫數(shù)據(jù)。
3.2 存儲(chǔ)模塊設(shè)計(jì)
系統(tǒng)利用三片 24LC64 來作為擴(kuò)展的存儲(chǔ)器模塊,每片容量為 8KB,共 24KB。它們通過 I2C方式與此平臺(tái)的微處理器 AT89S52相連。芯片引腳 A0,A1, A2用來作為片選,它們直接連接邏輯“0”或者邏輯“ 1"。定義:A2A1A0=000時(shí)選中第一片, A2A1A0=001和 010時(shí)分別選中第二片和第三片。每片 24LC64均需要 13位地址(A0-A12 )。但在微處理器發(fā)出具體字地址之前首先要發(fā)出控制字節(jié)??刂谱止?jié)的組成為: 1010+ "A2AlA0" +R/W位。控制字節(jié)用來確定具體是對哪一個(gè)存儲(chǔ)芯片進(jìn)行讀或者寫操作。被選中的存儲(chǔ)器芯片向微處理器發(fā)送確認(rèn)信號,微處理器確認(rèn)后將發(fā)送具體的 13位地址,A0-A12作為低 13位地址用來進(jìn)行片內(nèi)地址的確定。如此,程序中設(shè)定的第一片 24LC64的起止地址即為:0000F-1FFF,第二片 24LC64的起止地址為 2000F-3FFF,第三片 24LC64的起止地址為 4000F-5FFF。這樣編址可以使得本是獨(dú)立的三片存儲(chǔ)器統(tǒng)一起來,且地址依次遞增。
?
?
?
?
3.4 電源部分設(shè)計(jì)
本系統(tǒng)的電源部分使用 LM7805芯片進(jìn)行穩(wěn)壓后提供單片機(jī) 5V的電壓。其電源部分電路的設(shè)計(jì)如圖 4所示。該電源部分電路,使用四個(gè) 1N4004二極管構(gòu)成整流橋,可以輸入直流或是交流 9V電源,然后再通過 7805穩(wěn)定到 5V供單片機(jī)工作。固定式三端穩(wěn)壓電源 7805是由輸出腳 Vo,輸入腳 Vi和接地腳 GND組成,它的穩(wěn)壓值為 +5V,它屬于 LM78XX系列的穩(wěn)壓器,輸入端接電容可以進(jìn)一步的濾波,輸出端也要接電容可以改善負(fù)載的瞬間影響,電路的穩(wěn)定性也比較好。
?
?
4 軟件設(shè)計(jì)
軟件部分由三個(gè)部分組成:單片機(jī)系統(tǒng)運(yùn)行程序、主機(jī) PC上的 USB設(shè)備驅(qū)動(dòng)程序和主機(jī)上的客戶應(yīng)用程序。單片機(jī)系統(tǒng)運(yùn)行程序按功能可以劃分為 USB通信程序、單片機(jī)對擴(kuò)展存儲(chǔ)器訪問程序和 LCD顯示程序,其中 USB通信程序的功能是實(shí)現(xiàn) USB設(shè)備枚舉和數(shù)據(jù)傳輸;設(shè)備驅(qū)動(dòng)程序是連接設(shè)備和主機(jī)應(yīng)用程序的紐帶,它向上提供應(yīng)用程序的訪問接口(API),向下則實(shí)現(xiàn)對具體設(shè)備的訪問和管理功能,在 USB體系的中間起到信息轉(zhuǎn)換和傳遞的中介作用。本系統(tǒng)采用 Driverworks開發(fā)WDM型USB設(shè)備驅(qū)動(dòng)程序;應(yīng)用程序是以 .NET為平臺(tái)進(jìn)行開發(fā)的,主要功能是在設(shè)備驅(qū)動(dòng)程序中查找設(shè)備,與設(shè)備交換數(shù)據(jù),并將設(shè)備發(fā)送來的數(shù)據(jù)進(jìn)行處理和顯示。
LCD顯示屏相關(guān)文章:lcd顯示屏原理
lcd相關(guān)文章:lcd原理
評論