这个宏可以实现将函数添加到shell的可执行命令列表中,使用时需要确保shell_cfg.h中的宏定义要开启: #define SHELL_USING_CMD_EXPORT 1 该宏定义的定义如下: /** * @brief shell 命令定义 * * @param _attr 命令属性 * @param _name 命令名 * @param _func 命令函数 * @param _desc 命令描述 */ #...
#ifSHELL_USING_CMD_EXPORT == 1#ifdefined(__CC_ARM) || (defined(__ARMCC_VERSION) && __ARMCC_VERSION >= 6000000)externconstunsignedintshellCommand$$Base;externconstunsignedintshellCommand$$Limit;#elifdefined(__ICCARM__) || defined(__ICCRX__)#pragmasection="shellCommand"#elifdefined(__G...
letter shell 3.x 简介 功能 移植说明 使用方式 函数定义 main函数形式 普通C函数形式 变量使用 在函数中获取当前shell对象 执行未导出函数 命令定义 定义方式 定义宏说明 命令属性字段说明 代理函数和代理参数解析 权限系统说明 锁说明 伴生对象 尾行模式
#ifndef__SHELL_CFG_H__#define__SHELL_CFG_H__/** * @brief 是否使用默认shell任务while循环,使能宏`SHELL_USING_TASK`后此宏有意义 * 使能此宏,则`shellTask()`函数会一直循环读取输入,一般使用操作系统建立shell * 任务时使能此宏,关闭此宏的情况下,一般适用于无操作系统,在主循环中调用`shellTask()`...
#define SHELL_USING_CMD_EXPORT 1 就是这个宏需要定义为 1 。开启了这个宏,我们就可以编写自己的命令函数,然后导出到shell终端了。 导出自定义命令的宏在 shell.h 文件中定义,其代码如下: /** * [url=home.php?mod=space&uid=247401]@brief[/url] shell 命令定义 * * @param _attr 命令属性 * @param...
修改SHELL_USING_CMD_EXPORT 这个宏,命令就只能通过在shell_cmd_list.c的表里面添加,不能使用SHELL_EXPORT_XXX这个宏导出 使用gcc的情况,需要在链接文件(.ld)中只读数据段添加 _shell_command_start = .; KEEP (*(shellCommand)) _shell_command_end = .; iar我这边没有测试过,但是和使用gcc编译的问题时...
本次研究移植letter-shell。letter-shell一个功能强大的嵌入式shell,是一个C语言编写的,可以嵌入在程序中的嵌入式shell,主要面向嵌入式设备,以C语言函数为运行单位,可以通过命令行调用,运行程序中的函数。
shell_cfg.h文件中包含了所有用于配置shell的宏,在使用前,需要根据需要进行配置 宏意义 SHELL_TASK_WHILE是否使用默认shell任务while循环 SHELL_USING_CMD_EXPORT是否使用命令导出方式 SHELL_USING_COMPANION是否使用shell伴生对象功能 SHELL_SUPPORT_END_LINE是否支持shell尾行模式 ...
《嵌入式 - 开源项目》一个小而美的嵌入式shell - letter shell,源码地址熟悉Linux的朋友的都知道,shell包裹在内核之外的人机交互界面,用于用户和内核之间打交道的功能,类似于windowsCMD。通过Shell将输入的命令与内核通讯,好让内核可以控制硬件开正
shell_cfg.h文件中包含了所有用于配置shell的宏,在使用前,需要根据需要进行配置宏 意义 SHELL_TASK_WHILE 是否使用默认shell任务while循环 SHELL_USING_CMD_EXPORT 是否使用命令导出方式 SHELL_USING_COMPANION 是否使用shell伴生对象功能 SHELL_SUPPORT_END_LINE 是否支持shell尾行模式 SHELL_HELP_LIST_USER 是否在输入...