安富莱专题教程第1期基于STM32的硬件RGB888接口实现emWin的快速刷新方案,32位色或24

Posted armfly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安富莱专题教程第1期基于STM32的硬件RGB888接口实现emWin的快速刷新方案,32位色或24相关的知识,希望对你有一定的参考价值。

说明:
1. 首先感谢ST终于推出了ARGB格式的emWin库,可谓千呼万唤始出来,使用STM32的硬件RGB888接口刷新图片慢的问题终于得到解决。
2. 这个问题由来已久,是之前为我们的STM32-V6板子制作emWin模板时发现的。V6板子的硬件配置是STM32F429BIT6 + 32位带宽的SDRAM + 硬件RGB888接口。实际测试中发现,将F429配置为16位色的RGB565,刷新800*480分辨率的图片可以做到15ms左右一帧,而测试24位色的RGB888或者32位色的ARGB8888,竟然需要200多ms。后来经过多次测试,才找到根本原因,因为大部分时间都损耗在ARGB和ABGR格式转换上了。使用ARGB格式库后,刷800*480大小的图片可以做到20ms一帧。
3. 近期,ST新发布的STemWin 5.40版本中加入了ARGB格式的库,这个问题得到了解决,本次专题就是为大家讲解如何使用这个库,替换时有很多需要注意的地方。
4. 新版的STemWin5.40头文件使用IAR7.5编译会有多处警告,不用管。另外配套的两个例子是由之前的emWin提高篇例子修改而来,测试注意事项看此贴:链接 http://forum.armfly.com/forum.php?mod=viewthread&tid=23687
================================
专题教程下载:
技术分享图片 专题教程第1期:基于STM32的硬件RGB888接口实现emWin的快速刷新方案.pdf (1.52 MB) 
配套的两个例子下载(含MDK和IAR)
技术分享图片 V6-910_STemWin提高篇实验_智能家居主界面设计(uCOS-III).7z (6.55 MB) 
技术分享图片 V6-911_STemWin提高篇实验_智能家居主界面设计(FreeRTOS).7z (6.66 MB) 
教程目录:
技术分享图片
使用32位色ARGB8888或者24位色RGB888的好处就是显示效果细腻,看下面效果图:

技术分享图片

 

技术分享图片

技术分享图片

 

而使用16位色RGB565就要差不少,特别是梯度色变化和颜色丰富的图片:

技术分享图片

技术分享图片

技术分享图片

















以上是关于安富莱专题教程第1期基于STM32的硬件RGB888接口实现emWin的快速刷新方案,32位色或24的主要内容,如果未能解决你的问题,请参考以下文章

《安富莱嵌入式周报》第258期:2022.03.21--2022.03.27

《安富莱嵌入式周报》第255期:2022.02.28--2022.03.06

《安富莱嵌入式周报》第252期:2022.02.07--2022.02.13

安富莱专题教程第5期工程调试利器RTT实时数据传输组件,替代串口调试,速度飞快,可以在中断和多任务中随意调用

《安富莱嵌入式周报》第237期:2021.10.25--2021.10.31

《安富莱嵌入式周报》第267期:2022.05.23--2022.05.29