基于USB的嵌入式LCD圖文顯示系統(tǒng)的設(shè)計(jì)
3.4 電源部分設(shè)計(jì)
本系統(tǒng)的電源部分使用 LM7805芯片進(jìn)行穩(wěn)壓后提供單片機(jī) 5V的電壓。其電源部分電路的設(shè)計(jì)如圖 4所示。該電源部分電路,使用四個(gè) 1N4004二極管構(gòu)成整流橋,可以輸入直流或是交流 9V電源,然后再通過(guò) 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è)部分組成:?jiǎn)纹瑱C(jī)系統(tǒng)運(yùn)行程序、主機(jī) PC上的 USB設(shè)備驅(qū)動(dòng)程序和主機(jī)上的客戶(hù)應(yīng)用程序。單片機(jī)系統(tǒng)運(yùn)行程序按功能可以劃分為 USB通信程序、單片機(jī)對(duì)擴(kuò)展存儲(chǔ)器訪(fǎng)問(wèn)程序和 LCD顯示程序,其中 USB通信程序的功能是實(shí)現(xiàn) USB設(shè)備枚舉和數(shù)據(jù)傳輸;設(shè)備驅(qū)動(dòng)程序是連接設(shè)備和主機(jī)應(yīng)用程序的紐帶,它向上提供應(yīng)用程序的訪(fǎng)問(wèn)接口(API),向下則實(shí)現(xiàn)對(duì)具體設(shè)備的訪(fǎng)問(wèn)和管理功能,在 USB體系的中間起到信息轉(zhuǎn)換和傳遞的中介作用。本系統(tǒng)采用 Driverworks開(kāi)發(fā)WDM型USB設(shè)備驅(qū)動(dòng)程序;應(yīng)用程序是以 .NET為平臺(tái)進(jìn)行開(kāi)發(fā)的,主要功能是在設(shè)備驅(qū)動(dòng)程序中查找設(shè)備,與設(shè)備交換數(shù)據(jù),并將設(shè)備發(fā)送來(lái)的數(shù)據(jù)進(jìn)行處理和顯示。
PC軟件在開(kāi)始時(shí),先進(jìn)行控件及窗體的初始化,然后可以錄入數(shù)據(jù)(漢字、英文字母、數(shù)字或時(shí)間),選擇字體及字號(hào),并對(duì)所加載數(shù)據(jù)通過(guò)點(diǎn)陣生成算法生成下位機(jī)數(shù)據(jù)。然后進(jìn)行數(shù)據(jù)傳輸,如果 PC軟件找到設(shè)備即可與之進(jìn)行通信(首先主機(jī)能發(fā)現(xiàn)硬件設(shè)備并正常驅(qū)動(dòng)),否則跳出 USB傳輸模塊并返回。在下位機(jī)固件程序中,在設(shè)備接入主機(jī)后,首先對(duì)下位機(jī)進(jìn)行系統(tǒng)初始化,然后進(jìn)行 USB連接,被主機(jī)識(shí)別并能正常驅(qū)動(dòng),進(jìn)入正常使用狀態(tài),等待數(shù)據(jù)傳輸。如果有 PC數(shù)據(jù)傳輸,則調(diào)用通訊模塊接收數(shù)據(jù),并將數(shù)據(jù)存入下位機(jī)存儲(chǔ)器,然后調(diào)用讀數(shù)據(jù)模塊與顯示模塊進(jìn)行顯示;否則直接執(zhí)行讀數(shù)據(jù)模塊并調(diào)用顯示模塊進(jìn)行顯示(顯示上次存儲(chǔ)的數(shù)據(jù))。系統(tǒng)軟件的流程圖如圖 5所示。
5 總結(jié)
本文的創(chuàng)新點(diǎn)是將 USB串行總線(xiàn)和液晶顯示技術(shù)引入到圖文顯示系統(tǒng)中,使系統(tǒng)具有使用簡(jiǎn)單、即插即用、熱插拔、開(kāi)放性、高速、穩(wěn)定、可靠性高和低功耗、體積小、質(zhì)量輕、使用簡(jiǎn)單等優(yōu)點(diǎn);其次,通過(guò)擴(kuò)展存儲(chǔ)芯片,使系統(tǒng)還能夠?qū)崿F(xiàn)信息存儲(chǔ)功能,從而作為便攜器,用作信息的閱讀工具。
評(píng)論