STM32 CubeIDE 控制OLED显示屏

IIC配置:在STM32CubeMX中配置IIC外设为 Fast Mode (400kHz)。

配置IIC引脚

配置RCC(复位与时钟控制)保存并生成HAL库初始化代码。

配置OLED需要的相关代码函数

OLED_Init(); //初始化OLED

OLED_DisPlay_On(); //开启OLED显示

OLED_DisPlay_Off(); //关闭OLED显示

OLED_NewFrame(); //清空显存

OLED_ShowFrame(); //将当前显存显示到屏幕上

OLED_SetPixel(uint8_t x, uint8_t y, OLED_ColorMode color); //设置一个像素点

OLED_DrawLine(uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2, OLED_ColorMode color);

// 绘制一条线段

OLED_DrawRectangle(uint8_t x, uint8_t y, uint8_t w, uint8_t h, OLED_ColorMode color);

//绘制一个矩形

OLED_DrawFilledRectangle(uint8_t x, uint8_t y, uint8_t w, uint8_t h, OLED_ColorMode color);

//绘制一个填充矩形

OLED_DrawTriangle(uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2, uint8_t x3, uint8_t y3, OLED_ColorMode color);//绘制一个三角形

OLED_DrawFilledTriangle(uint8_t x1, uint8_t y1, uint8_t x2, uint8_t y2, uint8_t x3, uint8_t y3, OLED_ColorMode color);//绘制一个填充三角形

OLED_DrawCircle(uint8_t x, uint8_t y, uint8_t r, OLED_ColorMode color); //绘制一个圆

OLED_DrawFilledCircle(uint8_t x, uint8_t y, uint8_t r, OLED_ColorMode color); // 绘制一个填充圆

OLED_DrawEllipse(uint8_t x, uint8_t y, uint8_t a, uint8_t b, OLED_ColorMode color);

//绘制一个椭圆

OLED_DrawImage(uint8_t x, uint8_t y, const Image *img, OLED_ColorMode color);

//绘制一张图片

OLED_PrintASCIIChar(uint8_t x, uint8_t y, char ch, const ASCIIFont *font, OLED_ColorMode color); //绘制一个ASCII字符

OLED_PrintASCIIString(uint8_t x, uint8_t y, char *str, const ASCIIFont *font, OLED_ColorMode color); //绘制一个ASCII字符串

OLED_PrintString(uint8_t x, uint8_t y, char *str, const Font *font, OLED_ColorMode color);

//绘制字符串

通过取模助手将需要的图片或文字生成代码保存到font.c font.h

最后在main文件里面调用

实现效果

相关推荐
不悔哥1 天前
开源OV-Watch:怎么做一个智能手表
单片机·开源·嵌入式
XiHongShi20161 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
优信电子1 天前
AIT1001 非接触式红外测温模块 STM32 驱动开发实战:从引脚到代码全解析
stm32·嵌入式·温度传感器·红外测温·非接触式测温·ait1001
深圳老胡1 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
wuyk5551 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
女神下凡1 天前
嵌入式设计的各种存储芯片的硬件/软件设计规范,非常全面。
arm开发·单片机·嵌入式硬件
梅梅9661 天前
一款mipi转lvds的lcd调试(LT8912B)
单片机·计算机外设·电脑·显示器·pd芯片
开发笔记-阿牛1 天前
蓝牙音乐灯拆解,又一次拆到蓝牙音乐灯芯片CK6865L
人工智能·单片机·嵌入式硬件·音视频·音频
从零开始的嵌入式之旅1 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
恒锐丰科技林技术员1 天前
EG1164 高压大电流升压同步整流芯片解析
经验分享·嵌入式硬件·硬件工程