OLED显示动图的步骤?

OLED显示动图的步骤?,第1张

如果您想在OLED显示屏上显示动图,可以按照下列步骤进行 *** 作:

1、首先,准备好您想要显示的动图文件。动图文件可以是GIF格式的图片,也可以是其他格式的图片,如BMP、JPG等。

2、接着,使用OLED显示屏所需的驱动程序和控制软件。这些软件可以通过显示屏厂商的官方网站或者其他渠道获得。

3、将动图文件和驱动程序、控制软件都下载到电脑或者其他设备上。

4、打开驱动程序和控制软件,通过软件的界面导入动图文件。

5、调整动图的显示参数,如显示位置、帧率、循环播放等。

6、点击播放按钮,在OLED显示屏上播放动图。

希望以上步骤能帮助您在OLED显示屏上显示动图。

1.keil5

2.(2)PC,STM32开发板(这里使用野火stm32mini)、0.96存OLED显示屏、烧录装置(下载器)

参考厂家的用户手册完成引脚连接:

二、基于SPI修改程序实现数据显示

1.中文数据显示

文本内容为中文在点阵中为16*16,故都为16进制,我们通过软件进行生成

使用该软件生成十六进制字模

选择模式中的字符模式,在选择中调整字体大小为16及16进制

2.代码

云(0) 开(1) 处(2)

DB 40H 40H 42H 42H 42H 42H C2H 42H 42H 42H 42H 42H 42H 40H 40H 00H

DB 00H 20H 70H 28H 24H 23H 20H 20H 20H 24H 28H 30H E0H 00H 00H 00H"云",0

DB 80H 82H 82H 82H FEH 82H 82H 82H 82H 82H FEH 82H 82H 82H 80H 00H

DB 00H 80H 40H 30H 0FH 00H 00H 00H 00H 00H FFH 00H 00H 00H 00H 00H"开",1

DB 00H 80H 60H 9FH 08H 08H F8H 00H 00H FFH 10H 20H 40H 80H 00H 00H

DB 81H 40H 20H 13H 0CH 13H 20H 20H 40H 5FH 40H 40H 40H 41H 40H 00H"处",2

2 代码显示部分:

void TEST_MainPage(void)

{

GUI_ShowString(28,0,"MR liao",16,1)

GUI_ShowCHinese(28,20,16,"云开处",1)

GUI_ShowString(4,48,"631807060611",16,1)

delay_ms(1500)

delay_ms(1500)

}

main函数:

int main(void)

{

delay_init() //延时函数初始化

NVIC_Configuration() //设置NVIC中断分组2:2位抢占优先级,2位响应优先级

OLED_Init()//初始化OLED

OLED_Clear(0)//清屏(全黑)

while(1)

{

TEST_MainPage()//主界面显示测试

}

}

三、使用STM32在0.96寸OLED显示屏上实现字符滚动

1.初识OLED屏滚动命令

本OLED屏的芯片类型为:SSD1306

设置水平左右移步骤:

OLED_WR_Byte(0x2E,OLED_CMD)//关闭滚动

OLED_WR_Byte(0x26,OLED_CMD)//水平向左或者右滚动 26/27

OLED_WR_Byte(0x00,OLED_CMD)//虚拟字节

OLED_WR_Byte(0x00,OLED_CMD)//起始页 0

OLED_WR_Byte(0x07,OLED_CMD)//滚动时间间隔

OLED_WR_Byte(0x07,OLED_CMD)//终止页 7

OLED_WR_Byte(0x00,OLED_CMD)//虚拟字节

OLED_WR_Byte(0xFF,OLED_CMD)//虚拟字节

OLED_WR_Byte(0x2F,OLED_CMD)//开启滚动

设置垂直和水平滚动的(没有可用连续垂直滚动)步骤:

OLED_WR_Byte(0x2e,OLED_CMD)//关闭滚动

OLED_WR_Byte(0x29,OLED_CMD)//水平垂直和水平滚动左右 29/2a

OLED_WR_Byte(0x00,OLED_CMD)//虚拟字节

OLED_WR_Byte(0x00,OLED_CMD)//起始页 0

OLED_WR_Byte(0x07,OLED_CMD)//滚动时间间隔

OLED_WR_Byte(0x07,OLED_CMD)//终止页 1

OLED_WR_Byte(0x01,OLED_CMD)//垂直滚动偏移量

OLED_WR_Byte(0x2F,OLED_CMD)//开启滚动

2.文本取模

参考上面取模

3.代码

main函数:

int main(void)

{

delay_init() //延时函数初始化

NVIC_Configuration() //设置NVIC中断分组2:2位抢占优先级,2位响应优先级

OLED_Init()//初始化OLED

OLED_Clear(0)//清屏(全黑)

OLED_WR_Byte(0x2E,OLED_CMD) //关闭滚动

OLED_WR_Byte(0x26,OLED_CMD) //水平向左或者右滚动 26/27

OLED_WR_Byte(0x00,OLED_CMD) //虚拟字节

OLED_WR_Byte(0x00,OLED_CMD) //起始页 0

OLED_WR_Byte(0x07,OLED_CMD) //滚动时间间隔

OLED_WR_Byte(0x07,OLED_CMD) //终止页 7

OLED_WR_Byte(0x00,OLED_CMD) //虚拟字节

OLED_WR_Byte(0xFF,OLED_CMD) //虚拟字节

TEST_MainPage()//主界面显示测试

OLED_WR_Byte(0x2F,OLED_CMD) //开启滚动

}

显示部分代码

void TEST_MainPage(void)

{

GUI_ShowString(28,0,"HELLO",16,1)

GUI_ShowCHinese(12,16,16,"欢迎来到重庆交通大学",1)

delay_ms(1500)

delay_ms(1500)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8154265.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存