T-Box Basic dev
Loading...
Searching...
No Matches
sys.h
Go to the documentation of this file.
1
10#ifndef SYS_API_H
11#define SYS_API_H
12
13#include "tbox/time.h"
14#include <stdbool.h>
15#include <stdint.h>
16
17#ifdef __cplusplus
18extern "C"
19{
20#endif
21
22// DID设置项
23typedef struct
24{
25 uint32_t did;
26 uint8_t data[256];
27 uint16_t len;
29
30/* 电源管理状态 */
31typedef enum
32{
33 SYS_PM_STATE_NORMAL = 0,
34 SYS_PM_STATE_READY_SLEEP = 1,
35 SYS_PM_STATE_ENTER_SLEEP = 2,
36} sys_pm_state_t;
37
38typedef void (*sys_timer_task_cb)(uint8_t* para_data, uint32_t para_len);
39typedef void (*sys_pm_state_event_cb)(sys_pm_state_t pm_state, uint8_t wakeup_source);
40
41typedef struct
42{
43 char timer_name[25];
44 sys_timer_task_cb timer_task_cb;
46
47typedef struct
48{
49 sys_pm_state_event_cb pm_state_event;
50 sys_timer_task_event_t timer_event[5];
52
61int sys_did_get(uint32_t did, uint8_t* data, uint16_t* len);
62
71int sys_did_set(uint32_t did, const uint8_t* data, uint16_t len);
72
80int sys_did_sets(const sys_did_item_t** items, uint8_t item_cnt);
81
88int sys_set_work_status(bool active);
89
96int sys_set_can_nm_status(bool active);
97
104int sys_time_set_ts(time_t unix_ts);
105
112
123int sys_timer_add(const char* task_name, tbox_time_info_t* date_time, uint8_t* para_data, uint32_t para_len);
124
134int sys_timer_get(char* task_name, tbox_time_info_t* date_time, uint8_t* para_data, uint32_t* para_len);
135
142int sys_timer_delete(const char* task_name);
143
151#ifdef __cplusplus
152}
153#endif
154
155#endif /* SYS_API_H */
Definition sys.h:48
Definition sys.h:24
Definition sys.h:42
Definition time.h:29
int sys_did_set(uint32_t did, const uint8_t *data, uint16_t len)
设置单个 DID 数据并同步到 MCU
int sys_timer_add(const char *task_name, tbox_time_info_t *date_time, uint8_t *para_data, uint32_t para_len)
添加定时任务
int sys_set_can_nm_status(bool active)
设置 CAN NM 工作状态(激活/去激活)
int sys_register_callback(sys_callback_t *p_callback)
注册系统控制回调(唤醒/睡眠/时间校准)
int sys_set_work_status(bool active)
设置应用工作状态(激活/去激活)
int sys_timer_get(char *task_name, tbox_time_info_t *date_time, uint8_t *para_data, uint32_t *para_len)
获取定时任务信息
int sys_did_sets(const sys_did_item_t **items, uint8_t item_cnt)
批量设置 DID 数据并同步到 MCU
int sys_wakeup_system(void)
唤醒系统
int sys_time_set_ts(time_t unix_ts)
通过 utc 时间戳设置系统时间
int sys_did_get(uint32_t did, uint8_t *data, uint16_t *len)
获取单个 DID 数据
int sys_timer_delete(const char *task_name)
删除定时任务
T-Box 时间工具接口