1
0
mirror of https://github.com/NevermindZZT/letter-shell.git synced 2025-01-21 10:02:54 +08:00
letter-shell/shell_cfg.h

107 lines
2.9 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* @file shell_cfg.h
* @author Letter (nevermindzzt@gmail.com)
* @brief shell config
* @version 0.1
* @date 2019-04-11
*
* @copyright (c) 2019 Letter
*
*/
#ifndef __SHELL_CFG_H__
#define __SHELL_CFG_H__
/**
* @brief 是否使用默认shell任务
* 使能之后可以使用`shellTask()`建立shell任务或者使用`shellTask()`进行轮询
*/
#define SHELL_USING_TASK 0
/**
* @brief 是否使用默认shell任务while循环使能宏`SHELL_USING_TASK`后此宏有意义
* 使能此宏,则`shellTask()`函数会一直循环读取输入一般使用操作系统建立shell
* 任务时使能此宏,关闭此宏的情况下,一般适用于无操作系统,在主循环中调用`shellTask()`
*/
#define SHELL_TASK_WHILE 1
/**
* @brief 是否使用命令导出方式
* 使能此宏后,可以使用`SHELL_EXPORT_CMD()`或者`SHELL_EXPORT_CMD_EX()`
* 定义shell命令关闭此宏的情况下需要使用命令表的方式
*/
#define SHELL_USING_CMD_EXPORT 1
/**
* @brief 是否使用变量功能
*
*/
#define SHELL_USING_VAR 0
/**
* @brief 是否显示命令调用函数返回值
* 使能此宏则每次调用shell命令之后会以整形和十六进制的方式打印函数的返回值
*/
#define SHELL_DISPLAY_RETURN 1
/**
* @brief 是否使用shell参数自动解析
* 使能此宏以支持常规C函数形式的命令shell会自动转换参数
* 关闭此宏则支持main函数形式的命令需要自行在函数中处理参数
*/
#define SHELL_AUTO_PRASE 1
/**
* @brief 是否使用shell长帮助
* 使能此宏以支持命令的长帮助信息
*/
#define SHELL_LONG_HELP 1
/**
* @brief shell命令最大长度
* 命令行可输入的最大字符长度
*/
#define SHELL_COMMAND_MAX_LENGTH 50
/**
* @brief shell命令参数最大数量
* 包含命令名在内超过8个参数并且使用了参数自动转换的情况下需要修改源码
*/
#define SHELL_PARAMETER_MAX_NUMBER 8
/**
* @brief 历史命令记录数量
*/
#define SHELL_HISTORY_MAX_NUMBER 5
/**
* @brief 双击间隔(ms)
* 使能宏`SHELL_LONG_HELP`后此宏生效定义双击tab补全help的时间间隔
*/
#define SHELL_DOUBLE_CLICK_TIME 200
/**
* @brief 管理的最大shell数量
*/
#define SHELL_MAX_NUMBER 5
/**
* @brief shell格式化输出的缓冲大小
* 为0时不使用shell格式化输出
*/
#define SHELL_PRINT_BUFFER 128
/**
* @brief 获取系统时间(ms)
* 定义此宏为获取系统Tick如`HAL_GetTick()`此宏不定义时无法使用双击tab补全
* 命令help
*/
#define SHELL_GET_TICK() 0
/**
* @brief shell默认提示符
*/
#define SHELL_DEFAULT_COMMAND "\r\nletter>>"
#endif