0.96寸OLED屏调试 ----(二)

所需设备:

1、USB 转 SPI I2C 适配器;内附链接

2、0.96寸OLED显示模块;

备注:专业版、升级版都适用;

读写控制

SSD1306通过 D/C#R/W# 两位来确定:读/写数据,写命令和读状态四种通信行为。具体如下图,不再赘述:

GDDRAM内部结构

显示RAM:GDDRAM(Graphic Display Data RAM )内部结构如下所示:

GDDRAM是位映射静态RAM,大小为 128x64 位。GDDRAM分为8页(PAGE0~PAGE7),每页内 1个SEG对应1Byte数据,一页由 128 Byte 组成。一帧显示数据为 1024 Byte(1KB)。

1个数据字节写入GDDRAM时,当前列(SEG)同一页(PAGE)的所有行(COM)图像数据都被填充(即由列地址指针指向的整列(8位)被填充)。数据位D0写入顶行,数据位D7写入底行。(由上到下,由低到高)

三种GDDRAM寻址模式
 页寻址

页寻址模式是器件默认选择的GDDRAM寻址模式,通过"20H,02H"命令可以设置寻址模式为页寻址。

页寻址模式下,寻址只在一页(PAGEn)内进行,地址指针不会跳到其他页。每次向GDDRAM写入1byte显示数据后,列指针会自动+1。当128列都寻址完之后,列指针会重新指向SEG0而页指针仍然保持不变。通过页寻址模式我们可以方便地对一个小区域内数据进行修改。

水平寻址

水平寻址模式可以通过指令"20H,00H"来设置。

水平寻址模式下,每次向GDDRAM写入1byte数据后,列地址指针自动+1。列指针到达结束列之后会被重置到起始列,而页指针将会+1。页地址指针达到结束页之后,将会自动重置到起始页。水平寻址模式适用于大面积数据写入,例如一帧画面刷新。

(下图所示起始页为0,结束页为7;起始列为0,结束列为127)

垂直寻址

垂直寻址模式可以通过指令"20H,01H"来设置。

垂直寻址模式下,每次向GDDRAM写入1byte数据之后,页地址指针将会自动+1。页指针到达结束页之后会被重置到0,而列指针将会+1。列地址指针达到结束页之后,将会自动重置到起始列。

(下图所示起始页为0,结束页为7;起始列为0,结束列为127)

待续!

相关推荐
代码游侠1 小时前
学习笔记——时钟系统与定时器
arm开发·笔记·单片机·嵌入式硬件·学习·架构
CQ_YM1 小时前
ARM--SDK、led、beep与链接脚本
c语言·arm开发·嵌入式硬件·嵌入式
xiaobobo33301 小时前
EIDE的最新版本已经默认只支持debug调试STM32单片机了
stm32·单片机·debug·eide
small_planet2 小时前
通过mqtt使用webhook转发消息实现远程查看单片机日志
单片机·运维开发
Porco.w4 小时前
STM32之ESP8266
stm32·单片机·嵌入式硬件
物联网软硬件开发-轨物科技5 小时前
【轨物方案】轨物科技老旧光伏电站“数字化焕新”技改方案
科技
梁洪飞5 小时前
noc 片上网络
linux·arm开发·嵌入式硬件·arm
日更嵌入式的打工仔5 小时前
RS-485通讯协议
笔记·嵌入式硬件
蓝桥_吹雪5 小时前
HAL库深入了解--STM32与GPIO
单片机·嵌入式硬件