0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于OLED顯示器VGS12864E的結(jié)構(gòu)原理及應用程序設計

電子設計 ? 來源:世界電子元器件 ? 作者:高俊堯 ? 2021-03-23 10:45 ? 次閱讀

ARM處理器憑借其強大的功能、極低的功耗、較小的封裝廣泛應用于門禁、無線抄表、智能溫控等小型系統(tǒng)中,在這些系統(tǒng)中人機交互界面一般由LCD完成,但是通常LCD在顯示亮度、環(huán)境適應等方面存在缺陷,所以越來越多新技術(shù)新產(chǎn)品逐漸出現(xiàn),OLED就是一種。本文介紹了一種基于OLED的顯示器VGS12864E的結(jié)構(gòu)原理,給出了其在ARM7微處理器LPC2138系統(tǒng)應用中的硬件連接和具體程序設計。

系統(tǒng)簡述

LPC2138簡介

LPC2138是基于支持實時仿真嵌入式跟蹤的32/16 位ARM7TDMI-S CPU微控制器,帶有512 KB高速Flash和32KB的SRAM。128位寬度的存儲器接口和獨特的加速結(jié)構(gòu)使32 位代碼能夠在最大時鐘速率下運行。對代碼規(guī)模有嚴格控制的應用可使用16 位Thumb模式將代碼規(guī)模降低超過30%,而性能的損失卻很小。

LPC2138內(nèi)含2個32位定時器、2個10位8路ADC、10位DAC、PWM通道和47個GPIO以及多達9個邊沿或電平觸發(fā)的外部中斷,它還具有多個串口,包括2個16C550工業(yè)標準UART、2個高速I 2 C接口(400kbit/s)、SPITM和SSP(具有緩沖功能,數(shù)據(jù)長度可變)。

較小的封裝和極低的功耗使LPC2138可理想地用于工業(yè)控制和醫(yī)療等小型系統(tǒng)中,如訪問控制和POS機、通信網(wǎng)關(guān)、協(xié)議轉(zhuǎn)換器、軟modem、聲音辨別和低端成像等等。

VGS12864E結(jié)構(gòu)原理

VGS12864E是128列×64行點陣單色OLED圖形字符顯示模塊,由于其采用有機發(fā)光技術(shù),無需背光源,所以與傳統(tǒng)LCD相比在陽光照射下更能呈現(xiàn)清晰的圖像和數(shù)據(jù),另外它還具有高亮度、高對比度、寬視角、低驅(qū)動電壓和高發(fā)光效率等優(yōu)越的特性,較寬的溫度范圍(存儲溫度:?30℃“80℃,工作溫度:?20℃”70℃)也能適應更惡劣的環(huán)境。

VGS12864E使用兩片列驅(qū)動控制器,分別驅(qū)動1-64列和65-128列和一片有64行輸出的行驅(qū)動器,內(nèi)藏64×64顯示數(shù)據(jù)RAM,RAM中每位數(shù)據(jù)對應屏上一個點的亮、暗,其結(jié)構(gòu)如圖1所示:它把一個半屏分成了按行的八頁,因為每個字節(jié)的數(shù)據(jù)按低位(LSB)在上,高 位(MSB)在下的結(jié)構(gòu)排列,所以在提取字庫的時候,需要設置取字模的方式為:縱向取模,字節(jié)倒序。

系統(tǒng)硬件結(jié)構(gòu)

VGS12864E共有20個引腳,功能定義如表2,它與LPC2138的連接如圖2所示。盡管LPC2138的I/O口可以承受5V的輸入電壓,但是其輸出的高電平電壓不能驅(qū)動VGS12864,所以在它們中間需要加一個電平轉(zhuǎn)換芯片。本系統(tǒng)電平轉(zhuǎn)換采用IDT74FCT164245T芯片,它是基于高速CMOS技術(shù)的16位3.3V到5V的雙向轉(zhuǎn)換口(其中P1.28口負責數(shù)據(jù)方向的控制)。

程序設計

對VGS12864E的各種操作都是通過其指令系統(tǒng)完成的,通過控制腳的高低電平和數(shù)據(jù)口的數(shù)據(jù)來完成各種操作。顯示時一般需要設置列地址和頁地址,然后進行相應的讀寫操作(在寫操作前都要讀“忙”狀態(tài)),最后根據(jù)需要進行相應的循環(huán)。在同頁內(nèi),列地址在執(zhí)行完讀寫操作后自動加一。

本文程序有如下宏定義:

#define uint32 unsigned int

#define uint16 unsigned short

#define uchar unsigned char

