书接上回
文章1:【STM32】 硬件IIC 驱动SSD1306(0.96 OLED模块) – 1/4 库函数 学习
文章2:【STM32】 硬件IIC 驱动SSD1302(0.96 OLED模块) – 2/4 SSD1306芯片手册 学习
命令表
1.扫描模式
指令 | 含义 |
---|---|
0x00~0x0F | 显示数据RAM指定8位列起始地址的下端( 自下而上) |
0x10~0x1F | 显示数据RAM指定8位列起始地址的上端(自上而下) |
2.寻址模式
SSD1306有3种不同的内存寻址模式:页面寻址模式、水平寻址模式和垂直寻址模式。此命令将内存寻址方式设置为上述三种模式之一。其中,“COL”表示图形显示数据RAM列。
寻址方式 | 演示图 |
---|---|
页面寻址(10xb) |
例如,如果页面地址设置为B2h(第2页),下列地址为03h(第4列),上列地址为10h,则m表示起始列n为PAGE2的SEG3。RAM存储器指针的位置如图所示
就是说,通过0xB2,0x03,010 实现,第三页、第四行的顶部作为数据写入指针的开始
图10 - 2。输入数据字节将写入第3列的RAM位置。
寻址方式 | 含义 |
---|---|
页面寻址 | |
水平寻址 | |
垂直寻址 | |
3.设置列、页地址
指令 | 含义 |
---|---|
0x21 | 这个命令指定了显示数据的起始地址和结束地址。该命令还将列地址指针设置为列的起始地址。此指针用于定义图形显示数据RAM中当前的读/写列地址。如果使用20h命令开启水平地址递增模式,则每读/写一列数据后,自动递增到下一列地址。每当第n列地址指针访问完结束第n列地址时,它将被重置回起始列地址和行地址 |
指令 | 含义 |
---|---|
0x22 | |
4.设置显示起始线(40h~7Fh)
这个命令通过选择一个从0到63的值来设置显示起始行寄存器来确定显示RAM的起始地址。当value等于0时,RAM ro w0映射到COM0。当value等于1时,RAM第1行被映射到COM0,依此类推。
5.设置显示对比度 0x81
该命令设置显示的对比度设置。该芯片从00h到FFh有256个对比度步骤。段输出电流随着对比度阶跃值的增加而增加。
6.设置段重映射(A0h/A1h)
这个逗号会改变显示数据列地址和段驱动程序之间的映射关系。它允许OLED模块设计的灵活性。
该命令只影响后续的数据输入。已经存储在GDDRAM中的数据不会有任何变化。
7. 全显示ON (A4h/A5h)
A4h命令使能根据GDDRAM内容显示输出。
如果发出了A5h命令,那么通过使用A4h命令,显示将恢复到GDDRAM内容。
换句话说,A4h命令从整个显示“ON”阶段恢复显示。
A5h命令强制整个显示处于“ON”状态,而不管显示数据RAM的内容如何。
8. 设置正/反显示(A6h/A7h)
这个命令将显示设置为正常或反向。在正常显示中,RAM数据为1表示一个
“ON”像素,而在反向显示中,RAM数据为0表示“ON”像素
9.设置多路复用比(A8h)
命令将默认的63多路复用模式切换为任意多路复用比,范围从16到63。输出垫片COM0~COM63将切换到相应的COM信号。
10.设置显示开关(AEh/AFh)
这些单字节命令用于打开或关闭OLED面板显示。
当显示器为ON时,通过Set Master Configuration命令所选择的电路将被打开。
当显示为OFF时,这些电路将被关断,段和公共输出分别处于V SS状态和高阻抗状态。这些命令将显示设置为以下两种状态之一:
AEh: display OFF
AFh: display ON
11. 设置页面寻址方式的起始地址(B0h~B7h)
该命令在“页面寻址模式”下,在GDDRAM中定位从0到7的页面起始地址。
12. 设置COM输出扫描方向(C0h/ C8h)
该命令设置COM输出的扫描方向,允许OLED模块设计的布局灵活性。此外,一旦发出该命令,将显示该显示。
例如,如果在正常显示期间发送此命令,则图形显示将立即垂直翻转。
13.设置显示偏移量(D3h)
这是一个双字节命令。第二个命令指定显示起始行到其中一行的映射COM0~COM63(假设COM0是显示起始行,则显示起始行寄存器等于0)。
例如,要将COM16向COM0方向移动16行,第二个字节中的6位数据应该被指定为010000b。为了向反向移动16行,6位数据sh应该由
64 - 16,所以第二个字节是100000b。命令C0h/ ch8h和D3h的设置示例如下表(表10-1、表10-2)所示。
14. 其他
设置显示时钟分频/振荡器频率(D5h)
设置预充电时间(D9h)
设置COM引脚硬件配置(DAh)
Set VCOMH Deselect Level (DBh)
NOP (E3h)
状态读出命令
该命令是在读取数据时设置D/ c# ON LOW发出的(并行接口波形图如图13-1至图13-2所示)。它使单片机能够监控芯片的内部状态。没有为串行模式提供状态读取。