TCP/IP的以太網(wǎng)LCD電子標(biāo)簽系統(tǒng)設(shè)計(jì)
在硬件服務(wù)層上,我們采用面向?qū)ο蟮?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/設(shè)計(jì)">設(shè)計(jì)方法將LCD顯示單元、按鈕、鍵盤(pán)、四色燈、TCP/IP封裝成一個(gè)個(gè)的對(duì)象。這樣也便于今后硬件服務(wù)系統(tǒng)的擴(kuò)充。
由于我們采用的LCD顯示單元,其顯示內(nèi)容豐富,能顯示數(shù)字、字符、圖形、圖片等絕大部分?jǐn)?shù)據(jù),并且支持彩色顯示。本部分的封裝是整個(gè)系統(tǒng)的核心和關(guān)鍵,因此我們?cè)?a class="contentlabel" href="http://butianyuan.cn/news/listbylabel/label/設(shè)計(jì)">設(shè)計(jì)時(shí)采用了Composite模式,將文本、直線(xiàn)、圓、矩形、圖片等分別封裝成對(duì)象,通過(guò)一個(gè)公共的抽象類(lèi)displayObject的接口來(lái)實(shí)現(xiàn)各自在LCD顯示單元上的重畫(huà)(paint)功能,將這些對(duì)象的公共屬性存放于接口中,而各自的個(gè)體屬性則分別放于各自的類(lèi)定義中。
LCD顯示單元和這些待顯示數(shù)據(jù)對(duì)象之間為包含關(guān)系(Com.posite)。這樣設(shè)計(jì)的特點(diǎn)是按照LCD電子標(biāo)簽系統(tǒng)的自然組成對(duì)象劃分類(lèi),各自獨(dú)立封裝,可擴(kuò)展性非常好,并且結(jié)構(gòu)簡(jiǎn)單。
由于本系統(tǒng)基于TCP/IP的以太網(wǎng),直接采用TCP/IP進(jìn)行點(diǎn)對(duì)點(diǎn)的通信,所以整個(gè)類(lèi)結(jié)構(gòu)比較簡(jiǎn)單,LCD電子標(biāo)簽系統(tǒng)的封裝結(jié)構(gòu)如圖5所示。
圖5 電子標(biāo)簽系統(tǒng)的類(lèi)封裝系統(tǒng)圖
由于目前的LCD還不支持真彩,因此在我們的設(shè)計(jì)中單獨(dú)采用一個(gè)COLOR類(lèi)來(lái)存放能夠支持的色彩對(duì)象。其中Device類(lèi)捆綁TCP/IP芯片類(lèi)來(lái)接收發(fā)送數(shù)據(jù),LCD顯示屏以及其他的外設(shè)都繼承Device類(lèi),以獲取數(shù)據(jù)傳輸和接收功能。數(shù)字、字符、圖形等則繼承抽象類(lèi)displayObject類(lèi)。這樣設(shè)計(jì)的一個(gè)很明顯的優(yōu)勢(shì)就是:今后如果有什么新的設(shè)備或顯示功能添加,不會(huì)影響到原來(lái)已經(jīng)設(shè)計(jì)調(diào)試好的功能。
其c++結(jié)構(gòu)代碼如下:
圖6為采用本方法開(kāi)發(fā)的單個(gè)電子標(biāo)簽屏幕顯示系統(tǒng)的設(shè)計(jì)操作界面。圖中顯示的為主控計(jì)算機(jī)下發(fā)的一個(gè)字符串對(duì)象、一個(gè)圖片對(duì)象和兩個(gè)直線(xiàn)對(duì)象。
圖6 電子標(biāo)簽顯示圖
3、結(jié)語(yǔ)
本文介紹了基于TCP/IP的以太網(wǎng)LCD電子標(biāo)簽系統(tǒng)設(shè)計(jì),提出并實(shí)現(xiàn)了基于面向?qū)ο蠛蛙浖O(shè)計(jì)模式的裝設(shè)計(jì)方法,在實(shí)際使用中代碼靈活、結(jié)構(gòu)簡(jiǎn)單、系統(tǒng)穩(wěn)定,而且維護(hù)起來(lái)也十分方便。
tcp/ip相關(guān)文章:tcp/ip是什么
評(píng)論