#define DIS_DIR 1讀“忙”狀子程序

在對VGS12864E的各種寫操作執(zhí)行之前都需要進行讀“忙”操作,防止在“忙”狀態(tài)下“寫”操作的不正確執(zhí)行,程序代碼如下:

void read_status()

{ uchar busy;

uchar temp;

IOCLR0 = DIS_DI; //選擇“指令”寄存器

IOSET0 = DIS_RW; //選擇“讀”操作

IOCLR1 = DIS_DIR; //控制電平轉(zhuǎn)換方向

do

{ IOPIN0 = (IOPIN0 & 0xFFFFFF00) | 0xff;

IOSET0 = DIS_E;

busy=(IOPIN0 & 0xff);

IOCLR0 = DIS_E; //使能操作

temp=busy & 0x80;

}while(temp!=0); //忙則繼續(xù)循環(huán)

IOSET1 = DIS_DIR; //控制電平轉(zhuǎn)換方向

}

寫指令子程序

// 對左半屏寫指令操作,右半屏操作只需要改變片選電平(DIS_CS1、DIS_CS2)

void wr_command1()

{

IOCLR1 = DIS_CS1; //選擇左半屏

IOSET0 = DIS_CS2;

read_status(); //讀“忙”狀態(tài)

IOSET0 = DIS_DI; //選擇“寫”操作

IOCLR0 = DIS_RW; //選擇“指令”寄存器

IOPIN0 = (IOPIN0 & 0xFFFFFF00) | com; //送指令

IOSET0 = DIS_E; //使能操作

IOCLR0 = DIS_E;

}

寫數(shù)據(jù)子程序

//對左半屏寫數(shù)據(jù)操作,右半屏操作只需要改變片選電平(DIS_CS1、DIS_CS2)

void wr_data1()

{

IOCLR1 = DIS_CS1; //選擇左半屏

IOSET0 = DIS_CS2;

read_status(); //讀“忙”狀態(tài)

IOSET0 = DIS_DI; //選擇“寫”操作

IOCLR0 = DIS_RW; //選擇“數(shù)據(jù)”寄存器

IOPIN0 = (IOPIN0 & 0xFFFFFF00) | dat;//送數(shù)據(jù)

IOSET0 = DIS_E; //使能操作

IOCLR0 = DIS_E;

}

其他子程序

//OLED初始化子程序

void init_OLED()

{

com =0xc0; //第“0”行開始顯示

wr_command1();

wr_command2();

com =0x3f; //打開OLED顯示

wr_command1();

wr_command2();

}

//清屏程序

void clear_prog(void)

{

for(i=0;idat=0x00;

wr_data1();//寫RAM都為0,這樣完成清屏

}

}

}

//漢字顯示標準函數(shù):把屏幕分成0,1,2,3四行和64列進行漢字的顯示,每個漢字占兩//行,字庫數(shù)據(jù)通過指針進行傳遞

void display(uchar hang,uchar lie,uchar *p_dis_data)

