Skip to main content

驱动库

调用外部驱动库,大大提高开发效率

OLED 显示驱动

SSD1306I²C128 × 64像素

包含文件:OLED.c · OLED.h · OLEDFONT.h

使用方法

1. 硬件连接

CubeMX 启用 I2C1,SCL / SDA 连接对应引脚并共地;

2. 工程配置

默认使用 hi2c1,地址 0x78(7 位地址 0x3C)。更换总线或地址时修改 OLED.c;

3. 引入

将 OLED文件夹 放入工程文件,将文件路径加入编译,并添加进MDK。main.c 引入 #include "OLED.h";

4. 使用

  1. I²C 初始化完成后调用 OLED_Init()。
  2. 调用 OLED_Clear() 清空显存,再调用文字或绘图函数。
  3. 调用 OLED_Refresh() 显示到屏幕。
// 放在 MX_I2C1_Init() 之后
OLED_Init();
OLED_Clear();
OLED_ShowString(0, 0, (uint8_t *)"Hello GuoPie!", 16);
OLED_Refresh();

5. 显示取模文字​

在取模工具将数组guopie_data复制进来,或者下载头文件并加入工程。


//将数组复制到前面这里:
#define GUOPIE_DATA_SIZE 8
const uint8_t guopie_data[][8] = {
/* 0 果 */ {0x50,0x56,0x2b,0x93,0x7f,0x2b,0x57,0x50,},
/* 1 派 */ {0x64,0xf9,0xc2,0x1e,0xfc,0x15,0x6b,0x48,},
};

// I2C 和 OLED 初始化后
OLED_ShowChinese(0, 16, guopie_data, GUOPIE_DATA_SIZE, 0); /* 你 */ //参数为:(x位置、y位置、数组名、字体大小、编号)
OLED_ShowChinese(40, 16, guopie_data, GUOPIE_DATA_SIZE, 1); /* 好 */
OLED_Refresh();

6. 显示取模(手绘)图片​

在取模工具将数组guopie_data复制进来,或者下载头文件并加入工程。


//将数组复制到前面这里:
#define GUOPIE_DATA_WIDTH 1
#define GUOPIE_DATA_HEIGHT 1
static const unsigned char guopie_data[1] = {
0x00
};
// I2C 和 OLED 初始化后
OLED_ShowMap(0, 0, guopie_data, GUOPIE_DATA_WIDTH, GUOPIE_DATA_HEIGHT);//参数为:(x位置、y位置、数组名、宽度、高度)
OLED_Refresh();