當(dāng)前位置:首頁 > 顯示光電 > 顯示光電
[導(dǎo)讀] 液晶顯示器(liquid crystal display,lcd )具有功耗低、體積小、質(zhì)量輕、超薄和可編程驅(qū)動(dòng)等其他顯示無法比擬的優(yōu)點(diǎn),不僅可以顯示數(shù)字、字符,還可以顯示漢字及各種圖形、圖片,可實(shí)現(xiàn)屏幕上下左右滾動(dòng)、動(dòng)畫、反

      液晶顯示器(liquid crystal display,lcd )具有功耗低、體積小、質(zhì)量輕、超薄和可編程驅(qū)動(dòng)等其他顯示無法比擬的優(yōu)點(diǎn),不僅可以顯示數(shù)字、字符,還可以顯示漢字及各種圖形、圖片,可實(shí)現(xiàn)屏幕上下左右滾動(dòng)、動(dòng)畫、反轉(zhuǎn)顯示、顯示閃爍多種功能,日益成為智能儀器儀表和測(cè)試設(shè)備的首選顯示器件。目前常用的lcm12864系列的液晶模塊,一般都沒有圖形驅(qū)動(dòng)模塊,而圖形作為一種更為生動(dòng)的表現(xiàn)方式,是用戶需求的重點(diǎn)和設(shè)計(jì)的亮點(diǎn)。如何在這種點(diǎn)陣式液晶顯示器中顯示任意靜態(tài)圖片以及動(dòng)畫, 成為困擾設(shè)計(jì)者大量應(yīng)用lcd的問題。我們現(xiàn)在可以通過互聯(lián)網(wǎng)、圖形處理軟件及掃描儀等很方便地獲得各種各樣的圖像、圖片,這樣可以通過比較簡(jiǎn)單的方法把任意圖片移植到液晶顯示器lcd上。文章通過分析bmp圖像的存儲(chǔ)格式和128 64點(diǎn)陣lcd上圖像顯示的原理,設(shè)計(jì)了一個(gè)lcd圖片數(shù)據(jù)轉(zhuǎn)換及模擬顯示的軟件,并介紹了實(shí)現(xiàn)lcd意圖片的顯示方法。


bmp圖片格式及l(fā)cd顯示原理

   bmp位圖是微軟公司(microsoft)和國際商用機(jī)器公司(ibm)共同倡導(dǎo)的一種圖片格式。它按點(diǎn)陣排列順序,將每個(gè)像素的色彩值以規(guī)定的方式把整個(gè)圖片記錄下來。根據(jù)色彩位深度不同,windows bmp文件像素描述部分差別較大,如256色每個(gè)像素需要8位(即1個(gè)字節(jié))來描述,而16色的圖片每個(gè)像素描述者只需4 位(即半個(gè)字節(jié))。對(duì)于絕大部分電子設(shè)計(jì)者來說,最常用的是黑白二色的點(diǎn)陣式液晶顯示器。因此,這里僅分析對(duì)microsoft windows類型1位(bit)描述的黑白二色bmp圖片文件的處理。

   一幅128 64點(diǎn)陣的黑白bmp圖片文件的總長度為1086字節(jié),前62個(gè)字節(jié)是文件頭,用于表示文件類別、長度、圖像的行數(shù)以及列數(shù)等信息,地址為 00h~3dh;后1024字節(jié)則對(duì)應(yīng)畫面的點(diǎn)陣數(shù)據(jù),地址為3eh~43dh。bmp文件的中字節(jié)排列與點(diǎn)陣數(shù)據(jù)對(duì)應(yīng)關(guān)系如圖1 所示,bmp點(diǎn)陣數(shù)據(jù)塊第0個(gè)字節(jié)對(duì)應(yīng)圖片中左下角第63行的第0到7列,第15個(gè)字節(jié)對(duì)應(yīng)圖片中第63行的第112到127列,也就是按照從左至右,從下到上的順序,bmp數(shù)據(jù)塊最后一個(gè)字節(jié)對(duì)應(yīng)第0行的112到127列。因此,要想實(shí)現(xiàn)將bmp圖片文件轉(zhuǎn)化為供模塊直接顯示的數(shù)據(jù),不但涉及到各個(gè)數(shù)據(jù)排列的先后順序,還涉及到字節(jié)中各個(gè)位的重組。

   對(duì)于rt12864hz漢字圖形點(diǎn)陣液晶顯示模塊,它可顯示漢字及圖形,內(nèi)置8192個(gè)中文漢字(16 16點(diǎn)陣)、128個(gè)字(8 16點(diǎn)陣)及繪圖顯示ram(gdram)。繪圖顯示ram提供128 8個(gè)字節(jié)的記憶空間,在更改繪圖ram時(shí),先連續(xù)寫入水平與垂直的坐標(biāo)值,再寫入兩個(gè)字節(jié)的數(shù)據(jù)到繪圖ram,而地址計(jì)數(shù)器(ac)會(huì)自動(dòng)加一;在寫入繪圖ram的期間,繪圖顯示必須關(guān)閉,整個(gè)寫入繪圖ram的步驟如下:

