技术文档

at89c51单片机 OLED显示屏,行驱动电路设计,单片机AT89C51与和显示屏的硬件接线

小编 2024-11-24 技术文档 23 0

OLED显示屏,行驱动电路设计,单片机AT89C51与和显示屏的硬件接线

OLEDindustry

一个有内容的公众平台!

随着科学技术与电子业技术的不断发展更迭,有机发光二极管如何简易并且有效的实现显示均匀、大面积发光、高亮度高分辨率发光、以及延长有机发光二极管寿命等当前亟需解决的问题,是我们未来要面对的技术挑战。今天小编给大家带来几个平日里做有源、无源oled显示驱动设计的例子,以供大家作为电子设计参考。

一、驱动控制SSD1303实现96x64点阵PM-OLED

本例子使用Solomon公司的OLED显示驱动电路SSD1303,结合AT89C51单片机实现驱动OLED显示屏的方法。SSD1303是一款集控制器、行驱动器和列驱动器于一体的专用于OLED显示控制驱动电路。

实验中OLED结构阳极材料,采用ITO(铟锡氧化物),阴极则使用Mg与其他稳定金属合金的办法Mg:Ag做阴极,以提高器件量子效率和稳定性,并可以在有机膜上形成稳定坚固的金属薄膜。

PM-OLED使用普通的矩阵交叉屏, OLED位于交叉排列的阳极和阴极中间,通过对阳极和阴极组合的选通,可以控制每一个OLED的点亮。

SSD1303芯片内部电路框图如下图1所示:

SSD1303芯片主要由MCU接口、命令译码器、振荡器、显示时序发生器、电压控制与电流控制、区颜色译码器、和图形显示数据存储器(GDDRAM)、行驱动和列驱动组成。这种IC的专用OLED驱动方案使OLED显示性能最佳,降低了功耗。该器件采用TCP/TAB封装。具有驱动最大132×64点阵的图形显示、提供的逻辑电源为2.4~3.5V、供给OLED屏的电源为7.0~16V、列输出的最大电流为 320μA、行输入的最大电流为45mA、低电流睡眠模式小于5μA、256级对比度控制,可编程帧频、具有几个MCU接口,如68/80并行总线和串行的周边接口、132×65bit显示缓冲器、可以垂直滚动、支持部分显示、工作温度:-40 oC~ 85 oC。

整个系统由单片机、控制驱动电路SSD1303和OLED显示屏三部分组成.SSD1303与单片机接口的引脚有:DO~D7为与单片机接口的数据总线,R/W(RW#)为读写选择信号,D/C为数据/命令选择信号,CS#为片选信号,低电平有效,E(RD#)为使能信号,RES#为复位信号。单片机采用ATMEL 公司生产的低功耗、高性能的AT89C51, AT89C51与SSD1303和显示屏的硬件接线如图2所示,P1.0、P1.1、P1.2、P1.3、P1.4分别与SSD1303的 R/W(RW#)、D/C、CS#、E(RD#)、RES#相连,P0口与SSD1303的数据总线相连。其它引脚的连线VCC接12V,VDD接 2.7V,VSS接地等。下面通过程序来控制这些引脚,从而使OLED显示需要的汉字或图形。主程序软件流程图如图3所示。

图2 单片机AT89C51与SSD1303和显示屏的硬件接线

图3 主程序软件流程图

二、台湾普诚PT6807/PT6808无源矩阵驱动方式

本案例采用ISL97702便携式产品的DC/DC直流升压电源电路,输入电压2.3~5.5V,输出电压根据负载轻重在2~30V范围内可调;OLED显示驱动采用PT6807和PT6808构建的无源矩阵驱动方式,适用于单色小尺寸OLED的显示驱动。

只所以选择ISL97702作为电源IC,需要考虑器件运行在最高效率的同时,尽可能的降低功耗并延长电池工作时间。ISL97702具有一种突发模式以及双输出电压选择功能,用以在轻载电流下保持转换器的效率和电源的节约。并且ISL97702还具有浪涌电流限制、短路保护和关机期间负载隔离等功能。ISL97702的DC/DC直流升压电源电路图,如下图所示:

基于ISL97702的DC/DC直流升压电源电路图

OLED显示屏像素点,按行、列排成矩阵,显示图像时,按行扫描或按列扫描,无源矩阵的基本结构框图,如下所示:

无源矩阵基本结构框图

其中“行”是由公共驱动器PT6807依次选通,“列”则是由列选择器PT6808根据图形要求来开通。例如,图中假如第一行只有第一个OLED导通就只有大约0.3mA,而假如第二行是所有OLLED都选通,而每一行一共有100个OLED,则其总电流大约为33mA。也就是说,其总电流是由每一行中的OLED数,就是其象素数决定。因为OLED的亮度是由其电流决定的,所以保持电流的稳定是很重要的。列驱动通常采用P沟道器件作为电流源。为保证其工作于饱和区,至少需要有2伏电压,这样其输出电流随VDS的变化将会小于1%每伏。当某一行有很多OLED导通时,它的总电流就比较大。这时在连接电极上就会有较大压降,从而使VDS降低。而这种压降又取决于显示的图形,而且是不可避免的。所以必须将电流受VDS的变化而变化的灵敏度降至最低。同时输出电流的不均匀性也受到驱动器件的不一致性的影响,这种不均匀性可以靠提高VGS工作电压和版图匹配技术来减小。

128×128点阵模块驱动接口,如下图所示:

128×128点阵模块驱动接口图

1. 行驱动电路设计

PT6807是点阵OLED图形显示系统64路行驱动器,它利用CMOS技术,提供64个移位寄存器和64路输出驱动,PT6807自己产生时钟信号用来控制PT6808列驱动器。

PT6807可以设计为主,从两种模式,为OLED驱动显示提供方便;主/从模式选择由控制脚MS来控制,在主模式下,选择MS脚为高电平,输入/输出脚DIO1,DIO2,CL2只作为输出脚来用;在从模式下,MS脚被置为低电平,输入/输出脚CL2作为输入来用,而DIO1,DIO2的状态由SHL脚来决定。

晶振电路:主模式下,可由R、C、CR端来决定时钟频率;在从模式下,晶振电路的R,C端为悬空状态,CR端接高电平。

显示占空比选择:显示占空比靠输入脚DS1,DS2的状态来决定;在主模式下根据DS1,DS2脚的设置来选择占空比,有四种占空比1/48,1/64,1/96,1/128可供选择;在从模式下,DS1,DS2脚与电源VDD相连。

移位时钟和相位选择:PCLK2用来选择移位数据是在CL2时钟信号的上升沿,还是下降沿移出;数据移位方向的选择由MS,SHL脚来控制。

2. 列驱动电路设计

PT6808是点阵OLED图形显示系统64路列驱动器,它也利用CMOS技术,并提供显示RAM、64位数据锁存、64位驱动和解码逻辑,内部显示RAM用来存储由八位微处理器传来的显示数据,它根据存储数据产生点阵OLED驱动信号,与PT6807(行驱动器)配合使用。

输入缓存用来允许和禁止PT6808,当输入输出数据和指令被执行时,CS1B和CS3必须处于工作状态,不论CS1B和CS3处于任何状态,RSTB和ADC都可以正常操作,并且内部状态不会改变。

输入寄存器用来与MPU接口,并临时存储要写入显示RAM的数据,当CS1B和CS3处于工作状态时,输入寄存器通过R/W和RS来选定,数据通过MPU被写入输入寄存器,然后写入显示RAM中,数据在E信号的下降沿被锁入,通过内部操作自动写入显示RAM中。

输出寄存器:当CS1B和CS3处于工作状态,并且R/W和RS为高电平时,输出寄存器用来临时存储显示数据RAM,也即显示数据RAM中的存储数据被锁存到输出寄存器。当CS1B和CS3处于工作状态,R/W为高,RS为低时,状态数据(忙检测)可以被读出。

为了读出显示数据RAM中的内容,需要访问读指令两次,在第一次访问中,显示数据RAM中的数据被锁存到输出寄存器中,在第二次访问中,MPU读锁存数据。这就是说,在读显示数据RAM时需要一次假读,但是,在读状态数据时不需要假读。

为了克服在工作过程中当OLED亮度较高时的自动关屏问题,在写入数据之前应该查看该项,若关屏,则将其打开,以保证OLED屏的正常工作。其中判断是否关屏,若关闭则将其自动打开子程序如下:

Rs=0; // rs为数据/指令选择脚

r_w=1; // r_w为读/写输入脚

e =1; // e为允许信号输入脚

busy = P3; // P3接数据线端口

e = 0;

if(busy&0x20==0x00) // 若为真,表示已关屏

{com=0x3f; // com为形参

wr_command(com);} // wr_command是写命令子程序

三、TFT-OLED模拟像素单元驱动/控制电路

AM-OLED驱动实现方案包括模拟和数字两种。在数字驱动方案中,每一像素与一开关相连,TFT仅作模拟开关使用,灰度级产生方法包括时间比率灰度和面积比率灰度,或者两者的结合。目前,模拟像素电路仍占主流,但在灰度级实现上,模拟技术与时间比率灰度和面积比率灰度理论相结合将会是将来的一个发展趋势。在模拟方案中,根据输入数据信号的类型不同,单元像素电路可分为电压控制型和电流控制型。

电压控制型像素电路

1.两管TFT结构

电压控制型单元像素电路以数据电压作为视频信号。最简单的电压控制型两管TFT单元像素电路如图1所示。

图1 两管TFT驱动电路

其工作原理如下:当扫描线被选中时,开关管T1开启,数据电压通过T1管对存储电容CS充电,CS的电压控制驱动管T2的漏极电流;当扫描线未被选中时,T1截止,储存在CS上的电荷继续维持T2的栅极电压,T2保持导通状态,故在整个帧周期中,OLED处于恒流控制。

其中(a),(b)被分别称为恒流源结构与源极跟随结构,前者OLED处于驱动管T2的漏端,克服了OLED开启电压的变化对T2管电流的影响;后者在工艺上更容易实现。两管电路结构的不足之处在于驱动管T2阈值电压的不一致将导致逐个显示屏的亮度的不均匀,OLED的电流和数据电压呈非线性关系,不利于灰度的调节。

2.三管TFT结构

基于第二代电流传输器原理的电压控制型像素单元电路如图2所示,虚线左边可视为外部驱动电路,右边为单元像素电路。

图2 基于第二代电流传输器原理的像素电路

在控制模式下,T2和T3开启,T1和运算放大器构成第二代电流传输器,由于运算放大器的放大倍数可以取得很大,T1管的阈值电压对电流的影响变得不敏感,此时,流经T1的电流:

IT1=Vin/Rin

并且T1管源极电压应低于OLED的开启电压,防止OLED开启。在保持模式下,T2和T3关断,存储电容Cs维持T1管的栅极电压,电流经T1进入OLED。其中放大器由COMS电路实现,所有同行像素可共用一个运算放大器。

仿真结果表明,尽管T3管存在电荷注入与时钟馈漏效应,使得OLED电流略小于控制电流;在OLED标称电流为1μA,阈值电压漂移超过5V时,控制电流、OLED电流相对误差分别为-0.18%、5.2%,成功补偿了TFT的空间不均性和不稳定性。

虽然电压控制型电路具有响应速度快的特点,但由于不能准确地调节显示的灰度,难以满足显示的需求,于是人们提出电流驱动方案。电流控制型单元像素电路是以数据电流作为视频信号的。

3管电流控制型TFT像素电路

4-TFT电流控制电流镜像素电路

目前,全球已经有多家公司在从事OLED驱动IC的研究,到目前为止,还没有完全商业化的AM-OLED的驱动IC。但NextSierra公司已推出了分别集成的TFT-OLED行列驱动NXS1008、NXS1009和控制芯片NXS1010,张志伟等人采用该系列芯片,通过MCS-51单片机的控制来驱动240×320×3点阵的TFT-OLED屏,实现了大信息量的动态图形显示。

由于液晶显示器件的配套驱动芯片功能比较完善,且价格低廉,所以将此类芯片移用于有源矩阵显示屏(AM-OLED)成为了国内外当前的研究焦点。显示驱动IC是目前TFT-OLED的薄弱环节,开发通用或者专用的驱动IC,并集成控制电路,是提高OLED在平板及显示领域竞争力的重要动力。

往期精彩回顾

OPPO的又一首次突破!屏下摄像头真的来了.......

维信诺供应AMOLED!小米屏下摄像头来啦!

OLEDindustry

↓↓ 可以畅聊到天亮的行业技术群!你要不要来?↓↓

管理员微信:OLEDindustry2

添加管理员微信 > 入群 > 尽情畅聊探讨

单片机的入门-51单片机

想学习单片机的同学可以关注、私信我或者在评论区回复我要入门。早期可能是绝大多数嵌入式工程师或者电子爱好者接触的第一款单片机——51单片机,不像现在很多学习单片机的朋友都跳过51单片机直接学起了STM32等比较高级一些的单片机。

51单片机指的是所有搭载可执行INTEL 8031指令系统的MCU的单片机。MCS-51单片机是美国INTEL公司于1980年推出的产品,典型产品有 8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。

有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。

基于51单片机的USB最小系统

其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。同样的一段代码,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、 PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取代了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

51单片机的具有价格低廉、适合初学者学习的优点。缺点也很明显,运算速度慢,性能不够优秀等。这是由于51单片机设计时采用了集中指令(CISC)结构,而且为了抗干扰,设计者采用了12分频的方法。因为I/O接口采用了准双向口,所以I/O接口的驱动能力也不怎么强。早期的51单片机甚至还预留了红外线照射窗,通过红外线照射的方式复位。51芯片内部也没有集成振荡电路,只能通过外部电路加载晶体振荡器或者PLL电路实现时钟功能。这就造成了使用51单片机制作计时电路等对于时钟要求高的电路的不准确性。

虽然51单片机有的缺点有些多,但是是它带领我们走进电子世界,帮助我们了解电子设计这条道路上的领路人。就像在现代生活中到处都是汽车的身影,交通工具越来越便捷,而它还是那台老旧的自行车,在哪天我们提倡低碳环保或者想锻炼的时候,它又可以从新派上用场。

相关问答

MCS51单片机和 at89c51单片机 是一回事吗,是什么关系?

MCS-51从广义上讲是指所有的51系列单片机,从狭义上讲是指Intel公司生产的51系列,一般称为标准51系列.主要产品为8031/8051/8052/8751/8752,包含NMOS型和CMOS型...

AT89 S52单片机和 AT89C51单片机 的区别?

AT89S52是AT89C51的增强型,AT89S522比AT89C51,定时器多一个T2(这个东东强悍的很),RAM多128B,ROM多4K,中断多2个,多一个看门狗,在掉电、数据指针等方面还有.....

怎么用编程器读出 AT89C51单片机 程序-ZOL问答

中关村在线vivoX90Pro+举报电子书纽曼纽曼C512人讨论6810次围观关注问题写回答讨论回答(2)wwwQ11O如果下载程序的时候把保密位也置位了,那编程器...

MCS51单片机和 at89c51单片机 是一回事吗?

泻药两者主要的区别在于ROM和RAM的大小不一样。AT89C51RC有32K的FLASH和512字节的RAM,而AT89C51只有8K和256字节。在这类基本51内核上写代码,你可以选择Keil开.....

at89c51单片机 由哪些主要功能部件组成?

是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多种功能的I/O接口等一台计算机所需要的基本功能部件。单片机内包含下列几个部件:·一个8位CPU;·...

在keil4哪里可以找到 at89c51单片机 ?

KEIL4有2个版本,一个是ARM系列,即MTK版本,另一个是C51系列。LZ想用C51系列单片机,必须下载C51版本的KEIL4KEIL4有2个版本,一个是ARM...

AT89c51单片机 的cpu几位?

AT89c51单片机的cpu是8位的,它是一款比较简单的入门级单片机,它的编程环境是Keil,编程语言是c语言,利用它可以实现许多产品的开发。常用的单片机还有16位和32...

数据总线是位.14、 89C51单片机 有个16位可编程定时器/计数...

[最佳回答]13、51系列单片机地址总线是16位,数据总线是8位.14、89C51单片机有2个16位可编程定时器/计数器,有4种工作方式.15、80C51单片机片内ROM的容...

at89c51 属于什么元件类别?

at89c51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微...

MCS51单片机与 89C51单片机 的区别?

MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89...

猜你喜欢