当前位置:首页 > 电源 > 数字电源
[导读]1 引言 有机电致发光显示,又称有机发光二极管(Organic Light Emitting Diode, OLED)或有机发光显示器Organic Light Emitting Display(OLED),相较于目前市场上流行的液晶显示器(LCD)有明显的优势,主要表

1 引言

有机电致发光显示,又称有机发光二极管(Organic Light Emitting Diode, OLED)或有机发光显示器Organic Light Emitting Display(OLED),相较于目前市场上流行的液晶显示器(LCD)有明显的优势,主要表现为:自主发光(不需要背光源),无视角问题(视角可达170°以上),重量轻,厚度薄,亮度高,发光效率高,响应速度快(是液晶的1000倍),动态画面质量高,温度范围广(温度范围-40℃~80℃),低功耗,抗震能力强,制造成本低,可柔性显示。尤其适用于要求高亮度的仪表行业,以及条件要求更高的军工产品。与各方面已经发展成熟的LCD相比,OLED的发展还处于初级阶段,但随着以上这些优势的逐步实现,OLED将极有可能取代LCD在市场上的地位,OLED是被业界公认为最具发展前景的下一代显示器。

2 硬件结构设计

本文利用单片机C8051F023作为128×64单色OLED的控制核心器件,采用的是维信诺公司的一款屏VGG12864G,它利用Solomon公司的SSD1303为专用驱动IC。实现文字显示及图像的动静态显示。硬件整体设计结构框图如图1所示。






图 1 硬件设计结构框图

2.1 SSD1303 驱动及接口电路

VGG12864G模块的OLED显示屏为128列,64行结构。图2为SSD1303结构框图,显示了模块逻辑电路和接口电路的框图。用户只需要给接口提供电源、产生驱动指令信号和显示数据信号,就能点亮OLED屏。从图中可以看出,行、列驱动器的输出通过FPC邦定到OLED屏,剩下的MCU接口、电压和电流控制器需要是其专门设计的接口和驱动电路,模块的外部信号仅与SSD1303发生关系。所以了解了SSD1303的输入特性及指令系统,就能方便地使用本模块了。

SSD1303是晶门公司推出的驱动单色OLED的IC,采用TAB封装。这种基于CMOS工艺的驱动IC集成了行、列驱动器、振荡器、对比度控制器和图形数据存储器(GDDRAM),很大程度地减少了外围器件和功耗。可支持的最大分辨率为132×64,其中OLED屏底部132×16的点阵区域可以显示4色的局域色,并可编程实现64级灰度,当用于单色显示时,可编程控制256级对比度。根据所使用微处理器(MPU)的不同,它提供8位6800系列MPU并行、8位8080系列MPU并行和Serial Peripheral Interface (SPI)串行三种通信接口模式。

控制命令通过MCU接口输入到控制命令解码器进行命令解码,然后输出时钟、行同步、场同步信号,从而控制OLED显示的振荡频率、显示器件的电压转换模块以及OLED显示内容的行列偏移量的驱动模块;如果是显示数据(128×64bits),那么显示数据由控制电路通过MCU接口输入到GDDRAM缓存,然后通过局域色解码器对数据进行解码,最后将解码后的显示数据通过行列驱动器驱动OLED显示,OLED上呈现了稳定的显示效果。



图2 SSD1303结构框图

2.2 电源的设计

硬件结构设计框图如图2所示,外部硬件电路的DC-DC转换器用TPS7333芯片将5V电源转换成3.3V电源,并将输出的电源信号通过电压和电流控制器控制整个SSD1303的电压和电流。整个系统需要3.3V和12V的电源,MCU(本文采用C8051F023)需要提供3.3V的电源电压,OLED需要3.3V的逻辑电源电压和9~12V的驱动电源电压,此驱动电源电压由外部电源转换器电路提供。 [!--empirenews.page--]

2.3 各种控制信号

再就是关于如何用MCU控制,MCU通过RES#、CS#、D/C、WR#、RD#和D0~D7共13个接口控制SSD1303驱动IC,从而控制OLED显示屏。CS#为片选信号,当CS#接低电平时MCU才能与驱动IC通信;RES#是复位使能端,当接低电平时,所有控制寄存器均被设定为出厂时的默认状态,同时图像寄存器清零;D/C为数据/命令选择信号;WR#和RD#分别为写和读选择信号,当CS#为低时,在其下降沿读写有效。通过改变D/C、WR#和RD#三个接口的高低,单片机对OLED的控制有四种状态,可由表1显示出来。

表1 读写状态一览表



D/C


WR#


RD#


状态


0


0


1


写命令


0


1


0


读命令(“忙”检测)


1


0


1


写数据


1


1


0


读数据


2.4 读写的时序

只要按照VGG12864G的时序波形图进行读和写,即可完成OLED的显示。但是,通过软件编程拼时序的话,要考虑到许多时间参数,有一定的难度。为了使得数据和命令能够更容易的顺利读写,我们采用另外一种办法。如图1所示,将WR#和RD#分别接C8051F023的/WR和/RD,即P0.7和P0.6。在C语言编程时定义指针类型为xdata型,它是指向片外存储器的,通过给指针的赋值访问片外的数据存储区,当访问片外存储器时,/RD和/WR会在读和写时自动变低,同时P3端口为数据总线,非复用方式下,地址总线的高8位使用P1口,低8位使用P2口;复用方式下,地址总线高8位仍使用P1口,低8位和数据总线复用P3口,P2口就不会受到影响。所以最好设置成复用方式(EMIOCF.4=0),P2口就可以用来作别的输出端口,自由地控制RES#、CS#、DC。虽然不需要地址总线,但访问片外存储器时地址线会被使用,所以仍要避开。实验结果的时序波形图如图3所示。只要CS#为低时,在WR#(RD#)的下降沿写入(读出)数据或命令,即可有效地完成读写的工作。