(1) 關(guān)閉繪圖顯示功能。
(2) 先將水平的位元組坐標(biāo)(x)寫入繪圖ram地址;再將垂直的坐標(biāo)(y)寫入繪圖ram地址;將d15~d8寫入到ram中;將d7~d0寫入到ram中。
(3) 打開繪圖顯示功能。

   繪圖顯示的緩沖區(qū)與圖形點(diǎn)陣對(duì)應(yīng)分布參考圖2所示(水平方向x以字節(jié)單位,垂直方向y以位為單位)。

   windows中的畫圖軟件為圖片編輯提供了放大、網(wǎng)格、旋轉(zhuǎn)、定位、定幅等強(qiáng)大、實(shí)用而靈活的功能,同時(shí)有輸入各種字體及大小的漢字的功能,是編輯畫面的理想工具。打開菜單[圖像]下的[屬性]項(xiàng),設(shè)置任意圖片寬度為128,高度為64,單位為像素,顏色為黑白。保存的bmp文件經(jīng)過下面 delphi編寫的函數(shù)s_copyfile()便可轉(zhuǎn)換為lcd模塊顯示的點(diǎn)陣數(shù)據(jù),數(shù)據(jù)以單片機(jī)數(shù)據(jù)表定義的格式放在memo1中,可以直接拷貝至 lcm控制匯編程序中當(dāng)數(shù)據(jù)表用,如圖3所示。另外使用了heckbox1控件來使圖片反白。

