介绍
本次介绍SSD1306 IIC显示原理和配置命令
原理图
芯片位置在如图地方
引脚如下:
上面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接口
引脚
引脚选择
IIC时序
第一个字节:
7位地址+1位独写位,由于SSD1306串行数据不可读,所以只能写0,从机应答ACK
第二个字节:控制字节(control byte)用于指定后面的数据是命令还是数据
由于没有单独DC引脚,所以数据或命令的区分就在第二字节 如图右下
bit[7]: Co连续模式,
置1:表示每个数据位前都有一个控制字节(control byte)
置0:表示先来一个控制字节(control byte)之后全部都是数据位,是命令都是命令,数据都是数据
bit[6]: DC指定后面是命令还是数据
bit[5-0]:没用
执行逻辑框图
下面的GDDRAM和上面的点阵屏是一一对应关系
横坐标0-127
纵坐标进行了分页处理,由于oled是点阵屏幕。只有亮灭两种状态,一次传输一个字节8个bit,可以控制8个像素点,所以纵坐标分了8页
由于进行了分页,写入效率提高了,但是如果写入一个A,需要占用0页下半部分,1页上半部分,串行数据也不能读取GDDRAM这个时候就不好弄了,所以程序中就定义了一个缓存数组,这样就好办了
配置命令
正常配置流程
|