图3 时序波形图 [!--empirenews.page--]

3 软件程序的设计

整个单片机控制OLED的显示程序用C语言编写,主要程序流程图如图4所示。单片机初始化包括关闭看门狗、时钟初始化、端口初始化,以及定时器和中断的初始化。OLED初始化包括开显示、设置显示模式、设置对比度控制器、对比度设置(1~256)、设置行列起始地址、设置具体位置颜色、设置串口管脚配置。清OLED屏和OLED显示都是往GDDRAM里写数据,包括读状态、写命令、写数据子程序,清OLED屏就全写“0”,OLED显示只要写入所要显示的文字或图片的字符代码即可。每次写(命令或数据)之前都要读状态,看最高位D7是否为“0”,也称之为“忙”检测,如果为“1”,表示“忙”;反之为“闲”,在“闲”的状况下才可以写操作。





图4 程序流程图

4 文字和图片的显示

VGG12864G内置128×64 bits的显示存储器,用于存储显示数据,图5为RAM的地址结构。RAM容量为128×64=8192 bits,它被分成8页(page0-page7),每页8行,每页的第一列刚好是一个字节,低位在上,高位在下;显示屏上各像素点的显示状态与显示存储器的各位二进制数据一一对应,显示存储器的数据直接作为图形显示的驱动信号。数据显示为“1”,相应的像素点显示;数据显示为“0”,相应的像素点不显示。

所显示文字或图片的字符库,需要自己造,但人工的几乎不可能,可以选用字模提取软件——“字模提取 V2.2 ”,该软件提供两种取模方式:横向和纵向。再根据OLED显示数据的RAM地址结构,选纵向的取模方式,由于OLED模组的字节结构是高位在下低位在上,所以要设置成字节倒序,字符的字体、字形、大小和显示效果(下划线和删除线)可根据需要进行调整,然后采取C51格式(若用汇编语言编程可采取A51格式)取模生成单个字符的点阵显示代码,最后根据需要在OLED屏上的显示效果,对代码进行相应调整即可得到所需字符库。




图5 显示数据RAM的地址结构 [!--empirenews.page--]

根据所要显示的文字或图片生成所需字符库,通过OLED显示程序将字符代码写入并存储在SSD1303的GDDRAM模块后,就可以稳定地显示出来。通过软件编程也可实现图片的动态显示,如图6为该系统所完成的文字和图片显示。



图6 字符的显示



图7 静态图片的显示

5 结论

设计了一种基于单片机实现OLED显示的方法。针对其功能和特性,解决了相关部分的电路设计,并在所开发的系统上实现了文字、动静态图片的显示。实验证明:该设计电路简单,为该系统大大降低了成本,使该系统可以应用在小型设备上。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

5月9日消息,DRAM内存芯片和内存条、NAND闪存和SSD硬盘正在新一轮的上涨周期中加速狂奔,集邦咨询在最新报告中大幅上调了二季度的价格涨幅预期,尤其是内存。

关键字: SSD 存储芯片 芯片 英伟达

这款全新的中端MCU系列为设计人员提供了更高水平的安全性和灵活性

关键字: 嵌入式 单片机

美光 2500 SSD 采用业界领先的 QLC NAND,性能远超竞品

关键字: 数据中心 SSD NAND

单片机是一种嵌入式系统,它是一块集成电路芯片,内部包含了处理器、存储器和输入输出接口等功能。

关键字: 单片机 编写程序 嵌入式

Apr. 23, 2024 ---- 随着节能成为AI推理服务器(AI Inference Server)优先考量,北美客户扩大存储产品订单,带动QLC Enterprise SSD需求开始攀升。然而,目前仅Solidi...

关键字: SSD AI 服务器

在现代电子技术的快速发展中,单片机以其高度的集成性、稳定性和可靠性,在工业自动化、智能家居、医疗设备、航空航天等诸多领域得到了广泛应用。S32单片机,作为其中的佼佼者,其引脚功能丰富多样,是实现与外部设备通信、控制、数据...

关键字: s32单片机引脚 单片机

在微控制器领域,MSP430与STM32无疑是两颗璀璨的明星。它们各自凭借其独特的技术特点和广泛的应用领域,在市场上占据了重要的位置。本文将深入解析MSP430与STM32之间的区别,探讨它们在不同应用场景下的优势和局限...

关键字: MSP430 STM32 单片机

如今汽车正逐渐成为“车轮上的数据中心”,而先进功能和计算架构的创新也使得这一称号愈加贴切。例如,智能汽车是目前最复杂的由软件驱动的机器,运行约一亿行代码,随着 AI 在汽车中的兴起,这一数字预计很快将攀升至 10 亿行。...

关键字: SSD 智能汽车 存储系统

美光的多端口 4150AT SSD支持虚拟化技术,为日益复杂的软件定义汽车提供集中决策新模式

关键字: 自动驾驶 AI智能汽车 SSD

该系列产品有助于嵌入式设计人员在更广泛的系统中轻松实现USB功能

关键字: 单片机 嵌入式设计 USB
关闭
关闭