函數(shù)s_copyfile()的源程序如下[4]:
function s_copyfile(filesou:string;filedes:string):boolean;
var
fromf, tof: file;
s,t:string;
i,j,numread, numwritten: integer;
tem: array[1..62] of char;
buf: array[1..16] of char;
begin
{$i-}
s_copyfile:=false;
if not fileexists(filesou) then
begin
showmessage(沒有發(fā)現(xiàn)源文件+#13+filesou);
exit;
end;
assignfile(fromf,filesou);
assignfile(tof,filedes);
reset(fromf,1);{ record size = 1 }
main.memo1.clear;
main.memo3.clear;
blockread(fromf, tem, sizeof(tem), j);
j:=1;
repeat
s:= db ;
t:=;
blockread(fromf, buf, sizeof(buf), numread);
for i:=1 to numread do
begin
if main.checkbox1.checked then buf[i]:=chr
(255-ord(buf[i]));
appendstr(t,inttohex(ord(buf[i]),2));
if ord(buf[i])>159 then
appendstr(s,0+inttohex(ord(buf[i]),2)
+h,)
else
appendstr(s,inttohex(ord(buf[i]),2)
+h,);
end;
delete(s,length(s),1);
main.memo1.lines.append(s);
main.memo3.lines.append(t);
inc(j);
until (numread = 0);
main.memo1.lines.delete(main.memo1.lines.
capacity-1);
closefile(fromf);
closefile(tof);
s_copyfile:=true;
end;
lcd模擬顯示



  對(duì)于如圖4所示的一張128 64的bmp圖片,其模擬顯示如圖5所示,反白后顯示如圖6所示。

  有的lcm數(shù)據(jù)是奇偶行交錯(cuò)的,也可以通過使用隔行來改變。模擬顯示的源程序主要是采用在畫布上畫矩形框的方法,語句如下:


image1.canvas.fillrect(rect(16*s_col+4*i,
4*s_row,16*s_col+4*i+3,4*s_row+3));
  其中s_col為行坐標(biāo)(1~64),s_row為列坐標(biāo)(0~31),每個(gè)字節(jié)分高4位與低4位分別來畫矩形框。當(dāng)高4位或低4位值為1~f時(shí),對(duì)應(yīng)的i分別如表1所示。

lcd顯示控制程序設(shè)計(jì)

  lcm內(nèi)部帶有8k字節(jié)的ram緩存區(qū),往ram緩存區(qū)寫入數(shù)據(jù),則在lcd 顯示屏上產(chǎn)生顯示。通過改變顯示緩存區(qū)首地址可實(shí)現(xiàn)屏幕滾動(dòng)、屏幕換頁等功能。

graphic_disp:

lcall clear_graphic ;清除圖形顯示ram單元(gdram)
mov g_row, #80h ;設(shè)定圖形顯示起始行單元
mov g_column, #80h ;設(shè)定圖形顯示起始列單元

gra_disp:

mov a, #34h ;選擇擴(kuò)充指令集,關(guān)閉圖形顯示
lcall input
mov a, g_row ;輸入圖形顯示起始行地址
lcall input
mov a, g_column ;輸入圖形顯示起始列地址
lcall input
mov a, #30h ;重新選擇基本指令集
lcall input
clr a
movc a, @a+dptr ;輸入顯示數(shù)據(jù)(橫向高8位數(shù)據(jù))
lcall displ
inc dptr
clr a
movc a, @a+dptr ;輸入顯示數(shù)據(jù)(橫向低8位數(shù)據(jù))
lcall displ
inc dptr
inc g_column ;列地址加一
mov a, g_column
cjne a, #90h, gra_disp ;最后一列地址為90h(共計(jì)16列)
mov g_column, #80h
inc g_row ;行地址加一
mov a, g_row
cjne a, #0a0h, gra_disp ;最后行地址為0a0h
mov g_column, #80h
mov g_row, #80h
mov a, #36h ;打開圖形顯示
lcall input
ret

   在上面程序中,是與圖2所示的gram映射的點(diǎn)陣坐標(biāo)一樣,分成0~15列,每列寫2個(gè)字節(jié)數(shù)據(jù),共有32行。clear_graphic為清除圖形顯示cgram的子程序,input為寫指令子程序,displ為寫數(shù)據(jù)子程序,這里不再詳細(xì)列出。另外硬件設(shè)計(jì)時(shí),注意空腳(nc)應(yīng)懸空,不能接地。調(diào)試時(shí),適當(dāng)調(diào)整液晶顯示偏壓信號(hào)v0,使之在一合適電壓,這一電壓若設(shè)置不當(dāng),lcm 無法正常工作。


結(jié)束語

  按照上面分析的方法,可以方便的在液晶上顯示任意圖片。點(diǎn)陣的lcd模塊還可實(shí)現(xiàn)屏幕合成、滾動(dòng)、動(dòng)畫、閃爍等功能,正越來越受到廣泛的應(yīng)用和關(guān)注。需要指出的是,由點(diǎn)陣液晶顯示器件與相應(yīng)的控制器、驅(qū)動(dòng)器裝配成的顯示模塊的種類較多,其功能、指令、接口定義及引腳并無統(tǒng)一標(biāo)準(zhǔn),具體使用時(shí)應(yīng)加以選擇。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