oled显示模块ssd1306

管脚定义

GND:电源地

VCC:供电电源3.3v、5v都可以

D0:串行输入时钟CLK

D1:串行输入数据 

RES:复位

DC:控制输入数据/命令(高电平1为数据、低电平0为命令)

模块特点

1、分辨率:128X64(和12864LCD相同分辨率,但该OLED屏的单位面积像素点更多)

2、超广可视角度:大于160°(显示屏中可视角度最大的一种屏幕)

3、超低功耗:正常显示时0.06W(远低于TFT显示屏)

4、宽供电范围:直流3V-5V(无需任何改动,直接兼容常用的3.3Ⅶ5V供电系统)

5、工业级:工作温度范围-30℃~70℃

6、超小体积:(长)27.8MM(宽)27.3MM(厚)4.3MM

7、支持多种操作方式:4线

8、带片选CS信号,可以实现多个SPI或IIC设备在同一总线工作

9、兼容3.3V和5V控制芯片的I/0电平(无需任何设置,直接兼容)

10、亮度、对比度可以通过程序指令控制

11、使用寿命不少于16000小时

12、OLED屏幕内部驱动芯片:SSD1306

I2C通信接口由从地址位SA0,I2C总线数据信号SDA(用于输出的SDAOUT / D2和用于输入的SDAIN / D1)和I2C总线时钟信号SCL(D0)组成。 数据和时钟信号都必须连接到上拉电阻。 RES#用于设备的初始化。

(1)从地址位(SA0)

在通过I2C总线发送或接收任何信息之前,SSD1306必须识别从机地址。 器件将响应从地址跟随从地址位(“SA0”位)和读/写选择位(“R / W#”位),具有以下字节格式,

b7 b6 b5 b4 b3 b2 b1 b0

0 1 1 1 1 0 SA0 R/W#

“SA0”位为从地址提供扩展位。 可以选择“0111100”或“0111101”作为SSD1306的从机地址。 D / C#引脚用作从机地址选择的SA0。

“R / W#”位用于确定I2C总线接口的操作模式。 R / W#= 1,处于读取模式。 R / W#= 0,处于写入模式。

(2)I2C总线数据信号(SDA)

SDA充当发送器和接收器之间的通信通道。 数据和确认通过SDA发送。 应注意,ITO轨道电阻和“SDA”引脚处的上拉电阻变为电压分压器。 结果,确认无法获得有效“SDA”中的逻辑0电平。 “SDAIN”和“SDAOUT”捆绑在一起,充当SDA。 必须连接“SDAIN”引脚才能充当SDA。 “SDAOUT”引脚可能已断开连接。 当“SDAOUT”引脚断开时,I2C总线将忽略确认信号。

(3)I2C总线时钟信号(SCL)

I2C总线中的信息传输遵循时钟信号SCL。 数据位的每次传输在SCL的单个时钟周期期间发生。

I2C主线写数据

I2C总线接口可以访问设备中的写入数据和命令。 关于I2C总线的写入模式的时序图参见下图

I2C的写模式

1)主设备通过开始条件来启动数据通信。开始的定义条件如图8-8所示。通过将SCL保持高电平时SDA从高电平拉到低电平建立开始条件。

2)从属地址遵循识别使用的开始条件。对于SSD1306,通过将SA0更改为LOW或HIGH(D / C引脚充当SA0),从地址为“b0111100”或“b0111101”。

3)通过将R / W#位设置为逻辑“0”来建立写模式。

4)在接收到一个字节的数据后,将产生一个确认信号,包括从地址和R / W#位。有关确认信号的图形表示请参见图8-9。应答位定义为在确认相关时钟脉冲的高电平期间SDA线被下拉。

5)在发送从地址之后,可以通过SDA发送控制字节或数据字节。控制字节主要由跟随六个“0”的一个Co和D / C#位组成。

    如果Co位设置为逻辑“0”,则以下信息的传输仅包含数据字节。

    D / C#位确定下一个数据字节充当命令或数据。如果D / C#位设置为逻辑“0”,则将以下数据字节定义为命令。如果D / C#位设置为逻辑“1”,则它将以下数据字节定义为将存储在GDDRAM中的数据。每次数据写入后,GDDRAM列地址指针将自动增加1。

6)在接收到每个控制字节或数据字节后,将产生应答位。

7)当应用停止条件时,写入模式将完成。停止条件也在图8-8中定义。通过保持“SCL”为高电平将“SDA”从低电平拉到高电平而来建立停止条件。

请注意,数据位的传输有一些限制。

1.在每个SCL脉冲期间发送的数据位必须在时钟脉冲的“高”周期内保持稳定状态。 有关图形表示,请参见图8-10。 除启动或停止条件外,只有SCL为低电平时才能切换数据线。

2.数据线(SDA)和时钟线(SCL)都应通过外部电阻上拉。

猜你喜欢

转载自blog.csdn.net/qq_27524749/article/details/89915076