lv_task.h

lvgl自带任务管理系统,类似于软件定时器,并且支持优先级,相关API在lv_task.h

例子

创建任务task,周期1000ms,优先级LV_TASK_PRIO_MID,回调里变量自加,加到10删除此任务。

uint8_t test_data = 0;
static void task_cb(lv_task_t* task)
{uint8_t *dat = (uint8_t*)task->user_data;printf("tick: %d test_data %d\n",lv_tick_get(),*dat);(*dat)++;if(*dat == 10)lv_task_del(task);
}void lv_ex_task(void)
{lv_task_t * task = lv_task_create(task_cb,1000,LV_TASK_PRIO_MID, &test_data);
}

仿真结果

可以看出时间不是很准确,其中lv_task_handler()是这样调用的

    while (1) {/* Periodically call the lv_task handler.* It could be done in a timer interrupt or an OS task too.*/lv_task_handler();Sleep(10);       /*Just to let the system breathe */}

还有如下常用API

使任务回调函数只运行一次
void lv_task_once(lv_task_t * task);
复位任务
void lv_task_reset(lv_task_t * task);
设置任务回调周期
void lv_task_set_period(lv_task_t * task, uint32_t period);
使任务立即准备就绪
void lv_task_ready(lv_task_t * task);

LVGL task任务系统(3)相关推荐

  1. DM error code 达梦数据库-错误代码 汇总

    CODE ERRINFO 100 空结果集 101 字符串截断 102 在集函数中计算NULL值 103 无效的表名 104 删除0行记录 105 插入0行记录 106 更新0行记录 107 跨语句游 ...

  2. DM8达梦数据库:系统中的错误码信息

    此达梦数据库版本为:dm8-1-88-20.06.24-123627-ENT SELECT * FROM SYS."V$ERR_INFO"; 错误码: 100 空结果集 101 字 ...

  3. 达梦数据库-8 错误代码查询

    达梦数据库中有一个视图,可以查看目前达梦数据库中所有的报错信息 select * from v$err_info; 可以看到达梦报错代码是从100开始的,截止到目前一共有2799个. CODE ERR ...

  4. ESP-BOX LVGL ask_wdt: Task watchdog got triggered问题 物联网

    文章目录 前言 一.项目架构 二.ESP-BOX(AED模块) 1.警报啸叫 2.GUI设计部分 3.AED与服务器连接部分 三.ESP-BOX(用户模块) 1.GUI设计部分 2.语音报警部分 3. ...

  5. 一个高效的定时任务系统

    "今天想跟大家一起探讨一个听起来很简单的话题:定时任务机制. 无非就是一个计时器,到了指定时间就开始跑呗.too young,要是这么简单我还说啥呢,干不就完了. 那如果是几千上万个定时任务 ...

  6. 小明分享|LVGL调试日志

    LVGL仿真调试日志-内存溢出 错误日志: Warn: Couldn't allocate memory (lv_mem.c #208 lv_mem_alloc()) Warn: Couldn't a ...

  7. UE4多线程任务系统详解

    首先,了解一下该系统重要的数据类型. 1. FQueuedThreadPool:虚基类,队列线程池,  FQueuedThreadPoolBase继承自FQueuedThreadPool,     F ...

  8. LVGL官方文档-7.11.0-8-Porting-Logging

    默认情况下,LVGL不是线程安全的. 但是,在下列情况下,调用LVGL相关函数是安全的. 在Event中. 在lv_task中. Tasks and threads 如果需要使用正常的Task或者是线 ...

  9. LVGL (8) 绘制流程

    目录 Preview LVGL Tick Timer Handler lv_timer_exec 显式刷屏任务 _lv_disp_refr_timer 小结 Preview 整个 LVGL Frame ...

最新文章

  1. ubuntu16.04 cuda8.0 caffe 编译 error: cublas_v2.h 没有那个文件或目录
  2. Html,xhtml,xml的定义和区别
  3. 获取Executor提交的并发执行的任务返回结果的两种方式/ExecutorCompletionService使用...
  4. 【数理知识】co-inner-outer factorizations
  5. 智能车改舵机中值步骤_飞思卡尔智能车摄像头组新手指南(10)--控制算法进阶篇之舵机3...
  6. 开源视觉salm算法介绍
  7. MySQL 高级 —— 复合索引简介(多列索引)
  8. 常见端口、端口查询及TCP状态
  9. matlab单元数组和结构,Matlab中单元数组和结构数组
  10. 最新“母马”病毒反杀主流杀毒软件
  11. 转:Java中的异常处理
  12. Zookeeper原理架构
  13. presto 时间函数
  14. 【案例17】ibm_jdk加密导致uclient无法登录NC
  15. 如何制作音乐界面动效设计
  16. mysql根据身份证得到年龄_MySQL根据身份证获取省份 年龄 性别
  17. 电脑小白快来!这有电脑常见故障解决方法
  18. 全局函数声明和静态函数声明
  19. 软件开发经验总结(容错性)
  20. CSS控制按钮渐变过渡效果(鼠标移入移出)

热门文章

  1. mooc作业怎么上传附件_当下不考虑5G,坚果Pro3与一加7t,你怎么选?
  2. NR数据库的物种注释
  3. oracle数据库表中文注释显示为乱码
  4. 关于C语言中字符数组和字符串的输出
  5. 数据科学家必须符合道德吗
  6. 【实习小tip】elementUI表格数值加减和实时计算、导出数据并解决手机号科学计数法格式问题、git clone报错:OpenSSL SSL_connect: SSL_ERROR_SYSCALL
  7. Spring 控制反转和依赖注入
  8. CATIA软件操作——获取圆管中心线
  9. 听说高度近视的人不能打拳击?其实真相是这样的......
  10. 服装供应链及市场营销