使用Animations创建的动画运行一段时间后停止工作

代码1:

static void anim_x_cb(void * var, int32_t v){
	lv_obj_set_x(var, v);
}

代码2:

lv_obj_t *welcome = lv_img_create(Background);
lv_img_set_src(welcome, /root/update/pic/welcome.png);
lv_obj_set_pos(welcome, 0, 500);
lv_anim_init(&a);
lv_anim_set_var(&a, welcome);
lv_anim_set_exec_cb(&a, (lv_anim_exec_xcb_t)anim_x_cb);
lv_anim_set_values(&a, 0, 1024);|
lv_anim_set_time(&a, 3000);
lv_anim_set_playback_time(&a, 0);
lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE);
lv_anim_start(&a);

此代码实现一张图片从左到右平移,运行一段时间后,系统就不再执行anim_x_cb(),导致图片停在某个地方,请教下是什么原因造成?谢谢

  1. 确保能进行printf打印
  2. lv_conf.h 中打开 LV_USE_LOG 设置等级 #define LV_LOG_LEVEL LV_LOG_LEVEL_WARN 然后查看打印信息