《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 虛擬LCD顯示模塊的設計
虛擬LCD顯示模塊的設計
來源:電子技術應用2011年第2期
江曉軍, 瞿丹晨, 徐 潔, 劉正國
上海第二工業大學 電子與電氣工程學院, 上海201209
摘要: 通過在BTF020單片機的RAM中建立緩沖區數組并對虛擬LCD的顯示數據進行存儲,然后通過單片機的串口將該數據傳送給PC機,再用VB6.0語言對這些數據進行處理并構建虛擬LCD的界面,使其能夠正確顯示字符或者圖形。實驗結果表明,所建的虛擬LCD顯示模塊具有開發簡便、快速、通用性強的特點。
關鍵詞: LCD BTF020 顯示模塊
中圖分類號: TH85
文獻標識碼: A
文章編號: 0258-7998(2011)02-0127-03
Design of virtual LCD module
Jiang Xiaojun, Qu Danchen, Xu Jie, Liu Zhengguo
School of Electronic & Electrical Engineering, Shanghai Second Polytechnic University, Shanghai 201209, China
Abstract: The display data of the virtual LCD is stored by creating the buffering arrays in RAM of BTF020 MCU, and the data is delivered to PC by the serial port of the MCU. The delivered data is processed and the interface of the virtual LCD is established by using VB6.0, and the character and the graph can be displayed rightly. The experimental results show that the established virtual LCD module has the characteristic of convenience, speediness and commonality.
Key words : LCD; BTF020; display module


    LCD在人們生活中的應用越來越廣泛,手機、車載系統及工業測量設備等都把LCD作為重要的人機接口,將使用者需要的信息顯示出來。這種方法是通過微處理器如單片機輸出圖形數據,再由LCD顯示模塊根據該圖形數據進行顯示[1-3]。其缺點是需要在LCD的像素排列和程序邏輯設計中花費大量的時間,而且在進行不同LCD顯示模塊的驅動設計時,要根據該LCD的驅動模塊重寫驅動程序,導致系統開發周期長、成本增加[4]。
    本文介紹一種使用虛擬技術實現LCD顯示模塊的方法以彌補前述方法的不足。該方法通過在單片機的RAM中建立緩沖區數組并對虛擬LCD的顯示數據進行存儲后,將顯示數據傳遞給PC機,再對這些數據進行處理后構建虛擬LCD以顯示字符或者圖形。
1 虛擬LCD顯示模塊的結構
    虛擬LCD顯示模塊的功能結構如圖1所示。虛擬LCD顯示模塊主要由4×4按鍵輸入單元、緩沖區單元、串口通信單元、數據接收單元、顯示數據處理單元、虛擬LCD界面組成。其中,4×4按鍵輸入單元負責選擇需要的虛擬LCD界面的大小及輸入顯示數據,這些信息由BTF020單片機存儲在緩沖區單元中;緩沖區單元通過所建的二維數組將數據分配給不同的存儲單元;串口通信單元根據BTF020單片機的命令負責將緩沖區單元中的數據發送給PC機;PC機中的數據接收單元負責接收串口通信單元發出的數據;顯示數據處理單元根據數據接收單元送出的數據進行數據轉換和處理,以便構建虛擬LCD界面;虛擬LCD界面負責將送入的字符或者圖形數據顯示出來。

2 虛擬LCD顯示數據的處理
2.1顯示緩沖區及數組的建立

    虛擬LCD的分辨率可根據BTF020發送的數據確定并采用分頁縱向顯示。在BTF020中建立一個緩沖區來存放需要顯示的數據,然后將這個緩沖區中的數據發送給PC機,由PC機將接收到的BYTE類型數據還原成8位二進制碼,然后再對該二進制碼進行逐位解析并按順序進行處理和顯示。當虛擬LCD的分辨率確定為256×256,顯示色為單色時,串口傳輸的數據為8位二進制碼,因此建立一個二維數組LCDdata[31][255]作為虛擬LCD的字符顯示緩沖區,共32頁(0~31)、256列(0~255)。該虛擬LCD的顯示緩沖區分布如圖2所示。


