XFusion API v1.3.0
载入中...
搜索中...
未找到
xfusion.c
浏览该文件的文档.
1
12/* ==================== [Includes] ========================================== */
13
14#include "xfusion.h"
15#include "xf_task.h"
16#include "xf_sys.h"
17
18#if XF_OSAL_ENABLE
19#include "xf_osal.h"
20#endif
21
22/* ==================== [Defines] =========================================== */
23
24/* ==================== [Typedefs] ========================================== */
25
26/* ==================== [Static Prototypes] ================================= */
27
28#if XF_TASK_MBUS_IS_ENABLE
34static void mbus_handle(xf_task_t task);
35#endif
36
37static void xf_task_on_idle(unsigned long int max_idle_ms);
38
39/* ==================== [Static Variables] ================================== */
40
41/* ==================== [Macros] ============================================ */
42
43/* ==================== [Global Functions] ================================== */
44
45extern void xf_main(void);
46
62
67
68/* ==================== [Static Functions] ================================== */
69
70#if XF_TASK_MBUS_IS_ENABLE
71
73{
74 (void)task;
76}
77
78#endif
79
80static void xf_task_on_idle(unsigned long int max_idle_ms)
81{
82#if XF_OSAL_ENABLE
83 xf_osal_delay_ms(max_idle_ms);
84#endif
85}
void xf_log_set_time_func(xf_log_time_func_t log_time_func)
设置log的时间戳打印函数
Definition xf_log.c:198
xf_err_t xf_osal_delay_ms(uint32_t ms)
(睡眠)等待超时,以 ms 为单位。
xf_ms_t xf_sys_time_get_ms(void)
获取系统时间的时间戳,单位毫秒(ms)
Definition xf_sys_time.c:96
void xf_task_mbus_handle(void)
处理异步的消息。
void xf_task_manager_run_default(void)
开始默认启动任务管理器调度任务。
xf_err_t xf_task_manager_default_init(xf_task_on_idle_t on_idle)
创建默认的任务管理器。
static xf_task_t xf_ttask_create_loop(xf_task_func_t func, void *func_arg, uint16_t priority, uint32_t delay_ms)
在默认的任务管理下,创建 ttask 循环任务。
Definition xf_task.h:162
static void task(xf_task_t task)
Definition xf_main.c:45
xf_err_t xf_init(void)
xf 初始化. 所有使用宏收集的初始化函数,将会在这里统一调用
Definition xf_init.c:30
uint32_t(* xf_log_time_func_t)(void)
log 时间戳原型。
Definition xf_log.h:99
void * xf_task_t
任务句柄。
xf_err_t xf_task_tick_init(xf_task_clock_t clock)
设置当前任务的心跳。
void xf_main(void)
全局函数定义: [Global Functions].
Definition xf_main.c:28
static void mbus_handle(xf_task_t task)
发布订阅默认处理函数。
Definition xfusion.c:72
void xfusion_init(void)
初始化 xfusion,包含log初始化,自动初始化等。
Definition xfusion.c:47
void xfusion_run(void)
运行 xfusion。需要将该函数放到循环里面调用。
Definition xfusion.c:63
static void xf_task_on_idle(unsigned long int max_idle_ms)
Definition xfusion.c:80
运行 xfusion。