LVGL显示gif动图导致MCU进入HardFault_Handler问题(已解决!)
一、问题背景和现象
问题背景:
硬件平台:STM32H743
软件平台:LVGL_v8.3.11 + FatFs_v0.16
问题现象:
lvgl显示gif图片,导致MCU进入HardFault_Handler,如图:


LVGL显示gif图片的代码:
/* show gif */
lv_obj_t * gif = lv_gif_create(lv_scr_act());
lv_gif_set_src(gif, "S:/GIF/123.gif");
lv_obj_center(gif);
//lv_obj_add_event_cb(gif, img_back_btn_cb, LV_EVENT_DELETE, "S:/GIF/123.gif");二、问题分析解决
一般来讲,导致MCU进入HardFault_Handler的原因有:
1.栈溢出
待更新。。。。
2.指针访问非法内存
待更新。。。。
3.中断或DMA访问未初始化的外设寄存器
待更新。。。。
4.堆内存错误(malloc/free 错误)
待更新。。。。
5.多线程同时访问一个资源
待更新。。。。
