你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查

[复制链接]
donatello1996 发布时间:2025-5-17 13:47
GUI解决方案实训分成两个部分,第一个部分是熟悉STM32H7R7的烧录以及LVGL工程运行调试,第二个部分是对TouchGFX工程的运行调试及二次开发,可以看出来ST官方主要侧重对TouchGFX的推广及应用,但是我个人更喜欢LVGL,LVGL开发的自由度高,移植简单方便,可以在几乎任何带屏幕显示的平台上进行,几乎不受到硬件平台的RAM及FLASH限制(RAM最小4~8K即可运行),相对于TouchGFX的缺点是,缺少TouchGFX独有的炫酷屏幕切换特效,以及无法直接显示视频(需要通过动态显示图片帧的方式进行)。由于实训是以LVGL开始的,所以就先分享LVGL部分的内容,后续更新TouchGFX部分的内容。& _# x# V+ t, T! A/ x
  X0 P% e$ o& ^, p+ u
' \6 [0 P3 T! N, A0 S6 d
实验平台为正点原子STM32H7R7开发板,并配套7寸800*480液晶屏:
" z0 D* f. f2 j7 ?# _ 1.JPG IMG_20250516_183451.jpg : A& N8 Q9 `) K% \. [0 q8 U( l! A1 ^8 G
+ C# O4 K' I: q

2 Z" q6 D* m2 G- Q使用的下载器为STLINK V3紧凑型小下载器,即使是SWD模式下,烧写速率比起STLINK V2和JLINKV9都要快很多:
0 b) ~# E+ d; U6 `1 P# M
2.JPG + `  ]$ N5 _* j* ]! r

3 N  [( o8 w% ^% M2 u5 p
8 F5 B. z) M1 {# d9 _- T% C0 t) d7 [) u) n3 u- [# p
将下载器以及屏幕连接到开发板,开始实训:0 {( p0 L' d0 M8 s, b8 @8 H
IMG_20250517_131152.jpg , S. S! U1 E3 K# N# Y! A, N( L! v
/ ~2 Q/ J- ^2 \, p* b* D
/ I/ J2 l# R) C, u
LVGL咖啡机例程是CubeIDE工程,工程分为Boot和Application两个子工程,因为STM32H7R7 MCU是用内部FLASH引导外部FLASH APP运行的方式工作的,因此Boot子工程生成在内部FLASH运行的Bootloader,Application子工程生成在外部FLASH运行的APP,两者都需要烧录,都可以通过CubeProg进行烧录。将Boot工程和Application工程都在CubeIDE下编译完毕:# L! j0 v' R' L" w& O
3.JPG 4.JPG
; t; F& C6 J1 i+ s& k
( f+ S/ O4 ~7 c! ]! o- I5 ^将正点原子H7R7开发板的外部FLASH(MX25UM25645G_ATK-DNH7R7_HSLV_ExtMemLoader.stldr)烧录算法放到CubeProg目录相应的位置下,并移除跟此算法地址冲突的MT25TL01G_STM32H745I-DISCO.stldr即STM32H745Discovery官方开发板的算法:7 Z) L0 l  Q) K
5.JPG
. k3 s2 Q) @: U5 n+ I& P8 Z" z  G: |! e' J2 C( k% `7 ?
9 a$ w# o2 j# ^% L; J9 r" S" }
在CubeProg分别烧录STM32H7R7外部FLASH的APP及内部FLASH的Bootloader,先烧录外部FLASH的APP,APP所对应的HEX文件放在APP子工程的Release目录下:9 S, O  o/ h! ?6 [0 o. ^
6.jpg
; K6 x' }* |/ X: Z& f& L5 Z) p0 g: i) Y, \/ X
在EL选项卡中选择正确的烧录算法打勾:
* V# }4 A+ z) b; @, |
8.JPG
; j: ]  Z1 O' D3 R+ ?1 ?3 U* m. L2 A; J9 y! L
连接MCU并烧录成功:
% z3 s% ?1 x8 F) c; T2 }  ]1 ?1 p
9.JPG
! O6 @" ~8 A, m5 ^: ^( c; {9 S; n5 p+ ?& K6 Z  z0 j7 M/ ^
使用同样的方式烧录内部FLASH的Bootloader,烧录内部FLASH取消EL的打勾:
; u' E1 O+ @! C* O 10.JPG 11.jpg
0 y: q% S$ k4 T
- t' G, B5 F9 Y  ~9 q
在16号当天实训的时候,程序是正常加载运行的,但是我分配到了一块疑似晶振有问题的次品开发板,在运行过程中会直接卡死,因此我跟正点原子的LVGL AE 袁工进行交流,在开发板咖啡机例程的btim定时器中断中加入一个闪灯动作来判断是否硬件问题:
  k) P0 g- ]3 A' L8 \* g# e 12.JPG
7 ]! t* E3 d, [
8 B9 Z1 D+ G( e5 Y- |运行结果是,出现卡死的时候,连btim定时器中断所加入的闪灯动作都停止了,那就可以判断跟软件没有任何关系,是硬件问题了,换了一块开发板之后一切正常。这个小插曲无伤大雅,更看出了正点原子企业对于排查客户硬件问题的认真态度,点赞!
& h- s- q. r! d0 Z. ?
7.JPG
IMG_20250517_131152.jpg
收藏 评论0 发布时间:2025-5-17 13:47

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版