T-Box Basic dev
Loading...
Searching...
No Matches
icc_service.h
Go to the documentation of this file.
1
10
11#ifndef ICC_SERVICE_H
12#define ICC_SERVICE_H
13
14#include "icc_common.h"
15#include "icc_protocol.h"
16#include "tbox/icc.h"
17#include <internal/fs_paths.h>
18#include <pthread.h>
19
20#define ICC_TX_QUEUE_FILE (TBOX_TMP_PATH "tbox_icc_tx")
21#define ICC_RX_QUEUE_FILE (TBOX_TMP_PATH "tbox_icc_rx")
22
23#define ICC_UART_DEV "/dev/ttyS0"
24#define ICC_UART_BAUDRATE B576000
25
26#define ICC_QUEUE_RX_TYPE 1
27#define ICC_QUEUE_TX_TYPE 2
28
29typedef struct
30{
31 int uart_fd;
32 int rx_msg_id;
33 int tx_msg_id;
35
36typedef struct
37{
38 bool rx_printf;
39 bool tx_printf;
41
42typedef struct
43{
44 icc_cmd_type_t cmd_type;
45 char action_name[32];
47
48typedef struct
49{
50 uint16_t cmd;
51 uint16_t len;
52 bool is_heap;
53 union
54 {
55 uint8_t data[ICC_ACK_DATA_MAX];
56 void* ptr;
57 };
58} icc_msg_t;
59
60typedef struct
61{
62 long type;
63 icc_msg_t msg;
65
72
77
84
91void icc_set_printf_switch(bool rx_printf, bool tx_printf);
92
100
107
112
113#endif
T-Box 文件系统相关宏
ICC 通信客户端外部接口
ICC 客户端与守护进程公共定义
#define ICC_ACK_DATA_MAX
需要重传的帧 DATA 最大长度,超过则无法重传
Definition icc_config.h:61
ICC 核间通信协议引擎定义,包含状态机、帧解析、ACK 重传及心跳管理等数据结构与接口
int icc_service_power_on_init(void)
执行 ICC 服务上电初始化。
icc_proto_mgr_t * icc_get_proto_mgr(void)
获取 ICC 协议管理器。
bool icc_service_get_handshake(void)
获取 ICC 服务握手状态。
void icc_proto_print_stats(void)
打印 ICC 协议统计信息。
int icc_service_set_transfer_switch(bool switch_on)
设置 ICC 服务传输开关。
bool icc_service_get_transfer_switch(void)
获取 ICC 服务传输开关状态。
void icc_set_printf_switch(bool rx_printf, bool tx_printf)
设置 ICC 裸数据打印开关。
Definition icc_service.h:37
Definition icc_service.h:30
Definition icc_service.h:43
Definition icc_service.h:49
Definition icc_protocol.h:96
Definition icc_service.h:61