0.96寸OLED显示原理和配置命令

[复制链接]
查看276 | 回复3 | 2024-6-20 08:28:55 | 显示全部楼层 |阅读模式

介绍

本次介绍SSD1306 IIC显示原理和配置命令

原理图

1718842919021.jpg

芯片位置在如图地方

1718842964280.jpg

引脚如下

上面128引脚对应 128 * 64的 128横向(SEG引脚)

左,左下部分,右,右下部分对应 128 * 64的 64纵向(COM引脚)

下面的是引出的控制排线

内置显示存储器(GDDRAM):128*64bit (128*8Byte) SRAM

供电:VDD=1.65·3.3V(IC逻辑),VCC=7·15V(面板驱动 这个内部已经集成升压电路,不用管)

通信接口:8位6800/8080并行接口,3/4线SPI接口,I2C接口

引脚

1718843034961.jpg

引脚选择

1718843067177.jpg

1718843080065.jpg

IIC时序

1718843112428.jpg

第一个字节:

7位地址+1位独写位,由于SSD1306串行数据不可读,所以只能写0,从机应答ACK

第二个字节:控制字节(control byte)用于指定后面的数据是命令还是数据

由于没有单独DC引脚,所以数据或命令的区分就在第二字节 如图右下

bit[7]: Co连续模式,

置1:表示每个数据位前都有一个控制字节(control byte)

置0:表示先来一个控制字节(control byte)之后全部都是数据位,是命令都是命令,数据都是数据

bit[6]: DC指定后面是命令还是数据

bit[5-0]:没用

执行逻辑框图

1718843219639.jpg

下面的GDDRAM和上面的点阵屏是一一对应关系

横坐标0-127

纵坐标进行了分页处理,由于oled是点阵屏幕。只有亮灭两种状态,一次传输一个字节8个bit,可以控制8个像素点,所以纵坐标分了8页

由于进行了分页,写入效率提高了,但是如果写入一个A,需要占用0页下半部分,1页上半部分,串行数据也不能读取GDDRAM这个时候就不好弄了,所以程序中就定义了一个缓存数组,这样就好办了

配置命令

正常配置流程

1718843258246.jpg

回复

使用道具 举报

WT_0213 | 2024-6-20 08:44:51 | 显示全部楼层
回复

使用道具 举报

1084504793 | 2024-6-20 09:20:21 | 显示全部楼层
回复

使用道具 举报

iiv | 2024-6-20 21:05:03 | 显示全部楼层
很棒
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则