|
xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
|
新版软件定时器接口(对象化、单链表、new/delete 生命周期) 更多...
#include "xtiny.h"结构体 | |
| struct | xt_timer2 |
| 定时器对象 更多... | |
宏定义 | |
| #define | XT_TIMER2_TIMEOUT_MAX INT32_MAX |
| 最大超时 tick 数(INT32_MAX,约 24.8 天 @ 1ms/tick) | |
| #define | XT_TIMER2_DEBUG 1 |
| 调试模式开关,默认开启。关闭后移除 magic 字段和校验 | |
| #define | XT_TIMER2_MAGIC (0x159DU) |
| Magic 值,用于检测内存踩踏 | |
| #define | XT_TIMER2_FREE_MAGIC ((void *)0xA1B2C3D4) |
| 内存池空闲槽位魔数标记 | |
类型定义 | |
| typedef uint32_t | xt_tick2_t |
| tick 类型,32 位无符号 | |
| typedef struct xt_timer2 | xt_timer2_t |
| 定时器句柄(前向声明) | |
| typedef void(* | xt_timer2_cb_t) (xt_timer2_t *t, void *user_data) |
| 定时器回调函数类型 | |
函数 | |
| xt_timer2_t * | xt_timer2_new (xt_timer2_cb_t timer_cb, void *user_data) |
| 动态分配并初始化一个定时器 | |
| xt_err_t | xt_timer2_delete (xt_timer2_t *t) |
| 删除定时器并释放内存 | |
| xt_err_t | xt_timer2_setup (xt_timer2_t *t, xt_timer2_cb_t timer_cb, void *user_data) |
| 配置定时器回调函数和用户数据(不启动) | |
| xt_err_t | xt_timer2_start (xt_timer2_t *t, xt_tick2_t tick_timeout) |
| 启动/重启定时器,挂入工作链表 | |
| xt_err_t | xt_timer2_stop (xt_timer2_t *t) |
| 停止定时器,从工作链表摘下 | |
| bool | xt_timer2_is_running (xt_timer2_t *t) |
| 查询定时器是否在工作链表上 | |
| xt_err_t | xt_timer2_set_cb (xt_timer2_t *t, xt_timer2_cb_t cb) |
| 设置回调函数 | |
| xt_err_t | xt_timer2_set_user_data (xt_timer2_t *t, void *user_data) |
| 设置用户数据 | |
| xt_tick2_t | xt_timer2_remain (xt_tick2_t timeout_tick) |
| 计算剩余超时 tick 数(有符号差值,天然回绕安全) | |
| xt_tick2_t | xt_timer2_handler (void) |
| 定时器主循环处理函数,需在主循环中周期性调用 | |
| void | xt_timer2_sys_setup (xt_timer2_t *pool_buf, size_t pool_count) |
| 初始化定时器子系统内存池 | |
| void | xt_timer2_sys_reset (void) |
| 重置定时器子系统运行时状态(仅测试/调试用) | |
| void | xt_timer2_enable_custom_tick (bool enable) |
| 启停自定义 tick 模式(测试用) | |
| void | xt_tick2_inc (xt_tick2_t inc) |
| 手动推进自定义 tick | |
| void | xt_tick2_set (xt_tick2_t val) |
| 手动设置自定义 tick 值 | |
| xt_tick2_t | xt_tick2_get (void) |
| 获取当前系统 tick 值 | |
新版软件定时器接口(对象化、单链表、new/delete 生命周期)
SPDX-FileCopyrightText: 2025 深圳市天工聚创科技有限公司 SPDX-License-Identifier: Apache-2.0
在文件 xt_timer2.h 中定义.