本帖最后由 xiyue521 于 2021-7-19 01:36 编辑
一、控制台与自定义命令:
在HelloWorld历程中我发现可以通过在串口助手输入help可以获取可以键入的命令:
包括了系统命令和用户命令
但是在做LED实验时输入help却没有反应,但是这个控制台确实是比较方便调试,还有系统的状态查看,所以我对比了两个工程的异同。
在进入main函数后先进行yoc初始化,这里面初始化了RX,TX引脚和功能,然后进行波特率的设置,设置LOG打印等级,最后就是关键的cli初始化,这个就是控制台的初始化,在cli初始化里面,aos_cli_init就是前面看到的系统Commands,cli_reg_cmd_ps、cli_reg_cmd_free()就是User Commands。
添加完这些代码之后再编译烧录就可以使用控制台命令了!!
那我们可不可以自己定义自己的命令呢?
照着ps和free的命令,ps命令初始化函数如下:
cli_command是命令的结构体,有三个成员变量,分别为名字还有命令的具体描述信息还有回调函数。
我们可以自定义一个命令,取名test:然后编写回调函数:(这里argc是输入参数的个数,我们将输入的参数全部打印出来作为测试用),最后调用注册命令函数传入自定义命令结构体:
编译烧录控制台键入help可以看到test出现在了用户命令中了:
然后输入带参数的test命令,可以看到与预期的结果一致(注意这里是得到字符串,我们可以用strcmp或用atoi将数字字符串转为int形进一步去判断然后实现自己想要的业务逻辑功能):
二、关于CDK:
CDK的主题支持4种,还可以格式化代码:
我们可以右键工程来配置一些参数 :包括一些输出的文件,还有优化等级,flash下载设置和KEIL的设置很相似:
我们还可以用CDK自带的串口助手:就是交互的时候不是很方便。
还可以点击ctrl然后鼠标点击想要查看的函数跳转过去,滚轮缩放等等很方便。
|