前面我已经测试了UART的简单例子,并且还修改了PIN脚通过Arduino来读取了串口信息。这是一个比较简单的监控方式,只需要一个PIN就能够给我提供printf打印功能。而这样的工具对于开发调试来说,也是一个非常有用的利器了。但是我注意到其实在例程里面有一个shell的例子,这至少让我感觉到我们可以利用这样的功能进行交互,这又是一个很好的改进。接下来,我就先导入这个例程编译测试一下。
我查看了我之前整理的文档笔记:也非常巧合,这个其实就是第一条例子。接下来,先熟悉一下这个例程相关的资料。
1. 这里使用的串口就是板子上做了转USB的串口,比较方便。
2. 这个shell的功能不是例程中的实现部分,而是例程中的调用部分,相关的功能在iLLD中已经实现。
我看这部分资料的时候存在一定的疑问,但是最终的疑问在后面得到了解答。这个功能是可以扩充的,有一定的数据结构管理模式。
这个板子支持的功能比我期待的多了不少,看起来全都用起来的话能够对这个MCU有一定深度的了解。这里也顺便说了一下使用的接口,就是图中画出来的USB。
这些配置跟我之前看的hello world的例子内容相似。
iLLD中的接口涉及到的shell实现概念需要做一个了解,这里面明显看上去是比printf的实现复杂一些。感觉这里的标准接口实现的可能是一个句柄的概念。另外,最后的commandList其实就是命令扩充的方式。
这里说明了一下LED闪烁的例子是如何实现的,在这个例子中我会先看看效果,后面分阶段再深入分析一下相关的模块以及实现。
串口的中端配置,这部分在hello world的例子中也已经见识过了,一样的东西。
说明了一下串口配置的属性,相应的工具还是IDE中带着的。不过我自己如果测试,我会换一下,换成我熟悉的Arduino的IDE,这样我的工具箱可以最大程度上保持一定的精简。
这个是最终的运行效果,后面我自己使用我自己的工具测试的时候也应该能够看得到。
以上是我自己的工具监控的效果,基本一致。
这个是针对help命令的一部分测试。这里也输入了一个错误的命令,最后提示了错误。
这个是对toggle命令的测试,通过测试是可以看到LED的闪烁过程的。
增加了一些其他的错误测试,识别也是准确的。后续,可以研究下iLLD中shell的实现顺便看一下这个是否有比较好的可移植性。如果能够在软件中增加这样的功能,那么在做测试的时候会很有帮助。
标签:shell,例程,这个,UART,例子,测试,串口 From: https://blog.51cto.com/greyzhang/5760334