OLED显示屏其实就是个128*64
64=8 * 8 八页的界面
OLED由于同时具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。
模块的8080并口读/写的过程为:
先根据要写入/读取的数据的类型,设置DC为高(数据)/低(命令),然后拉低片选,选中SSD1306,接着我们根据是读数据,还是要写数据置RD/WR为低,然后:
1.读数据:在RD的上升沿, 使数据锁存到数据线(D[7:0])上;
2.写数据:在WR的上升沿,使数据写入到SSD1306里面;
在STM32的内部建立一个 缓存(共128*8个字节),在每次修改的时候,只是修改STM32上的缓存(实际上就是SRAM),在修改完了之后,一次性把STM32上的缓存数据写入到OLED的GRAM。

OLED初始化过程

OLED初始化
//初始化SSD1306
void OLED_Init(void)
{
…//设置IO口模式,所有用到的io口设置为推挽模式。
GPIO_Init();
…//初始化代码,写相关寄存器
OLED_WR_Byte(0xAE,OLED_CMD); //关闭显示
OLED_WR_Byte(0xD5,OLED_CMD); //设置时钟分频因子,震荡频率
OLED_WR_Byte(80,OLED_CMD); //[3:0],分频因子;[7:4],震荡频率
OLED_WR_Byte(0xA8,OLED_CMD); //设置驱动路

本文详细介绍了如何使用STM32驱动OLED显示模块,通过8080并口进行读写操作,初始化过程包括设置IO口模式、写寄存器等步骤。在STM32内部建立缓存,修改后一次性写入OLED的GRAM。提供了OLED初始化、写入字节、更新缓存、画点、显示字符等函数的实现。
最低0.47元/天 解锁文章
884

被折叠的 条评论
为什么被折叠?



