Files
checker_slave/source/task/commend.h
ranchuan 8a91c94c85 修改检测后CAN总线自动上传基础延时为 addr*10+200
修改检测时注码,单独注码判定
添加cmd_printf 函数不会自动添加换行符
2023-10-18 18:24:46 +08:00

51 lines
920 B
C

#ifndef commend_h__
#define commend_h__
#include "list.h"
#include "bytearray.h"
#include "signal.h"
// 执行命令函数不能调用延时函数
typedef int (*cmd_fun_def)(list_def *argv /* str */);
typedef struct{
const char *name;
const char *help;
cmd_fun_def fun;
}commend_def;
#define commend_export(name_,fun_,help_) \
const static char __cmd_##name_##_name[] SECTION(".rodata.cmdstr") = #name_; \
const static char __cmd_##name_##_help[] SECTION(".rodata.cmdstr") = help_; \
RT_USED static commend_def _cmd_##name_ SECTION("cmdstruct")= \
{\
.name=__cmd_##name_##_name,\
.help=__cmd_##name_##_help,\
.fun=fun_,\
};
int cmd_print(const char *fmt,...);
int cmd_printf(const char *fmt,...);
signal cmd_reply_signal(void *obj,uint8_t cmd,array_def *data);
void cmd_recv_slot(void *obj,const char *codec_name,uint8_t cmd,array_def *data,char *err_str);
#endif