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文件里面调用

实现效果

相关推荐
LCMICRO-133108477463 小时前
长芯微LD9689完全P2P替代AD9689,是一款双通道、14位、2.0 GSPS/2.6 GSPS模数转换器(ADC)
网络·单片机·嵌入式硬件·网络协议·fpga开发·硬件工程·高速adc
逐步前行11 小时前
STM32_TIM_寄存器操作
stm32·单片机·嵌入式硬件
0南城逆流012 小时前
【STM32】知识点介绍七:PWM功能
stm32·单片机·嵌入式硬件
智者知已应修善业12 小时前
【51单片机独立按键控制数码管移动反向,2片74CH573/74CH273段和位,按键按下保持原状态】2023-3-25
经验分享·笔记·单片机·嵌入式硬件·算法·51单片机
dashizhi201512 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑
我是一棵无人问荆的小草12 小时前
单片机通电后延迟启动策略
单片机·嵌入式硬件
坏柠12 小时前
ESP32-S3 蓝牙 BLE 从零到一:广播、服务、特征,用一个智能灯的例子全讲透
嵌入式硬件
日更嵌入式的打工仔13 小时前
UART RX为什么要上拉
单片机
三佛科技-1873661339716 小时前
FT32F030F6AP7高性能32位RISC内核MCU解析(兼容STM32F030K6TP7)
stm32·单片机·嵌入式硬件
LCMICRO-1331084774616 小时前
长芯微LDC90810完全P2P替代ADC128D818,是一款八通道系统监控器,专为监控复杂系统状态而设计。
stm32·单片机·嵌入式硬件·fpga开发·硬件工程·模数转换芯片adc