关注分享主机优惠活动
国内外VPS云服务器

STM32硬件IIC OLED

总结:该命令关闭显示命令,打开显示命令包含2个字节。 第一个字节表示命令字,第二个字节表示设置值,第二个字节表示电荷泵开关状态。 ,该位打开或关闭电荷泵。 该命令用于设置显示器起始列地址的低4位。 这也决定了字体选择的系数方式是列行式。

OLED屏目录 OLED屏特性 OLED屏接线说明 OLED屏内存 OLED屏原理 OLED屏常用说明 OLED屏字体 软件使用代码 main.coled.holed.hSysTick。 c 遇到的问题 问题1、OLED显示屏幕模糊 问题2、OLED显示错误

OLED屏幕

OLED是有机发光二极管-发光二极管,OLED。 OLED显示技术具有自发光、宽视角、几乎无限高的对比度、低功耗、非常高的响应速度、可用于柔性面板、宽工作温度范围以及结构和工艺简单等优点。 它被认为是平面显示屏幕的下一代新兴应用技术。

与传统 LCD 显示器不同,OLED 显示器是自发光的,不需要背光。 这使得OLED显示屏更薄,并且比LCD显示屏提供更好的观看效果。

常用的OLED屏幕有蓝色、黄色、白色等。 屏幕尺寸为0.96英寸,像素为128*64,因此被称为0.96oled屏或12864屏。

OLED屏特点

1.模组尺寸:23.7 *23.8mm 2.供电电压:3.3-5.5V 3.驱动芯片:SSD1306 4.测试平台:k60/k10、9s12XS128、51、 stm32、STM8等单片机

OLED屏接线说明

OLED屏显存

OLED本身没有显存。 它的存在依赖于SSD1306,它提供了部分显存。

SSD1306显存的总大小为128*64位,SSD1306将显存分为8个页面。 每页包含 128 字节。

OLED屏原理

STM32内部建立了一个缓存(共128*8字节)。 每次改变时,只有STM32上的缓存(实际上是SRAM)发生改变。 修改后,STM32上的缓存数据将写入OLED GRAM。

这种方法也有缺点。 具有非常小的 SRAM 的微控制器(51 系列)会带来另一个问题。

OLED屏常用命令

命令0X81:设置对比度。 它包含2个字节,第一个0X81是命令,后面的方法是设置对比度的字节。 值越高,屏幕越亮。

命令0XAE/0XAF:0XAE是关闭显示器的命令,0XAF是打开显示器的命令。

0X8D:包含2个字节,第一个字符是命令字,第二个是设置值,第二个字节BIT2表示电荷泵的开关状态。 当该位为 1 时,电荷泵打开;当该位为 0 时,电荷泵关闭。 模块初始化时必须打开此功能。 如果未开启,则不会显示屏幕显示。

命令0XB0~B7:用于设置页地址,低3位对应GRAM页地址。

命令0X00~0X0F:用于设置显示起始列地址的低4位。

命令0X10~0X1F:用于设置显示起始列地址的高4位。

使用有机EL屏字体软件

有机EL点阵的点亮方式是,例如显示“P”时,最左边的数字是最高有效位,P7。 1、如果要显示“P”,先写0x1f,你会看到一个垂直条出现,控制器自动水平移动到下一列。

2.再次写入0X05,你会看到两个小横条。 这两个水平条是0X05的0000和0101。写入第二列后,控制器自动跳转到第三列。

3、接下来在第4列写入0X07和0X00,就会显示P。 。 这也表明,即使您只想在列顶部显示一个小点,也需要写入 0X01。

4.即不能一次控制一个点阵,一次只能控制8个点。 它是一个数组,一排点。 这也决定了字体选择的取模方式是“列-行”。

代码 main.c #include "stm32f10x.h" #include "SysTick.h" #include "oled.h"int main(){unsigned char i = 0;initSysTick();I2C_Config();OLED_Init( );Delay_ms(2000);OLED_Fill(0XFF); //延迟延迟_ms(2000);OLED_Fill(0X00); //延迟延迟lay_ms(2000);//OLED_ShowStr(0, 3, "Hello World", 1) ;//OLED_ShowStr(0, 4, "Hello World", 2);while (1){for(i= 0;i>4|0x10);WriteCmd((x&0x0f)|0x01);}/** *1

未经允许不得转载:主机频道 » STM32硬件IIC OLED

评论 抢沙发

评论前必须登录!