1 Star 3 Fork 6

vtor3478 / vtor_elec_module

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
vtor_shell.h 1.75 KB
一键复制 编辑 原始数据 按行查看 历史
#ifndef __VTOR_SHELL_H__
#define __VTOR_SHELL_H__
#ifdef __cplusplus
extern "C" {
#endif
#include "vtor_elec_module_config.h"
#include "vtor_string.h"
#ifdef __VTOR_SHELL__
// 是否允许浮点型变量,字符变量,字符串变量
// 只支持函数调用,不支持参数
//#define __VTOR_SHELL_CONFIG_MINI__
// 只支持整形参数
#define __VTOR_SHELL_CONFIG_BASIC__
// 支持任意参数(20240501尚未完成)
//#define __VTOR_SHELL_CONFIG_PLUS__
typedef int32_t (*VtorShellFun)();
typedef struct VtorShellStruct
{
VtorShellFun fun;
const uint8_t* name;
}VtorShell;
extern VtorShell* vtorShellHeader;
// 内置参考函数:帮助,列表
void VtorShell_Void(void);
void VtorShell_Help(void);
void VtorShell_List(void);
void VtorShell_Int(int32_t num);
int32_t VtorShell_CallAddress(uint32_t addr);
void VtorShell_WriteMem(int32_t addr, int32_t val);
int32_t VtorShell_ReadMem(int32_t addr);
// 时间戳,用于统计函数执行时间
int32_t VtorShell_GetTime(void);
// 打印参数、返回值、消耗时间等信息
void VtorShell_PrintRet(int32_t ret, int32_t time);
void VtorShell_PrintArg(VtorShell* shell, uint8_t argc, int32_t* argv);
void VtorShellPlus_PrintArg(VtorShell* shell, int8_t argc, VtorVar* argv);
// 高级字符串操作:查找函数,查找参数
VtorShell* VtorShell_GetShell(uint8_t* str);
int32_t VtorShell_GetArg(uint8_t* str, int32_t* argv);
int8_t VtorShellPlus_GetArg(uint8_t* str,VtorVar* argv);
int32_t VtorShell_Exec(VtorShell* shell, uint8_t argc, int32_t* argv);
int32_t VtorShellPlus_Exec(VtorShell* shell, int8_t argc, VtorVar* argv);
// vtorshell调用函数,扫描与初始化,执行
void VtorShell_Init(void);
int32_t VtorShell_Scan(uint8_t* str);
#endif // __VTOR_SHELL__
#ifdef __cplusplus
}
#endif
#endif
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/vtor3478/vtor_elec_module.git
git@gitee.com:vtor3478/vtor_elec_module.git
vtor3478
vtor_elec_module
vtor_elec_module
main

搜索帮助

344bd9b3 5694891 D2dac590 5694891