lvgl过程中lv_task_handler卡住的问题

作为一个纯新手lvgl在学习两天半之后想着尝试下移植到单片机上试试

开发板 gd32 f407

屏幕  使用iic通信协议的单色屏

开发工具 Keil uVision5    lvgl 版本8.3

参考移植文档8.3移植

遇到的问题移植到单片机后每次调用lv_task_handler时卡死

---------------------------------------------------------------------------------------------------------------------------------

开始移植,按照文档内容糊里糊涂的移植到单片机上后编译运行并没有报错,但在调用lv_ex_label(这是一个创建一个页面的方法)后lv_task_handler方法就会卡在while中

 // lvgl 初始化
    lv_init();
	lv_port_disp_init();
	lv_ex_label();   //自己的页面 没有请自己写一个 
	//	lv_tick_inc(1);//lvgl心跳  丢到定时器中执行
    while (1) {
			printf("1");
		lv_task_handler();   //中断去执行 lvgl的事件
         delay_1ms(5); //延迟十秒  一秒0到100
			printf("2");
    }

在使用最简单最好用打印调试大法后发现打印完1之后就不在打印。这情况也是一脸懵跟进去看也只能看懂一点点,对于这种情况访问大量资料依旧毫无头绪,只能看视频耐心继续学习去。。。。

在lvgl里是有打印的,也是有报错的但需要在配置文件中打开

#define LV_USE_LOG 1

打开打印后报错remove_free_block: Asserted at expression: prev && "prev_free field can not be null" (in lv_tlsf.c line #589) 前往lv_tlsf.c 看一看 依旧看不懂,上网查一下发现F407的内存分两块

在软件上勾选iram2之后解决报错,后面即使在取消勾选依然正常,这。。。。。有点迷糊。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值