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