硬汉嵌入式论坛

 找回密码
 立即注册
查看: 316|回复: 7
收起左侧

[LTDC] STM32H7移植LVGL8.3总是卡死在lv_init()

[复制链接]

34

主题

66

回帖

168

积分

初级会员

积分
168
发表于 2025-5-28 10:59:50 | 显示全部楼层 |阅读模式
本帖最后由 coolaimcu 于 2025-5-28 11:01 编辑



STM3H7B0移植LVGL8.3版本,总是卡死在lv_init()这个初始化函数这里,试过更换不同的版本,如LVGL8.3.5, 8.3.10,8.3.7等都一样,无一例外都卡死在这里。

1.jpg

感觉非常奇怪,不是第一次移植LVGL了,以前都用国产MCU移植无数次了,均无这个问题,不知道为啥H7会这样。

LVGL内存分配时64K,系统堆栈都是8K,按说也不小了吧,改到过128K也无改善。
用FMC驱动LCD,打开了cache, 经测试FMC可以正常驱动LCD,显示正常,但是一移植LVGL就卡死了。

2.jpg

调试这函数lv_init(), 发现最终是卡在它调用的lv_extra_init()这个函数里,进去这个函数,看他里面的代码又没看懂,,,,

有人遇到过类似问题吗?




回复

使用道具 举报

0

主题

280

回帖

280

积分

高级会员

积分
280
发表于 2025-5-28 14:14:47 | 显示全部楼层
优化等级降低,然后单步进去看吧。或者考虑lvgl9.x,9.x的各方面比8好很多。
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116196
QQ
发表于 2025-5-29 09:07:24 | 显示全部楼层
调试状态全速运行,停在那个位置。
回复

使用道具 举报

34

主题

66

回帖

168

积分

初级会员

积分
168
 楼主| 发表于 2025-5-29 23:25:04 | 显示全部楼层
eric2013 发表于 2025-5-29 09:07
调试状态全速运行,停在那个位置。




我重新移植了LVGL9.2,发现lv_init()不卡了,但是又卡死在了lv_demo_benchmark()这里,这个函数是LVGL的demo函数,总之各种莫名其妙的问题。

我仿真后发现,系统一运行到这个函数就进入了void MemManage_Handler(void)中断,然后卡死在while(1)中出不来了。具体错误类型是IACCVIOL,我百度了下,好像和MPU配置有关。

2.jpg

我的MPU配置中,把三块RAM都配置成了不使用Cache(因为之前用ADC+DMA采样的时候,数据会有问题,所以我把三块RAM的Cache都关了),lv_demo_benchmark()这个函数是放在外部QSPI flash,变量是放在AHB-SRAM(0x30000000那个地址)

3.jpg

如下是我的MPU配置,

4.jpg

以上是哪里配置的不对吗?还请指教,谢谢

回复

使用道具 举报

34

主题

66

回帖

168

积分

初级会员

积分
168
 楼主| 发表于 2025-5-30 08:23:44 来自手机 | 显示全部楼层
已经解决了。我把0×30000000地址那个RAM换成0×24000000就好了,怀疑是之前分配的RAM空间太小,溢出了
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116196
QQ
发表于 2025-5-30 09:09:49 | 显示全部楼层
coolaimcu 发表于 2025-5-30 08:23
已经解决了。我把0×30000000地址那个RAM换成0×24000000就好了,怀疑是之前分配的RAM空间太小,溢出了

回复

使用道具 举报

34

主题

66

回帖

168

积分

初级会员

积分
168
 楼主| 发表于 2025-5-30 12:08:32 | 显示全部楼层

硬汉哥,有什么方法可以看到每块RAM用了多少,还剩余多少吗?
MDK编译后好像只能看到总共用了多少RAM,看不到每块RAM的使用情况。
回复

使用道具 举报

1

主题

4

回帖

7

积分

新手上路

积分
7
发表于 5 小时前 | 显示全部楼层
有那个大知道,我stm32H750移植lvgl然后就卡死在了lv_init()里面。我用到了FMC来驱动屏幕。然后用QSPI将lvgl的一些程序放在了外部flash里面。我正常用FMC是可以刷新图案的。运行lv_init跑到HardFault_Handler。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-6-9 17:27 , Processed in 0.257128 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表