命令描述
1. 基础命令
1.1 为页地址模式设置列低半字节的开始地址(00h~0Fh)
这个命令专门为8位列地址的低半字节设置以通过页地址模式显示RAM中的数据。而每一个数据使用后列地址会自动增加。请参考表格9-1的部分以及1.3的部分来了解详细情况。
1.2 为页地址模式设置列高半字节的开始地址(10h~1Fh)
这个命令专门为8位列地址的高半字节设置以通过页地址模式显示RAM中的数据。而每一个数据使用后列地址会自动增加。请参考表格9-1的部分以及1.3的部分来了解详细情况。
1.3 内存地址模式设置(20h)
在SSD1306中有三种地址模式分别为:页地址模式,水平地址模式和垂直地址模式。这个命令用于设置内存地址为上面三种地址模式中的一种。在这里“COL”表示图表显示数据RAM列。
页地址模式(A[1:0]=10xb)
在页模式中,显示RAM读写完后,列地址指针自动加一。如果列地址指针到达了列地址尾部,列地址指针重新回到列地址开始的地方,但是页地址指针不变。用户要设置新的页指针和列指针来获取下一页RAM的内容。而PAGE和列地址指针扫描每页地址的模型在下面。
在正常的RAM数据显示读写以及页地址模式时,下面几项是需要去定义获取RAM指针开始的定位:
通过命令B0h~B7h,设置目标显示屏当地的页开始地址
通过命令00h~0Fh,设置低列开始地址指针
通过命令10h~1Fh,设置低列开始地址指针
例如如果页地址设为B2h,低列地址为03h,而高列地址为00h,那么也就意味着开始列是PAGE2的SEG3,而RAM的获取指针定位到下图中。而输入的数据将会被写入列3的位置。
水平地址模式(A[1:0]=00b)
在水平地址中,显示RAM读写完后,列地址指针自动加一。如果列地址指针到达了列地址尾部,列地址指针重新回到列开始地址,同时页地址指针也加一。而PAGE和列地址指针扫描每页地址的模型在下面。当列地址指针和页指针都到达末尾时,两个指针会调回到列地址和页地址指针开始的位置。
垂直地址模式(A[1:0]=01b)
在垂直地址中,显示RAM读写完后,页地址指针自动加一。如果页地址指针到达了页地址尾部,页地址指针重新回到页开始地址,同时列地址指针也加一。而PAGE和列地址指针扫描地址的模型在下面。当列地址指针和页指针都到达末尾时,两个指针会调回到列地址和页地址指针开始的位置。
在正常的RAM数据显示读写以及水平/垂直地址模式时,下面几项是需要去定义获取RAM指针开始的定位:
通过命令21h,设置目标显示屏当地的列开始和结束地址
通过命令22h,设置目标显示屏当地的页开始和结束地址
1.4 设置列地址(21h)
这个三个一组的命令是为设置显示数据RAM的列开始和结束地址专门设立。这个命令也设置了列地址指针的开始地址。在图显RAM数据时这个指针用来定义当前的读写列地址。如果通过命令20h使能水平地址增加模式,当完成一列数据的读写后这个指针将自动增加到下一个列地址。而当列地址指针到达列地址尾部他会调到列开始地址处,同时行地址也会自增一调到下一行。
1.5 设置页地址(22h)
这个三个一组的命令是为设置显示数据RAM的页开始和结束地址专门设立。这个命令也设置了页地址指针的开始地址。在图显RAM数据时这个指针用来定义当前的读写页地址。如果通过命令20h使能垂直地址增加模式,当完成一页数据的读写后这个指针将自动增加到下一个页地址。而当列地址指针到达列地址尾部他会调到页开始地址处。
下图显示了列地址和页地址指针移动的方式:列开始地址设为2,列结束地址设为125,而页开始地址设为1,页结束地址设为6。同时通过命令20h使能水平地址增加模式。在这种情况下,图显RAM数据只有从列2到列125以及从页1到页6的数据可以被获得。此外,列地址指针设为2而页地址指针设为1,在完成读写一像素数据的操作后列地址自动增加一以获取下个RAM地址的读写操作。而当列地址到达125后,他将重新返回到列地址2同时页地址自动加一。而当到达页6的列125时,页回到页1而列回到列2.如下图
1.6 设置显示开始行(40h~7Fh)
这个命令集用来设置显示开始行寄存器通过选择0到63中任何一值从而定义显示RAM的开始地址。当此值为0时RAM行的0映射到COM0中,当此值为1时RAM行的1映射到COM0中。参考表10-1获取更多说明。
1.7 设置BANK0的对比控制(81h)
这个命令集用于设置显示的对比控制。这个芯片有256个对比阶层,分别从00h到FFh,而区域的输出电流随阶层的增加而增加。