- 相關(guān)推薦
可視化編程串行控制中文字庫液晶顯示模塊VLCM320240
摘要:VLCM320240是一款具有可視化編程圖形界面、采用串行控制、內(nèi)含GB2312簡(jiǎn)體中文字庫及64kB自造圖庫的液晶圖形顯示模塊。該模塊采用臺(tái)灣EDT公司的藍(lán)膜負(fù)顯EW32F10BCW?具有320×240的點(diǎn)陣分辨率和CCFT背光源。文中介紹了該模塊的性能特點(diǎn)、接口管腳說明、用戶命令及主要參數(shù),同時(shí)給出了VLCM320240與單片機(jī)的接口電路及相應(yīng)顯示程序。關(guān)鍵詞:可視化編程;串行控制;中文字庫;單片機(jī)
。币
圖形點(diǎn)陣液晶顯示模塊由于具有顯示信息豐富、功耗低、體積小、重量輕、壽命長(zhǎng)、不產(chǎn)生電磁輻射污染等優(yōu)點(diǎn)而成為單片機(jī)系統(tǒng)中理想的顯示器件,并被廣泛應(yīng)用于單片機(jī)控制的智能儀器儀表、工業(yè)控制領(lǐng)域、通信器材和家用電器中。但普通圖形點(diǎn)陣液晶顯示模塊用于顯示圖形界面時(shí)是非常困難的,首先圖形顯示要占用大量的用戶ROM空間。以320×240點(diǎn)陣液晶模塊為例,顯示一幅圖片(全屏幕)占用的ROM空間為?320×240?/8=9.6kByte,這對(duì)片內(nèi)僅有幾k字節(jié)的FLASH閃存單片機(jī)來說是不可能的;其次,顯示圖片過程極其復(fù)雜,應(yīng)根據(jù)待顯示的圖形計(jì)算好各點(diǎn)陣的位置,再以字節(jié)為單位寫入數(shù)據(jù)來控制各點(diǎn)陣的亮滅。如果顯示多幅圖片,復(fù)雜程度更加令人生畏。
另外,圖形點(diǎn)陣液晶顯示模塊在顯示漢字時(shí)也存在著占用ROM容量大、與單片機(jī)的硬件接口電路復(fù)雜以及接口時(shí)序復(fù)雜,軟件編程繁復(fù)等問題。
正是由于上述幾點(diǎn)不足限制了圖形點(diǎn)陣液晶顯示模塊在生成復(fù)雜精美的中文人機(jī)界面時(shí)的應(yīng)用。而中文界面及圖形顯示又是電子產(chǎn)品人機(jī)界面發(fā)展的必然趨勢(shì)。實(shí)際上任何一種顯示界面本質(zhì)上都是由若干像素排列組合生成,若能將圖形點(diǎn)陣液晶模塊顯示控制的底層操作集成在模塊內(nèi)的單片機(jī)中,并將生成顯示界面中所用到的各種圖形界面和標(biāo)準(zhǔn)漢字庫預(yù)先存入模塊中,用戶使用時(shí)就可以僅通過串口向其發(fā)送簡(jiǎn)單的控制命令以生成圖文顯示界面,從而使得復(fù)雜的圖形界面生成變得簡(jiǎn)單容易,最終解決電子產(chǎn)品開發(fā)過程中難以生成精美的人機(jī)界面的難題。
。郑蹋茫停常玻埃玻矗凹词且豢罹哂猩鲜龉δ艿膱D形點(diǎn)陣液晶模塊。該模塊是由深圳研安佳公司推出的。
2VLCM320240性能特點(diǎn)
。郑蹋茫停常玻埃玻矗皥D形點(diǎn)陣液晶顯示模塊具有如下主要特點(diǎn):
●該液晶顯示模塊采用臺(tái)灣EDT公司的藍(lán)膜負(fù)顯EW32F10BCW?它具有320×240的點(diǎn)陣分辨率和CCFT背光源;
●內(nèi)部含有臺(tái)灣華邦公司生產(chǎn)的高速單片機(jī)W78E516BP;
●內(nèi)含GB231216×16點(diǎn)陣國(guó)標(biāo)一級(jí)、二級(jí)簡(jiǎn)體字庫,字庫中的漢字可顯示在液晶屏的任意位置;
●內(nèi)含ASCⅡ8×16點(diǎn)陣英文字庫;
●內(nèi)含64kB自造圖庫或美術(shù)字庫、顯示資料現(xiàn)場(chǎng)可在線編程FLASH;
●內(nèi)含SED1330FLCD控制器及32kB顯示緩沖區(qū);
●配套VisualLCM仿真調(diào)試軟件可在電腦上獨(dú)立完成顯示界面的編輯、資料下載及界面生成;
●具有標(biāo)準(zhǔn)RS232串行通信控制,可方便地由上位計(jì)算機(jī)或單片機(jī)進(jìn)行控制;
●具有最小的硬件資源占用,使用單片機(jī)做上位機(jī)時(shí),可使用兩根I/O口線模擬串口,而使用TTL電平控制時(shí),僅需一根I/O口線。
VLCM320240留給用戶的接口有兩個(gè),即電源口POWER和RS232通信口。
其中電源口包括以下幾個(gè)端口:
●+9V電源:穩(wěn)壓后供給單片機(jī);
●GND:模塊電源地;
●+5V電源:供逆變器使用。
。遥樱玻常部诙x如下:
●BUSY:忙標(biāo)志輸出,低電平時(shí)為忙;
●RX:控制命令輸入,其中有8位數(shù)據(jù)位,1個(gè)起始位,一個(gè)停止位;
●GND:信號(hào)地。
。秤脩裘
在具體使用時(shí),可通過上位機(jī)的用戶命令來控制VLCM320240的顯示.
漢字或ASCII字符顯示命令中的參數(shù)為所顯示漢字的兩個(gè)字節(jié)國(guó)標(biāo)碼或ASCII字符代碼。
。淳唧w應(yīng)用
VLCM320240可視化
編程液晶顯示模塊可廣泛應(yīng)用于顯示信息內(nèi)容豐富或顯示信息容量巨大的應(yīng)用場(chǎng)合,如信息家電,通信器材、工業(yè)控制、智能儀器儀表等領(lǐng)域,模塊在使用時(shí)可分為顯示界面生成及實(shí)時(shí)顯示兩個(gè)步驟。
4.1顯示界面的模擬生成
顯示界面的生成在上位計(jì)算機(jī)上完成,利用可視化編程軟件VisualLCM可將系統(tǒng)設(shè)計(jì)中用到的各種圖形或文字進(jìn)行歸納并編輯成圖案,但圖案的大小不得超過320×240像素,同時(shí)圖案必須選為黑白兩色。然后將編輯好的圖案下載到模塊ISPFLASH存儲(chǔ)器中,圖案的數(shù)量應(yīng)小于256幅。對(duì)于顯示較多的文字信息,也應(yīng)盡量生成美觀的藝術(shù)字體并保存為圖案。這樣可大大加快文字信息的顯示速度。圖案下載到模塊后,可通過串口發(fā)送BMP命令以便將任意一張圖片在液晶模塊的任意位置上顯示。
4.2實(shí)時(shí)信息顯示
由上位計(jì)算機(jī)生成的各種圖形信息最終要在單片機(jī)的控制下實(shí)現(xiàn)相應(yīng)信息的顯示。圖1所示是以AT89C52為例給出的單片機(jī)與VLCM320240的接口電路。
在圖1所示的電路中,AT89C52的RXD端與VLCM320240RS232通信口的BUSY端相連,而將單片機(jī)TXD端與模塊RX端相連,為保證波特率的準(zhǔn)確性,應(yīng)將AT89C52的晶振選取為11.0592MHz。此外,在編制相應(yīng)的顯示控制軟件時(shí),還應(yīng)注意以下幾點(diǎn):
●串行口模式應(yīng)設(shè)為模式1(1個(gè)起始位,8?jìng)(gè)數(shù)據(jù)位,1個(gè)停止位);
●波特率設(shè)應(yīng)當(dāng)為19200(TH1=TL1=0FDH,SMOD=1);
●在發(fā)送命令之前應(yīng)檢測(cè)模塊為閑態(tài)(BUSY=1)?否則所發(fā)的命令可能失效;
●串口發(fā)送的必須是完整命令的ASCII碼(漢字為其機(jī)內(nèi)碼,ASCII字符為其ASCII碼),如命令“BMP0B000C0D”,實(shí)際由串口發(fā)送的內(nèi)容是“424D503042303030433044”,順序?yàn)椋?br />
“B→M→P→0→B→0→0→0→C→0→D”;
●在每條命令的首末還要加上命令結(jié)束碼“回車鍵"的ASCII碼“0DH”,以表明該命令的結(jié)束。
●若單片機(jī)AT89C52的串口已被占為它用,那么用一根口線來摸擬生成一個(gè)通訊協(xié)議為(19200,N,8,1)的軟串口發(fā)送命令即可。
下面給出與上述電路配套的顯示控制子程序:
;位定義
。拢眨樱伲拢桑裕校常欢x忙信號(hào)線
;數(shù)據(jù)字節(jié)定義
XVEQU30H;定義參數(shù)x
。兀龋郑牛眩眨常保龋欢x參數(shù)xH
。伲郑牛眩眨常玻;定義參數(shù)y
。危眨拢牛遥牛眩眨常常;定義參數(shù)n
。祝桑模裕龋牛眩眨常矗;定義參數(shù)w
。龋桑牵龋裕牛眩眨常担;定義參數(shù)h
ASCXHEQU36H;定義參數(shù)x高四位
。粒樱茫兀蹋牛眩眨常罚;定義參數(shù)x低四位
。粒樱茫兀龋龋牛眩眨常福;定義參數(shù)xH高四位
。粒樱茫兀龋蹋牛眩眨常梗;定義參數(shù)xH低四位
。粒樱茫伲龋牛眩眨常粒龋欢x參數(shù)y高四位
。粒樱茫伲蹋牛眩眨常拢;定義參數(shù)y低四位
ASCNHEQU3CH;定義參數(shù)n高四位
ASCNLEQU3DH;定義參數(shù)n低四位
ASCWHEQU3EH;定義參數(shù)w高四位
ASCWLEQU3FH;定義參數(shù)w低四位
。粒樱茫龋龋牛眩眨矗埃;定義參數(shù)h高四位
。粒樱茫龋蹋牛眩眨矗保龋欢x參數(shù)h低四位
。怀跏蓟映绦
。桑危桑裕樱桑希海停希郑樱茫希危#担埃;串行口方式1
。停希郑裕停希,#21H
MOVTH1,#0FDH;波特率=19200?
。停希郑裕蹋?#0FDH
。希遥蹋校茫希?#80H;SMOD=1
。樱牛裕拢裕遥保粏(dòng)T1
。遥牛
;設(shè)置漢字或ASCII字符顯示首地址命令
ORDERHZA:MOVA?XV
。停希郑遥?#REGASCXH
LCALLHASC;將參數(shù)x轉(zhuǎn)換為
兩個(gè)字節(jié)的ASCII碼
。停希郑?XHV
MOVR0?#REGASCXHH
。蹋茫粒蹋蹋龋粒樱茫粚(shù)xH轉(zhuǎn)換為
兩個(gè)字節(jié)的ASCII碼
。停希郑?YV
MOVR0?#REGASCYH
。蹋茫粒蹋蹋龋粒樱;將參數(shù)y轉(zhuǎn)換為
兩個(gè)字節(jié)的ASCII碼
。蹋茫粒蹋蹋拢眨樱伲茫
。停希郑?#“H”;發(fā)送命令碼HZA
的ASCII碼
。蹋茫粒蹋蹋樱牛危模拢伲裕
。停希郑?!埃凇
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVA?!埃痢
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVR0?#REGASCXHH
。蹋茫粒蹋蹋樱牛危模茫樱话l(fā)參數(shù)H的ASCII碼
。停希郑遥?#REGASCXH
。蹋茫粒蹋蹋樱牛危模茫;發(fā)參數(shù)x的ASCII碼
。停希郑遥?#REGASCYH
。蹋茫粒蹋蹋樱牛危模茫;發(fā)參數(shù)y的ASCII碼
LJMPORDEREND
。伙@示漢字串子程序
。希遥模牛遥龋?LCALLBUSYCK;檢測(cè)模塊閑狀態(tài)
。停希郑?!埃取
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVA?!埃凇
LCALLSENDBYTE
。停希郑?#“D”
。蹋茫粒蹋蹋樱牛危模拢伲裕
NEXTHZ:CLRA;取漢字的高八位內(nèi)碼
MOVCA,@A+DPTR
INCDPTR;調(diào)整內(nèi)碼指針
。蹋茫粒蹋蹋樱牛危模拢伲裕
CLRA;取漢字的低八位內(nèi)碼
。停希郑茫,@A+DPTR
INCDPTR;調(diào)整內(nèi)碼指針
。蹋茫粒蹋蹋樱牛危模拢伲裕
。模剩危冢遥,NEXTHZ
MOVA,#0DH;命令結(jié)束
。蹋茫粒蹋蹋樱牛危模拢伲裕
。遥牛
;顯示ASCII字符串子程序
。希遥模牛遥粒樱茫桑桑
。蹋茫粒蹋蹋拢眨樱伲茫
。停希郑粒!埃取保
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVA,!埃凇
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVA?!埃摹
LCA
。蹋蹋樱牛危模拢伲裕
NEXTASCII?CLRA?。粒樱茫桑纱a
MOVCA?@A+DPTR
。桑危茫模校裕
。蹋茫粒蹋蹋樱牛危模拢伲裕
。模剩危冢遥?NEXTASCII
。停希郑?#0DH
LCALLSENDBYTE
。遥牛
;清屏子程序
。希遥模牛遥茫蹋遥海蹋茫粒蹋蹋拢眨樱伲茫
。停希郑,#“C”
。蹋茫粒蹋蹋樱牛危模拢伲裕
。停希郑?#“L”
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVA?!埃摇
。蹋茫粒蹋蹋樱牛危模拢伲裕
。蹋剩停校希遥模牛遥牛危
;顯示下載到模塊內(nèi)圖形子程序
。希遥模牛遥拢停校海停希郑粒兀
。停希郑遥,#REGASCXH
LCALLHASC;將參數(shù)x轉(zhuǎn)換為兩個(gè)
字節(jié)的ASCII碼
。停希郑,XHV
。停希郑遥?#REGASCXHH
LCALLHASC;將參數(shù)xH轉(zhuǎn)換為兩
個(gè)字節(jié)的ASCII碼
MOVA,YV
。停希郑遥,#REGASCYH
。蹋茫粒蹋蹋龋粒樱;將參數(shù)y轉(zhuǎn)換為兩個(gè)
字節(jié)的ASCII碼
。停希郑,NUBER
。停希郑遥?#REGASCNH
。蹋茫粒蹋蹋龋粒樱;將參數(shù)n轉(zhuǎn)換為兩
個(gè)字節(jié)的ASCII碼
。蹋茫粒蹋蹋拢眨樱伲茫;檢測(cè)模塊閑狀態(tài)
。停希郑,!埃隆;先發(fā)送命令碼
BMP的ASCII碼
。蹋茫粒蹋蹋樱牛危模拢伲裕
。停希郑,#“M”
。蹋茫粒蹋蹋樱牛危模拢伲裕
MOVA?!埃小
。蹋茫粒蹋蹋樱牛危模拢伲裕
。停希郑遥埃#遥牛牵粒樱茫危
。蹋茫粒蹋蹋樱牛危模茫樱话l(fā)參數(shù)n的ASCII碼
。停希郑遥埃#遥牛牵粒樱茫兀龋
。蹋茫粒蹋蹋樱牛危模茫樱话l(fā)參數(shù)xH的ASCII碼MOVR0,#REGASCXH
。蹋茫粒蹋蹋樱牛危模茫;發(fā)參數(shù)x的ASCII碼
。停希郑遥埃#遥牛牵粒樱茫伲
。蹋茫粒蹋蹋樱牛危模茫;發(fā)參數(shù)y的ASCII碼
。希遥模牛遥牛危模海停希郑粒#埃模;發(fā)送命令結(jié)標(biāo)
志“0DH”
MOVSBUF,A
。剩危拢裕,$
。茫蹋遥裕
。遥牛
;結(jié)束上次命令子程序
BUSYCK:MOVA,#0DH
。停希郑樱拢眨,A
。剩危拢裕桑
。茫蹋遥裕
JNBBUSY?$
。遥牛
;發(fā)送參數(shù)子程序
SENDCS:MOVA,@R0
。蹋茫粒蹋蹋樱牛危模拢伲裕
。桑危茫遥
。停希郑粒溃遥
。蹋茫粒蹋蹋樱牛危模拢伲裕
。遥牛
;發(fā)送字節(jié)數(shù)據(jù)子程序
。樱牛危模拢伲裕牛海停希郑樱拢眨,A
JNBTI,$
CLRTI
。遥牛
TABHZ:DB“漢字內(nèi)碼表”
。裕粒拢粒樱茫桑桑海模隆埃粒樱茫桑勺址怼
。到Y(jié)束語
。郑蹋茫停常玻埃玻矗翱梢暬幊桃壕э@示模塊由于可將系統(tǒng)中用到的畫面預(yù)置到液晶顯示模塊內(nèi)部,因而使得圖形界面與中文界面的生成變得非常容易,因此,該模塊無疑將是顯示信息要求較高的應(yīng)用領(lǐng)域中理想的顯示器件選擇之一。
【可視化編程串行控制中文字庫液晶顯示模塊VLCM30】相關(guān)文章:
串行接口中文圖形點(diǎn)陣液晶顯示模塊的應(yīng)用08-06
內(nèi)含標(biāo)準(zhǔn)字庫的中文液晶模塊OCMJ5X1008-06
MSP430與液晶顯示器的串行接口方案08-06
液晶顯示模塊MGLS240128在圖形顯示中的應(yīng)用08-06
數(shù)字式智能電機(jī)控制模塊08-06
圖形點(diǎn)陣式液晶顯示模塊在沖擊力監(jiān)測(cè)系統(tǒng)中08-06
液晶顯示模塊DMF-50081在單片機(jī)系統(tǒng)中的應(yīng)用08-06