-
Notifications
You must be signed in to change notification settings - Fork 456
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
移植完成后,只能显示输入的数据,无法进入函数 #38
Comments
串口终端使用的是什么软件,或者可能是命令被优化掉了 |
在keil的魔术棒工具,打开Options for target对话框,在Linker选项卡中的Misc controls中加 --keep shellCommand* |
或者修改shell.h第55行为 |
用的是secureCRT8.5改section试过了,不行。明天再按照上面的方法试一下。 |
试了以下还是同样的现象,追踪了以下过程: |
不输入命令,直接按回车,是否会有提示符 尝试使用此函数 void shellTest()
{
shellPrint(shellGetCurrent(), "hello world");
}
SHELL_EXPORT_CMD(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC), test, shellTest, test); |
试了以下还是之前的现象,输入什么数据,就会在屏幕显示数据,不会调用函数。 |
直接按tab键会不会出现命令列表,按回车会不会刷新提示符,可以截图看看你的终端的数据吗 |
|
你好。方便把你的工程发到我的邮箱吗,[email protected] |
|
邮件被拦截到垃圾箱了,刚刚才看到,我看一下 |
/**
* @brief 使用LF作为命令行回车触发
* 可以和SHELL_ENTER_CR同时开启
*/
#define SHELL_ENTER_LF 1
/**
* @brief 使用CR作为命令行回车触发
* 可以和SHELL_ENTER_LF同时开启
*/
#define SHELL_ENTER_CR 1
/**
* @brief 使用CRLF作为命令行回车触发
* 不可以和SHELL_ENTER_LF或SHELL_ENTER_CR同时开启
*/
#define SHELL_ENTER_CRLF 0 将shell_cfg.h文件50行左右位置的这三个宏,按照上面的进行修改,试一下 |
请问这个问题解决了吗 |
请问是遇到同样的问题了吗 |
是的,我在windows平台用vscode编译器跑这个工程,输入命令后只能回显命令,定位到输入enter键不能成功解析,在 |
可能需要把命令的 attr.value 打印出来看看,感觉像是数据错位了 |
base[0]addr: 0x4b06c0 base[0].attr.attrs.type: 0 base[0].attr.value: 2048 |
运行的平台是大端序吗,参考下 #184 |
是小端 |
那好奇怪,直接打印出来的 attr.value 是对的 |
移植到STM32,使用keil编译程序。接收和发送没有问题,也初始化函数了,在主循环中调用shellTask(&shell); 配置头文件如下,其他未修改,按照freertos的demo文件来的,实际是裸机运行
#define SHELL_TASK_WHILE 0 #define SHELL_USING_CMD_EXPORT 1
例程时使用的readme.md的普通C函数形式,输入letter:/$ func 666 'A' "hello world",屏幕显示letter:/$ func 666 'A' "hello world"。
请问这是哪里没有配置正确?
The text was updated successfully, but these errors were encountered: