计算公式Y=a+bX,250=a+b*100,300=a+b*150请列出计算步骤

/D1)IIC总线时钟信号SCLD0)不管是数據线还是时钟线都需要连接上拉电阻。RES#是用来初始化设备的

SSD1306必须在发送或者接收数据前,识别到IIC总线上的从地址设备必须回复从地址通过从地址位(SA0位)并且配置读写选择位(R/W 位)以一个字节的格式。

0 0

“SA0”位提供一个额外的从地址位不管是”还是“”,都可以被选擇为SSD1306的从地址D/C#引脚作为SA0为从地址选择。

R/W#”位是被用来决定IIC协议的工作模式R/W#=1时,为读模式R/W#=0时,为写模式

SDA作为通讯通通道在发送器囷接收器之间,数据和应答信号在SDA线上被发送

需要注意的事,ITO 轨道电阻和SDA引脚的上拉电阻变成一个潜在的分压器结论就是,应答可能鈈会达到有效的低电平在SDA线上。

SDAin”和“SDAout”是绑定在一条SDA线上当SDA线为SDAin模式时,SDAout被屏蔽当SDAout使用时,应答信号将被IIC总线忽略

IIC总线上的信息传送是根据SCL时钟信号,每一次数据为的发送都发生在一个单独的SCl时钟周期内

IIC总线协议允许数据和命令在设备间的通讯。时序如下:

R/W:读写选择位 S:开始条件 P:停止条件

1. 主设备开始数据通讯通过开始条件开始条件的定义如下图。开始条件发生在SCL高电平期间SDA产生一个下降沿的跳变。

2. 从地址紧跟着开始信号用于设备从设备。对于SSD1306来说从地址可能是“b0111100”或者“b0111101”。通过改变“SA0位”为01D/C引脚作为SA0)。

4. 應答信号在接收到一个字节的数据后有从设备产生包括从地址和R/W#位,参考下面关于应答信号的图示应答信号定义为在SCL时钟周期的高电岼期间SDA拉低。

5. 在从地址发送结束后不管是控制字节还是数据姐姐都可以发送通过SDA线。一个控制字节主要包括Co位和D/C#位在六个0

A. 如果Co位为低电平,发送的后续信息只能是数据字节

B. D/C#位决定下一个数据字节是数据还是命令字节,如果D/C#字节设置为低电平这意味着下一个字节是命令字节,如果D/C#为是高电平下一个数据字节是数据字节,将被存储在GDDRAMGDDRAM的列地址指针在每一个数据写之后自加一。

6. 应答为在接收到一個数据字节或只命令字节后产生

7. 写模式在接受到停止信号之后结束。停止条件定义如下图所示停止信号发生在SCL高点平期间SDA的上升沿,莋为停止信号

这个模块用来决定输入的到底是数据还是命令,通过D/ C#位来判断

如果D/C#是高电平,D[7:0]是作为显示数据写在图像数据随机存储器Φ(GDDRM)如果是低电平,输入的数据是被理解为命令然后数据输入被解码并且写在相应的命令寄存器中。

2. 振荡器电路和显示时间发生器

这个模块是一个片上低功耗RC振荡电路工作时钟(CLK)可以由内部振荡器产生或者外部时钟源(CL引脚),通过引脚CLS选择如果CLS引脚被拉到高电平,内部的时钟被选择CL应该开路,将CLS引脚拉低则不使用内部振荡电路这时为了工作正常一定要连接CL引脚。当内部振荡器被选择时输出頻率Fosc由命令D5h

显示时序发生器的显示时钟(DCLK)源于CLK。分频系数D可以通过命令D5H

显示帧频率由以下公式决定

*K是每行的显示时钟该值源于

(详情參考“段驱动器/公用驱动器”里的“相位”)

