项目简介
本项目是基于C语言的OLED绘图库,专门为STM32系列的12864 OLED屏幕设计,其驱动芯片为SSD1306。该库具备丰富的绘图功能,支持硬件I2C、软件I2C、硬件SPI、软件SPI等多种通信方式,还能借助DMA提升数据传输效率。
项目的主要特性和功能
- 多驱动支持:支持多种通信方式,且可利用DMA提高传输效率。
- 图形绘制:可绘制矩形、圆形、字符、数字、中文字符和图像等。
- 帧率控制:支持固定帧率的屏幕刷新,适合动态图像显示。
- 移植性:易于移植到其他平台,仅需修改底层驱动函数。
- 配置灵活:通过
oled_config.h
文件可配置通信方式和DMA使用。
安装使用步骤
假设用户已经下载了本项目的源码文件:
1. 将源代码导入到您的STM32开发环境中。
2. 在oled_config.h
文件中配置所需的通信方式(如硬件I2C、硬件SPI等)。
3. 在主程序中调用InitGraph()
函数初始化OLED屏幕。
4. 使用提供的绘图函数(如DrawString()
、ShowChinese()
等)在OLED屏幕上绘制图形和文字。
5. 调用UpdateScreen()
或FrameRateUpdateScreen()
函数刷新屏幕显示内容。
示例代码
```c int main(void) { // 初始化OLED InitGraph();
// 绘制文字
DrawString(6, 6, "Hello, OLED!");
// 刷新屏幕
UpdateScreen();
while(1)
{
// 其他逻辑
}
} ```
注意事项
- 若使用DMA,需确保在DMA中断中调用
DMATransmitCallback()
函数。 - 软件I2C的最高速率为150k,硬件I2C的最高速率为400k,硬件SPI的最高速率为48M。
- 使用CubeMX配置时,请参考项目文档中的配置截图。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】