您尚未登录。

楼主 # 2024-05-27 15:35:23

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,306
积分: 1266.5

rtos+lvgl,其它线程如何通知lvgl线程更新数据?还是直接在其它线程里更新lvgl控件?

比如现在有can和lvgl两个线程。can可能不定期接收到数据,接收到数据后想更新到屏幕上。
那么该如何设计更新逻辑好呢?
1, can线程里收到数据后调用lvgl控件直接更改显示;
2,can线程收到数据后存到全局变量里,lvgl线程里开启个定时器,定时刷新控件读取这个全局变量;
3,can线程收到数据后存到全局变量里,同时发送信号量,通知lvgl线程去读取这个全局变量?

请教,改怎么设计好呢?

离线

楼主 #2 2024-05-27 17:12:13

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,306
积分: 1266.5

Re: rtos+lvgl,其它线程如何通知lvgl线程更新数据?还是直接在其它线程里更新lvgl控件?

感谢。
目前暂定大概10秒can收到一组数据。
用2的话,比如定时1秒更新下lvgl控件显示,感觉有点浪费,毕竟实际10秒才有数据变动。

离线

楼主 #5 2024-05-28 13:41:14

Gentlepig
会员
注册时间: 2018-10-24
已发帖子: 1,306
积分: 1266.5

Re: rtos+lvgl,其它线程如何通知lvgl线程更新数据?还是直接在其它线程里更新lvgl控件?

感谢各位。那就用线程间消息通知的方式吧。

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn