怎么为AliOS Things应用增加自定义cli命令

怎么为AliOS Things应用增加自定义cli命令

这篇文章主要讲解了“怎么为AliOS Things应用增加自定义cli命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么为AliOS Things应用增加自定义cli命令”吧!

参数名称

怎么为AliOS Things应用增加自定义cli命令

参数描述


char *pwbuf

当函数执行完成返回时,通过控制台打印出来的字符串指针。可以不传入。

int blen

上述字符串长度

int argc

命令调用时传入的参数长度,没有参数传入时为1

char **argv

传入参数缓存,字符串。第一个有效参数的角标从1开始。

接下来填写注册用结构体,以便将命令信息传递给cli服务。按照前所讲的设计,注册结构体信息如下,将结构体拷贝到blink.c文件中。

structcli_commandled_switch_command[]={{.name="led_switch",//命令名称.help="[on]turnonled2;[off]trunoffled2",//帮助文本.function=led_switch//命令具体执行的函数指针}};

将cli命令注册到系统中。cli命令注册只需要一个函数如下:

aos_cli_register_commands(&led_switch_command[0],1);

函数需要传入两个参数,参数1为刚刚创建的命令信息体的结构体指针;参数2,为本次需要注册的命令数,也就是说可以一次性注册多个命令,只需要在命令信息结构体中,用数组的方式同时填入几个命令的信息即可。

将上述函数调用加入到blink.c文件application_start函数的如下位置:

aos_cli_register_commands(&led_switch_command[0],1);//注册cli命令函数aos_loop_run();

至此,一个cli命令的实现和注册的代码编写部分就完成了。编译并下载至开发板中运行。在cli控制台输入help,看到led_switch命令已注册成功。

#help====Build-inCommands========Support4cmdsonce,seperateby;====help:printthisp:printmemorym:modifymemoryecho:echoforcommandexit:closeCLIdevname:printdevicenamesysver:systemversionreboot:rebootsystemtime:systemtimeota:systemota====UserCommands====loglevel:setlogleveltasklist:listallthreadinfodumpsys:dumpsysteminfoudp:[ip][port][stringdata]sendudpdatawifi_debug:wifidebugmodemac:get/setmackv:kv[setkeyvalue|getkey|delkey|list]version:showversionled_switch:[on]turnonled2;[off]trunoffled2

测试命令是否执行,在命令提示符下输入如下命令,并回车:

#led_switchon

led2点亮

测试参数有效性判断,输入如下指令,不带参数。命令按设计返回错误报警。

##led_switch[1291080]<V>参数错误

感谢各位的阅读,以上就是“怎么为AliOS Things应用增加自定义cli命令”的内容了,经过本文的学习后,相信大家对怎么为AliOS Things应用增加自定义cli命令这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是恰卡编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

发布于 2021-12-22 21:56:51
收藏
分享
海报
0 条评论
39
上一篇:学习Java必备的书籍和网站列表有哪些 下一篇:为JAVA性能而设计的示例分析
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码