{

for(page=hang;page}

結(jié)束語

VGS12864E使用簡單,而且相對LCD可以適應惡劣的環(huán)境,所以在工業(yè)控制、軍事等方面都有廣泛應用。由于需要通過字模軟件設計界面,增強設計靈活性的同時也提高了設計復雜界面的難度,而且生成字庫需要占用大量存儲空間。而LPC2138是基于ARM7核心的微控制器,配合VGS12864E可以組成非常通用的小型顯示控制系統(tǒng)。

責任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19293

    瀏覽量

    229974
  • 顯示器
    +關(guān)注

    關(guān)注

    21

    文章

    4980

    瀏覽量

    140045
  • OLED
    +關(guān)注

    關(guān)注

    119

    文章

    6202

    瀏覽量

    224279
收藏 人收藏

    評論

    相關(guān)推薦

    OLED顯示器技術(shù)及功能

    若要了解 OLED 電源供應如何及為何會影響顯示器畫質(zhì),必須先了解 OLED 顯示器 技術(shù)及電源供應需求。本文將說明最新的 OLED
    發(fā)表于 10-28 13:55 ?1750次閱讀
    <b class='flag-5'>OLED</b><b class='flag-5'>顯示器</b>技術(shù)及功能

    OLED顯示器結(jié)構(gòu)/特點/原理

    OLED顯示器是一種由有機分子薄片組成的固態(tài)設備,施加電力之后就能發(fā)光。 OLED 能讓電子設備產(chǎn)生更明亮、更清晰的圖像,其耗電量小于傳統(tǒng)的傳統(tǒng)的LED顯示屏。
    發(fā)表于 10-28 14:09 ?2.2w次閱讀
    <b class='flag-5'>OLED</b><b class='flag-5'>顯示器</b><b class='flag-5'>結(jié)構(gòu)</b>/特點/原理

    基于ARM7微處理LPC2138實現(xiàn)OLED顯示器的應用系統(tǒng)設計

    ,所以越來越多新技術(shù)新產(chǎn)品逐漸出現(xiàn),OLED就是一種。本文介紹了一種基于OLED顯示器VGS12864E結(jié)構(gòu)原理,給出了其在ARM7微處
    的頭像 發(fā)表于 12-07 10:22 ?4450次閱讀

    怎么實現(xiàn)OLED顯示模塊與C8051F單片機的接口設計?

    本文以VGS12864E顯示模塊為例,介紹C8051F020單片機與它的接口設計及軟件編程方法。
    發(fā)表于 06-08 06:55

    全彩OLED(SSD1351)程序設計與應用

    驅(qū)動文件OLED 系列博客索引 :全彩OLED(SSD1351)程序設計與應用(1)驅(qū)動的移植全彩OLED(SSD1351)程序設計與應用
    發(fā)表于 03-01 07:20

    使用八個微型OLED顯示器構(gòu)建一個滾動消息顯示器

    D4 控制。在 Blynk 應用程序的幫助下,我創(chuàng)建了一個用于輸入消息和選擇速度的 UI。它還可以顯示電池狀態(tài)、溫度和加速度計數(shù)據(jù)。3D 打印的外殼使設備處于最終形狀,所有八個顯示器都彼此相鄰,構(gòu)建了一個 512x32 像素大
    發(fā)表于 07-15 06:41

    基于單片機的OLED顯示器的應用

    介紹了一種OLED 顯示器VGG12864E-S001 的模塊結(jié)構(gòu),給出了與單片機8031 的連接電路和應用程序舉例。關(guān)鍵詞:
    發(fā)表于 06-12 11:27 ?64次下載

    鍵盤應用程序設計

    鍵盤應用程序設計 鍵盤使用的編碼
    發(fā)表于 06-12 23:11 ?968次閱讀
    鍵盤<b class='flag-5'>應用程序設計</b>

    鼠標應用程序設計

    鼠標應用程序設計     用匯編語言編寫的鼠標和鍵盤應用程序。   在程序執(zhí)行后屏幕上顯示包括鼠標和鍵盤的狀態(tài)。當用戶移動鼠
    發(fā)表于 06-12 23:17 ?1285次閱讀

    什么是oled顯示器

    什么是oled顯示器OLED顯示器件成為主流時,設計工程師也面臨著顯示技術(shù)進步的壓力。    
    發(fā)表于 12-11 11:43 ?1030次閱讀

    oled顯示器

    oled顯示器 OLED:Organic Light Emitting Display,即有機發(fā)光顯示器,在手機LCD上
    發(fā)表于 12-11 18:59 ?1466次閱讀

    單片機C8051F與OLED顯示模塊的接口設計

    OLED 作為新一代顯示技術(shù),廣泛用于各種儀器儀表的顯示終端,實時顯示字符、漢字、曲線等信息。文中介紹一種點陣式 OLED 模塊
    發(fā)表于 12-06 10:30 ?18次下載
    單片機C8051F與<b class='flag-5'>OLED</b><b class='flag-5'>顯示</b>模塊的接口設計

    使用OLED顯示器作為外接顯示器

    電子發(fā)燒友網(wǎng)站提供《使用OLED顯示器作為外接顯示器.zip》資料免費下載
    發(fā)表于 11-07 09:19 ?2次下載
    使用<b class='flag-5'>OLED</b><b class='flag-5'>顯示器</b>作為外接<b class='flag-5'>顯示器</b>

    Mini LED顯示器OLED顯示器的區(qū)別

    兩大被公認為是未來顯示器主流的Mini LED和OLED開始在顯示器市場“大展拳腳”。其中,Mini LED的價格不斷下探,已經(jīng)覆蓋中端和高端產(chǎn)品,并有“燎原之勢”。OLED也在
    的頭像 發(fā)表于 02-13 11:57 ?5361次閱讀

    什么是oled顯示器 oled屬于液晶屏幕嗎

    OLED顯示器(有機發(fā)光二級管顯示器)是一種使用有機發(fā)光材料作為發(fā)光元件的顯示技術(shù)。與傳統(tǒng)液晶顯示器(LCD)不同,
    的頭像 發(fā)表于 01-23 15:49 ?2549次閱讀