
01引言 STM32自2013年推出第一款搭载Chrom-ART图形加速和LTDC控制器的STM32F429 MCU开始,就持续在GUI应用上针对MCU产品线和软件方案进行平台化的增强。 % _/ N: _7 w. E8 w& c) a+ Q 产品线方面: — 增加了很多提升GUI硬件处理能力的外设:比如DMA2D加速器、GFXMMU、Cache、JPEG、F(S)MC、OPI、SDMMC等GUI应用相关的外设。 — 陆续推出了STM32L4R9、STM32F746、STM32H750、STM32H747、STM32U5等侧重于GUI应用的MCU系列。 软件方案方面: / {1 \9 x% ?! `# P — ST在2018年收购丹麦一家商业的图形化软件工具公司TouchGFX,然后将TouchGFX方案与CubeMX进行整合,使之成为X-Cube-TouchGFX,并把它作为一个完整的软硬件GUI开发工具,免费提供给我们STM32 MCU的用户。 ST通过提供这一STM32CubeMX+X-Cube-TouchGFX平台化的方案,不但提供标准控件,同时也提供很多丰富的高级控件(容器/视频/图表) : ~7 t. C7 r4 r! _; ~ ![]() / m% k% G4 \* V 可以帮助工程师快速开发出界面美观、交互友好的嵌入式产品。 6 o5 w3 p8 \( E, G: t 02问题背景根据我们的经验,在使用STM32GUI开发平台做GUI开发过程中,经常会遇到一些问题,如LCD无法显示、显示闪烁、花屏等问题。如果有一个比较方便易用的帧缓存分析工具,就可以很好地帮助GUI开发工程师快速定位问题。 6 M; u Z; i& y. B* Y! P 我们在之前分享给大家的《LAT1093 STM32GUI_使用STLINK+stm32gui-pydfb工具来实时查看图形缓存的图片_v1.0》中介绍了一种使用命令行来查看帧缓存的工具。如果对于命令行比较熟悉,可以基于命令行来读取帧缓存。 考虑到更多工程师对于python环境不是特别熟悉,因此我们升级了一个界面基于ST-LINK的帧缓存分析工具STM32GUI Framebuffer Analyer。目的是用于协助GUI开发工程师,分析帧缓存图形数据在不同数据处理/显示阶段是否正确。 ' A g1 M) z, U ![]() ![]() 以上1-8区域为功能介绍,在实际使用中,可以通过这些选项对GUI显示系统做模块化分析。 ![]() ( l# n) h/ g1 ~1 X* F7 E- m" _" o 至此也是能较好的和客户解释了MCU底层的一些原理,并建议客户按照相应workaround的配置,去设定APB总线与OSPEEDR的关系,最终让问题得以解决。 应用案例举例: 客户反馈使用客户自己的硬件平台移植使用STM32CubeMX+X-Cube-TouchGFX移植好GUI开发平台后,发现屏幕不能正常显示,无法显示TouchGFX Designer的UI,客户平台如下: 7 S: R" X6 G/ m
4 w% f v# H5 k* E6 J) X- W. g 与客户沟通进行分析: 3 Q# Y! R- q# q1 E! ~, I — 确认任务可以正常调度(正常) : d% j! E x. h4 x! G) v! n' U, n — 使用STM32GUI Framebuffer Analyer对读取帧缓存区内容进行判断 2 D$ H& u, E" k" k1 H1 }1 K ○ 发现帧缓存内容和TouchGFX Designer设计相同 ![]() — 可以判断TouchGFX任务正常工作 / D. Y: I7 l- s4 ]! e9 i R" Z — 怀疑LTDC配置问题 ○ 通过进一步调试LTDC配置发现LTDC时钟引脚没有按照原理图配置 8 p o) j# h; Y6 _0 g — 修改LTDC引脚配置后问题解决 ![]() 5 X/ u: `8 G- z+ `2 [ 05小结通过以上应用案例,可以看到,在基于STM32GUI软硬件平台开发过程中,当遇到一些显示不正常的场景时,我们可以通过基于ST-LINK的帧缓存分析工具STM32GUI_Framebuffer_Analyer的辅助,对图形像素数据流动过程进行分析,通过分析帧缓存图形数据在不同数据处理/显示阶段是否正确,来快速定位问题并解决问题。 转载自: STM32单片机 如有侵权请联系删除; p z! {& l; O) J0 Z9 H5 ?7 H ( q( a# D0 ^* H% M6 i5 N8 [ |
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南
适用于STM32微控制器的ΣΔ数字接口入门
请问在哪能下载这个分析工具呢?