用STM32玩OLED(显示文字、图片、动图gif等) 您所在的位置:网站首页 字体动态图片怎么弄 用STM32玩OLED(显示文字、图片、动图gif等)

用STM32玩OLED(显示文字、图片、动图gif等)

2024-05-21 01:36| 来源: 网络整理| 查看: 265

目录用STM32玩OLED(显示文字、图片、动图gif等)1. 显示字符串2. 显示中文3. 显示图片4. 显示动图5. 总结测试

用STM32玩OLED(显示文字、图片、动图gif等)

一位伴随我童年的演员也离开了人间,真的是感叹人生无常,希望世上病痛少一点。

开发板:STM32F407ZGT6(正点原子探索者) OLED:技小新0.96'OLED显示器模块(4PIN) 软件:Keil MDK5.29

Gitee项目已发布,需要源码请自助下载 地址(gitee)

OLED资料网页:网页地址

例程是STM32F103和STM8的,跟我用的不一样,所以就改了例程

4pin的OLED用的是IIC通信,按着手册改了oled的scl和sda的端口(PB8和PB9)

1. 显示字符串 /* @brief 显示字符串 @param x:起始列 y:起始页 *chr:第一个字符首地址 @retval 无 */ void OLED_ShowString(unsigned char x,unsigned char y,unsigned char *chr) { unsigned char j=0; //定义变量 while (chr[j]!='\0') //如果不是最后一个字符 { OLED_ShowChar(x,y,chr[j]); //显示字符 x+=8; //列数加8 ,一个字符的列数占8 if(x>=128){x=0;y+=2;} //如果x大于等于128,切换页,从该页的第一列显示 j++; //下一个字符 } }

测试代码如下

#include "sys.h" #include "delay.h" #include "oled.h" #include "oledfont.h" #include "bmp.h" int main(void) { delay_init(168); //延时初始化 OLED_Init(); //OLED初始化 OLED_Clear(); OLED_ShowString(36,2,"Giao!!!"); while(1) { } }

显示效果如下 image

2. 显示中文

取模软件用的是PCtoLCD2002完美版,取模方式如下 image

下载地址:传送门(蓝奏云)

程序方面修改了例程,让程序功能变得更直接

/* @brief 显示中文 @param x:起始列;一个字体占16列 y:起始页;一个字体占两页 no:字体的序号 m:单个字体大小 Chn[][m]:中文数组 @retval 无 */ void OLED_ShowCHinese(unsigned char x,unsigned char y,unsigned char no,unsigned char m,unsigned char Chn[][m]) { unsigned char t,adder=0; //定义变量 OLED_Set_Pos(x,y); //从 x y 开始画点,先画第一页 for(t=0;t


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有