2.2 字符的處理與顯示
    虛擬LCD顯示漢字前需先取模。漢字的字模分成上下兩個部分,當顯示規格為16×16點陣的漢字時,取模走向為縱向且高位在前。可先對上半部分從左到右取模,然后對下半部分從左到右取模,再將該漢字所占的像素點標為“1”,其余標為“0”,從左到右開始取字模的結果并以十六進制表示。以同樣的方法,再對下半部分取模,其結果仍以十六進制表示。此時,將這兩次的結果結合起來就可得該漢字的字模。在取完字模后,把該字的字模預先存儲到一個一維數組中,然后確定漢字顯示于屏幕的位置。由于漢字顯示是以頁和列為定位坐標,單個漢字不跨頁顯示,因此可以調用漢字顯示函數來顯示漢字,這樣通過替換顯示緩沖區中的數據就可以達到顯示漢字的目的。該漢字顯示函數為:
    void Write_word(int y,int x, unsigned char  word [ ]
    其中,y代表頁,x代表列,word代表希望顯示的字的字模。圖3為漢字顯示流程。虛擬LCD顯示規格為8×16點陣的數字0~9時,取模走向為縱向,高位在前,點陣格式為陰碼,取模方式為行列式。


    通過調用數字顯示函數進行顯示,這樣通過替換顯示緩沖區中的數據就可以達到顯示數字的目的。該數字顯示函數為:
    void Write_num(int y,int x,int number)
2.3 點、直線和矩形的處理與顯示
    漢字在縱向的顯示處理是按頁計算,而點在縱向的顯示處理是按行計算,其計算方式與列的計算方式相同。把整個虛擬LCD屏幕分成255行、255列,則該虛擬LCD的圖形顯示緩沖區分布如圖4所示。


    按照以上分布規則,通過調用畫點函數可在屏幕上畫點。該畫點函數為:
    void Point(int x,int y)
    該函數中橫坐標可被系統識別,而縱坐標須轉換成頁的表示形式才能被系統識別。將縱坐標轉換成頁地址時先確定畫點所在頁,由于一頁中縱方向上有8個坐標點,因此可用整除的方式得到確定的頁地址。表1表示一頁中點亮像素點的數據與整除y時得到的余數的關系。

    設:點亮像素點的數據為add值,LCDdata [ ][ ]為顯示緩沖區數組,y/8為頁地址,x為列地址,則可得到顯示緩沖區。該顯示緩沖區的數據為:
    LCDdata[y/8][x]=add+LCDdata[y/8][x]
    按上述方法得到畫點的坐標后,再根據虛擬LCD顯示線段的坐標,在確定的方向上依次進行點的顯示。畫橫線的函數定義為:
    void HLine(int x1,int x2,int y)
    式中,x1、x2分別為橫線的橫坐標起始、結束點,y為縱坐標。
    畫豎線的函數定義為:
    void SLine(int x,int y1,int y2)
    式中,x為豎線的橫坐標,y1、y2分別為豎線縱坐標起始、結束點。
 畫矩形的函數定義為:
    void Rectangle(int x1,int y1,int x2,int y2)
    式中,x1為矩形左上角橫坐標,y1為矩形左上角縱坐標,x2為矩形右下角橫坐標,y2為矩形右下角縱坐標。
3 實驗
    進行實驗時采用VB6.0語言編程,圖5是用上述方法虛擬的分辨率為256×256的LCD顯示界面,該虛擬LCD界面的左上角的坐標為(0,0),右下角的坐標為(255,255)。界面中像素點以一個方格表示,初始界面由綠色方格組成,當期望的像素點進行點亮顯示時該位置為黑色方格。

    完成上述界面中字符和圖形顯示功能的語句為
    Rectangle(50,30,200,100);    畫邊框
    Write_word(6,128,peng);      寫“鵬”
    Write_num(8,111,0);            寫“0”
    Write_num(8,119,5);            寫“5”
    Write_num(8,127,2);            寫“2”
    Write_num(8,135,2);            寫“2”
    Write_comm( );                   緩沖區發送到PC
    通過顯示緩沖區的數組存儲虛擬LCD的顯示數據,然后將數據傳送給PC機,再用VB6.0語言對這些數據進行處理并構建虛擬LCD的顯示界面,可以正確顯示字符、點、線和矩形等圖形。所建的虛擬LCD顯示模塊具有開發簡便、快速、通用性強的特點。
參考文獻
[1] 劉冬生,曾曉雁. 液晶顯示控制器SED1330/SED1335/SED1336/E1330的應用[J].電子技術應用,2004,30(2):
71-73.
[2] 吳捷,陸鋒,左劍. 圖形液品顯示控制器SI D13503在單片機系統中的應用[J].信息化研究,2009,35(11):54-56.
[3] 潘敏,焦生杰,翁寅生. 基于DSP和ST7920的液晶顯示模塊的實現. 電子技術應用, 2007,33(6):48-50.
[4] 王震, 謝丁龍. 點陣LCD 顯示模塊通用驅動程序的開發[J]. 許昌學院學報, 2005,24(5):84-87.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品一区二区| 欧美精品日韩综合在线| 亚洲国产精品免费| 亚洲一区三区电影在线观看| 亚洲精一区二区三区| 在线观看日韩www视频免费| 国产精品夜色7777狼人 | 欧美精品在线播放| 快射av在线播放一区| 久久久久国产精品午夜一区| 欧美一区在线直播| 亚洲欧美日韩视频一区| 中日韩视频在线观看| 日韩一级精品视频在线观看| 99在线热播精品免费99热| 亚洲精品在线一区二区| 亚洲精品日日夜夜| 亚洲精品综合久久中文字幕| 亚洲麻豆视频| 日韩亚洲在线| 99re6热在线精品视频播放速度| 亚洲精品女人| 亚洲精品少妇网址| 99热这里只有成人精品国产| 9色国产精品| 在线视频欧美精品| 亚洲网站视频福利| 亚洲主播在线| 欧美亚洲日本国产| 久久精品国产欧美亚洲人人爽| 久久国产精品99久久久久久老狼| 久久国产精品99久久久久久老狼| 久久久久久穴| 麻豆久久精品| 国产精品视频网站| 亚洲一区中文| 性久久久久久久久| 欧美主播一区二区三区美女 久久精品人| 欧美一区二区免费| 久久久久久九九九九| 久久综合久久久| 欧美精品大片| 国产精品久久久久久久久果冻传媒| 国产精品久久久久一区二区三区 | 亚洲综合电影| 欧美在线观看www| 91久久线看在观草草青青| 99精品欧美一区二区三区| 中文在线资源观看网站视频免费不卡| 亚洲一区欧美一区| 久久福利毛片| 欧美电影资源| 国产精品乱码人人做人人爱| 国产视频精品网| 在线播放一区| 一本久久a久久精品亚洲| 亚洲欧美日韩成人高清在线一区| 久久精品五月婷婷| 在线综合亚洲欧美在线视频| 欧美一区二区三区免费观看视频 | 国产欧美精品| 亚洲高清二区| 亚洲一区二区三区777| 亚洲第一成人在线| 一本一道久久综合狠狠老精东影业| 欧美一级成年大片在线观看| 老司机午夜免费精品视频| 欧美日韩精品三区| 国产亚洲欧美一区二区| 亚洲精品精选| 欧美在线视频网站| 在线视频你懂得一区| 久久久久免费视频| 欧美日韩亚洲成人| 国产综合色产在线精品| 夜夜夜久久久| 亚洲国产cao| 午夜伦理片一区| 欧美成人一区二区三区| 国产美女扒开尿口久久久| 亚洲精品免费电影| 亚洲国产精品视频| 午夜一区在线| 欧美剧在线观看| 一区二区三区在线视频播放| 亚洲欧美日韩精品久久久| av成人免费在线| 麻豆精品91| 国产日韩av一区二区| 99热精品在线| 亚洲精品在线三区| 久久亚洲视频| 国产精自产拍久久久久久| 日韩香蕉视频| 亚洲精选中文字幕| 久久婷婷蜜乳一本欲蜜臀| 国产精品久久国产三级国电话系列| 亚洲国产精品一区二区第一页| 翔田千里一区二区| 亚洲综合精品一区二区| 欧美日韩亚洲精品内裤| 亚洲成人资源网| 久久福利影视| 久久精品免视看| 国产精品色在线| 一本色道**综合亚洲精品蜜桃冫| 亚洲精品国精品久久99热| 久久人人爽人人| 国产日韩欧美精品综合| 9久re热视频在线精品| 亚洲精品中文字| 男女激情久久| 在线精品国精品国产尤物884a| 欧美亚洲专区| 久久国产精品久久久久久电车| 国产精品久久久久秋霞鲁丝 | 可以免费看不卡的av网站| 国产一区二区三区久久悠悠色av| 亚洲天堂成人在线视频| 亚洲最新中文字幕| 欧美另类一区| 亚洲区第一页| 999亚洲国产精| 欧美精品播放| 亚洲日本成人网| 日韩视频一区二区| 欧美黄色视屏| 亚洲国产欧美精品| 亚洲剧情一区二区| 欧美极品色图| 亚洲精品一区二区三区99| 99综合在线| 欧美日韩人人澡狠狠躁视频| 日韩小视频在线观看| 亚洲婷婷国产精品电影人久久| 欧美三级免费| 亚洲天堂久久| 亚洲欧美日韩在线观看a三区| 欧美日韩在线视频一区| 亚洲视频一区二区在线观看| 午夜精品三级视频福利| 国产精品自拍在线| 久久成人18免费观看| 蜜臀va亚洲va欧美va天堂| 亚洲国产美国国产综合一区二区| 亚洲国产一区在线| 欧美精品久久久久久| 99热在这里有精品免费| 亚洲欧洲av一区二区| 国产欧美日韩综合一区在线播放 | 羞羞漫画18久久大片| 久久久久久久久久久成人| 精品成人一区二区| 亚洲美女黄色片| 欧美性一二三区| 亚洲欧美日韩在线综合| 久久久久一区二区三区| 在线免费不卡视频| 亚洲视频一二| 国产欧美婷婷中文| 亚洲激情啪啪| 欧美日韩在线看| 亚洲欧美一区二区原创| 久久蜜桃精品| 亚洲精品永久免费精品| 性久久久久久久| 精品二区视频| 亚洲视频二区| 国模私拍一区二区三区| 99riav久久精品riav| 国产乱子伦一区二区三区国色天香 | 黄色成人在线网址| 野花国产精品入口| 国产模特精品视频久久久久| 亚洲激情av在线| 欧美新色视频| 亚洲国产mv| 国产精品久久久久久久久久尿 | 欧美高清视频一区二区| 在线一区二区三区做爰视频网站| 久久国产主播精品| 亚洲区中文字幕| 久久aⅴ国产欧美74aaa| 亚洲激情精品| 欧美一区二区在线看| 亚洲欧洲日韩女同| 久久精品二区三区| 亚洲乱码国产乱码精品精天堂| 欧美在线3区| 亚洲精品一区二区三区不| 久久国产精品99国产精| 亚洲伦理久久| 久久综合99re88久久爱| 亚洲小说区图片区| 欧美福利视频网站| 亚洲一区不卡| 亚洲欧美精品在线观看| 欧美成人免费网站| 欧美一区二区三区播放老司机| 欧美日韩黄视频|