木子剑
生命不熄,学习不止!

看了一些CONTIKI的SHELL文档,能得出一些概念性的思维。

 

我是从CONTIKI 3.0开始学习的,2.5版本,2.7版本就没有了解过。在CONTIKI 3.0中,好像有三种版本的SHELL。

第1种:是全功能版本的SHELL,主要用于LINUX本机系统的调试,至少在\contiki-3.0\tools\cooja里面,有个仿真

器COOJA要用到吧。

 

第2种:是做精简的SHELL,尝试在节点上的CPU跑SHELL,芯片的ROM和RAM是有一定要求的,不然会报错的。

 

第3种:是极度精简的SHELL,有一些少量的功能,可以说SHELL不再是SHELL了,对节点资源仍是有一定要求的。

 

可以看出,在资源受限的芯片上,作者是费尽心思,去实现SELL功能。C语言是现场开发用的语言,在很多情况下,

我们会感到CONTIKI3.0版本或  2.7版本的文件结构有点乱、功能含义分类不清楚等等,这就比较正常了。。。

 

所以,就出现我们现在学习的CONTIKI-NG版本,官方译为下一代IOT无线传感器操作系统,非常简洁,是一种美!

  

在NG版本,作者改写了SHELL,SHELL不在是系统的外壳程序,只是NG的功能模块,位于/os/services/shell 文件夹中,在LINUX应用方法为:

---》在项目中的Makefile增加:MODULES += os/services/shell。把模块代码加载到应用中。

---》在LINUX中,打开超级终端_>$ make login PORT=/dev/ttyACM0 BOARD=launchpad/cc2650  TARGET=srf06-cc26xx

资料文档用的CC2650芯片,该资源为ROM:128K,RAM:20K

---》在超级终端的命令行:

> help
> ip-addr

可以输出一些SHELL信息。

 

看来大部份操作都是在LINUX下完成的,我在IAR  system玩NG系统,有的LINUX的特性就不好实现了,觉得还是跳过SHELL算了。

如make login 在IAR都不知道怎么办了,哈哈  隔系统如隔山。。。。搞开发还是在LINUX下才是王道!!

 

posted on 2020-12-02 09:13  木子剑  阅读(410)  评论(0编辑  收藏  举报