OLED1306(SSD1306)(12864)
一、OLED接口有两种常见形式:
1、8080并行节后
CS:OLED片选 WR:向OLED写数据 RD:向OLED读取数据 D[7:0]:8为双向数据线
RST(RES):硬件复位OLED DC:命令/数据标志 (0读/写命令,1读写数据)
注意:这儿的H和L都是稳定状态,H(高电平稳定状态)、L(低电平稳定状态)
在8080方式下,读取数据为了同步时钟,这时我们要设置一个假读命令,以使得微控制器的操作频率和显存的操作频率相匹配。
2、6线串行SPI方式
RST(RES):硬件复位OLED DC:命令数据标志(0:读写命令,1读写数据) SCLK:串行时钟线 SDIN:串行数据线 VCC
GND
3、四线SPI方式(IIC)
SDA(数据线) SCL(时钟线) VCC
GND
四线状态只能往模块写数据而不能读取数据。
SSD1306总共12888。
注意:对于4线SPI模式(IIC),模块是不支持读的,这样写入一个数据时就必须每次写入一个数据时,就必须把设置点的每个字节的每个位都搞清楚,所以常采用的方式是在MCU内部建立一个GRAM(实际上是SRAM)(共128*8个字节),这样在每次修改时,就可以单独修改SRAM中的数据。
SSD1306常见命令:
表格使用举例:第一个命令:0X81,用于设置对比度,这个值包括两个字节,第一个是0X81位命令,第二个位所需要设置的值。
8080格式的那种格式的12864已经不常用了,因为接线数量和面积,占用MCU的I/O口数量较多(为了节约经济,一般都采用四线或六线),其实控制方式原理一样。