通过命令A8H配置,复位值是(64MUX

FR同步信号可以避免发生撕裂效应。

向OLED驱动器写一个新的图片嘚开始时间依赖于MCU的写速度如果MCU可以完成写一帧图片在一个帧周期内,这个MCU被分类位高速写MCU对于MCU需要更长的时间完成写操作(超过一個帧周期但每到两个帧周期),就是慢速的一种了

   对于高速写微控制器:MCU应该开启向ram里写一个新的帧数据紧跟在FR的上升沿之后,并苴应该在下一个上升沿到来之前完成

  对于低速写微控制器:MCU在第一个下降沿之前开始写,必须在第三个FR脉冲上升沿到来之前完成

3. 囸常的短和显示列地址和行地址映射(SEG0映射到地址00hCOM0映射到00h)。

4. 在串行接口上清除移位寄存器数据

9. 正常显示模式(等同于命令A4h

 段驱动器囷公共驱动器

 段驱动器给予128个电流源来驱动OLED板驱动电流可以在0~100uA调节(256份),公共驱动器发生电压扫描脉冲

段驱动波形被分割成三相:

1. 茬相1OLED上一个图片的像素放电为了准备下一个图像显示内容

2. 在相2OLED像素被驱动到目标电压像素驱动到相当的对地电压,相2的周期可以被编程为116DCLK的长度如果OLED像素的电容值更大,需要更长的周期来给电容充电到达期望的电压值

3. 在相3OLED驱动选择使用电流源去驱动OLED像素并且这时现在的电流驱动环节。

完成这三相之后驱动IC将回到相1去显示下一个图片数据,这三步环节连续执行去刷新显示在OLED

在相3,洳果电流驱动脉宽设置为50在完成50DCLK周期在现在的驱动相,驱动IC将回到相1继续下一个显示

图片显示数据随机存储器(GDDRAM

GDDRAM是一个位映射静態RAM,保持位模式直到显示在OLEDRAM的大小是128*64位且RAM分成8页,从第零页达第七页用来存128*64个单色点阵显示,如图:

但一个数据字节被写在GDDRAM中当湔页的所有的行图像数据被填满(例,一列(8位)使得列地址指针填满)数据为b0被写到最顶的一行,当数据位D7被写到最底下一行如图所示:

为了灵活性,段复用和公共复用输出可以通过软件选择

为了显示的垂直移动,一个内部寄存器存储显示开始行可以被设置通过RAM中嘚数据位置映射到显示屏上(命令D3h

这个区块被用来将输入电源导出到不同级别的内部使用的电压和电流。

*Vcomh 是取消选择水平内部规定。

* Iref是段电流驱动器Isegd的参考电流源参考电流和颜色段电流的关系如下式:

这个数量级的Iref通过改变电阻值来改变,连接咋Iref到地之间如图所礻,推荐电流范围12.50.2uA,以实现Iseg=100uA在最大值255

Iref引脚电压为Vcc-2.5VR1的值可以由下式确定:

下面用图解的方法给出了推荐的SSD1306开机和关机条件

2. VDD电源稳定の后设置RES#引脚为逻辑低至少3us然后拉高。

3. RES#处于低电平状态之后扥带至少3us,然后打开VCC

1. ESD保护电路连接达VDDVCC之间,当VCC关闭时VDDVCC要高在图Φ用点线表示。

3. 电源引脚(VDDVCC)在关闭情况下一定不要拉到地。

注意:*”代表不需要管着一位

D[6]:1”显示关“0”显示开

除了命令表中给出嘚模式外其他模式都禁止作为命令写入芯片;以防止意外的情况发生。

为了从GDDRAM中读数据在6800 并行模式下,要将R/W#WR#

D/C#位都拉高在8080并行模式下,ERD#)引脚拉低D/C#引脚拉高。在串行模式下不提供数据读

GDDRAM在正常数据读模式下,列地址指针在没一次数据读之后自加一

同样,茬第一次数据读前需要读取虚拟字节。

为了向GDDRAM中写数据将R/W#位拉低且D/C#位拉高,在6800并行通讯和8080并行通讯模式下都可以串行接口总是在写模式下。

GDDRAM列地址指针在每一次写数据之后自加一

这个命令说明了在页写模式下的显示数据RAM的低的8位列起始地址。列地址咋每个数据接收後自加一

2. 设置页地址模式下的高起始地址(10h~1Fh

这个命令说明了在页地址模式下的显示数据RAM的高的8位列起始地址。列地址在每个数据接收後自加一

SSD1306中有三种不同的内存地址模式:页地址模式,水平地址模式和垂直地址模式这个命令设置内存地址模式,选择其中的一个“COL”意思是GDDRAM的列。

页地址模式下在显示RAM写过或者度过之后,列地址指针自加一如果列地址指针到达最后的地址,列地址指针会回到開始地址且页地址指针不变用户必须设置新的页且页地址为了几首下一个页RAM内容。

在页地址模式下正常显示数据RAM读或写如下的几步需偠定义开始RAM接收指针位置

*设置页开始地址在目标地址通过命令B0hB7h

*设置低起始列地址指针通过命令00h~0Fh

*设置高起始列地址指针通过10h~1Fh

例如:如果页哋址被设置到B2h,低列地址是03h高列地址是00h,这就意味着在PAGE2SEG3开始,RAM接收指针定位如图所示输入数据字节将被写在RAM中的第3列。

在水平地址模式RAM读或写后,列地址指针自动加一如果列地址到达最后一列,列地址会复位到列开始地址并且页地址指针加1页移动的顺序和水平地址模式列地址指针如图,当列地址指针和页地址指针都到达最后一个地址时指针会复位到列开始地址和页起始地址。

在垂直地址模式顯示RAM读或者写后,页地址自加一如果页地址指针到达最后的页地址,页地址指针会复位到页起始地址并且列地址指针自加一垂直地址模式页地址指针的移动顺序和列地址指针如图,当列地址指针和页地址指针都到达最后一个时指针复位到页起始地址和列起始地址。

在囸常显示数据RAM读或写且处于水平或垂直地址模式时要遵循一下几步来定义RAM访问指针位置:

*通过命令21h设置列起始和结束地址到目标显示位置

*通过命令22h来设置页起始和结束地址达目标显示位置

这个三字节命令描述了显示数据RAM列起始地址和结束地址。这个命令也可以设置;列起始地址的列地址指针这个指针定义在GDDRAM中正在读或写的列地址。如果通过命令20h使能了水平地址增加模式在完成读或写数据RAM后,下一个列哋址会自加一不管列地址指针有没有到最后一个列地址,他都会回到列起始地址并且行地址自加到下一行

这个三字节命令描述了显示數据RAM的页起始地址和结束地址。也包括设置页起始地址指针用来定义GDDRAM中的当前在读或写的页地址。如果使用命令20h设置为垂直地址模式茬完成读或写一页数据后,下一个页地址将自加一到下一个页地址不管页地址指针有没有到最后一个页地址,都会被复位到起始页地址

该图展示了列地址和页地址指针移动顺序:列起始地址设置位2,结束地址设置位125页起始地址设置为1,页结束地址为6通过命令20h设置的沝平地址增加模式,在这个例子中GDDRAM可用列范围从第2列到第125列,从第一页到第六列另外,列地址指针位置为2页地址指针设置为1.在完成讀或写整篇的数据后,列地址自加一到达下一个读或写的RAM中的位置不管列地址指针是否到达最后的125列,都会回到最开始的第2列且页地址洎加一当到达最后的第六页和最后的125列时,页地址复位到1列地址复位到2.

这个命令通过选择063的一个值来设置显示起始线寄存器为了决萣显示RAm的起始地址。当该值等于0RAM的第0行映射到COM0,当该值等于1时第一行映射到COM0等等。

这个命令设置显示的对比度SSD1306将对比度分成256份,對应值为00h-FFh

端输出电流在该值增加时增加。

这个命令改变显示数据列地址和段驱动器之间的映射关系这允许OLED模块的灵活设计。

这个命令徝影响数据输入的顺序数据早存在在GDDRAM中的数据不会改变。

A4h命令使能根据GDDRAM中的内容显示输出

如果A5h命令发送后,通过发送A4命令GDDRAM中的内容將重新出现。

换句话说A4h命令就是使整个重新开始显示。

A5h命令强制打开整个显示而不管显示数据RAM中的数据。

这个命令设置正常显示或反顯在正常显示一个RAM数据“1”代表打开一个像素点,而在反显模式下“0”代表点亮一个像素点。

该命令选择63种复用模式范围是1663.输出塊COM0~COM63被选择为相应的COM信号。

这个单字节命令被用来打开OLED显示或关闭

当显示打开时,通过设置主配置命令打开被选择的电路

当显示关闭时,一些电路被关闭并且segmentcom输出为高阻态以下命令用来设置显示的两种状态。

这个命令设置在页地址模式下GDDRAM的页起始地址范围(PAGE0~PAGE7)。

该命令设置COM输出的扫描方式在OLED模块设计上允许更多的灵活设计。另外一旦该命令被发送,显示将立即生效例如,如果在正常显示模式期间该命令被发送,图像显示将立即垂直翻转

该命令是双字节命令,第二个命令描述显示开始行在COM0~COM63的映射(假设COM0是显示起始行然后顯示起始寄存器就等于0)。

例如为了把COM16移动16行到COM0,则设置第二个字节为010000b下面两个表展示了设置命令C0h/C8hD3h

16. 设置显示时钟分频率/振荡器频率(D5h

CLK中设置分频率去产生DCLK(显示时钟)范围116

如果CLS引脚被拉高时可编程振荡器频率 Fosc就是CLK时钟源,这个四位数值包括16种不同的频率可供选择默认值位1000b

该命令被用来设置预充电周期的持续时间以DCLK的整数倍位间隔,复位值等于2DCLK

该命令设置COM信号引脚配置去配合OLED嘚硬件电路布局。

下表展示了COM引脚配置在不同的情况下(MUX=64):

该命令用来设置调压器输出

通过在数据读期间设置D/C#位为低电平执行他允许MCU讀取监视器的内部状态。在串行通讯模式下没有状态读寄存器。

该命令由五个连续字节设置水平滚动参数且决定滚动起始页结束页,滾动速度

在执行该命令前,必须屏蔽水平滚动(2Eh)否则,RAM内容会被破坏

SSD1306水平滚动被设计成128列滚动,下列两个图表为例

该命令包含陸个连续字节为了设置连续垂直滚动参数和决定滚动开始页,结束页滚动速度和垂直滚动偏移量。

命令29h/2Ah之后的字节B[2:0],C[2:0]D[2:0]是用来设置连续垂矗滚动字节E[5:0]是用来设置连续垂直滚动偏移量,所有的这些字节一起设置连续对角线(垂直+水平)滚动如果垂直滚动失调量字节E[5:0]被设置荿0,这时就只有水平滚动就像命令26h/27h那样

在执行该命令之前必须要平布滚动(2Eh,否则,RAM中的内容会被破坏显示效果如图:

此命令停止滚動的进行,在发送2Eh命令之后停止滚动,RAM中的内容需要重新写入

该命令开始滚动且在滚动参数配置完成(命令26h/27h/29h/2Ah)之后执行,最后一次写嘚滚动设置命令将覆盖上一个滚动配置命令

在滚动开始之后下面这些操作是禁止的

1,RAM操作(读或写)

2. 改变水平滚动设置参数

该命令包括三個连续字节用来设置垂直滚动区域。为了连续垂直滚动功能(命令29h/2Ah)在垂直滚动模式下行的数量应该小于或等于MUX比。

最大范围是不可以超过的值如果超过这些值得话,可能会损坏设备基础工作配置应该参考电气特性列表或者引脚描述部分。

该设备对光敏感正常工作昰应该注意避免在任何光源下暴晒该设备。该设备位非辐射防护设备

条件(除非另有说明):

无负载,显示开所有开,

输出电流一致性调节引脚(对比度FFh

显示时序发射器的振荡器频率

64MUX模式的帧频率

显示开内部振荡器使能

K:显示时钟的数量(默认是54

6800系列MCU并行接口时序特性

8080系列MCU并行接口时序特性

          写周期时序         

时钟周期时间(写周期)

 三线串行接口特性

数据保持时間(SDAout

数据保持时间(SDAin

开始条件设置时间(一个重复的开始条件相对应)

数据引脚或者时钟引脚的上升时间

数据引脚和时钟引脚的下降時间

在一个新的传送开始前始前的待电时间

我要回帖

更多关于 Y2B 的文章

 

随机推荐