2、使用instantcontiki2.7进行contiki开发-获取contiki-sensinode分支

来源:互联网 发布:时间压缩 知乎 编辑:程序博客网 时间:2024/05/29 16:03

       从其它大牛的博文上了解到,目前contiki的已发布版本中2.6和2.7均存在UDP例程下CC2530硬件重启的问题,下文摘自contiki达人"xugai"博文中的研究成果:

【关于UDP重启问题】

    收到很多关于使用CC2530运行UDP例程时重启的问题,重启的问题也困恼了我很久,重启的最根本问题便是CC2530的stack空间不足——更多的内容请参考【 8051 Memory Spaces 】

    【contiki官方仓库】【contiki2.6发行版】【contiki2.7发行版】CC2530DK UDP例程 均存在重启现象 。

    【 contiki sensinode 分支】 无重启现象 ,contiki的版本停留在contiki-2.6。contiki sensinode分支修改了contiki core部分中至少 tcpip.c和sicslowpan.c 等文件的代码以尽可能的减少堆栈开销。

     当前尚未深入研究,所以暂时不使用instantcontiki2.7中例程进行编译测试,而采用他的一个分支来进行测试,废话少讲,先检查instantcontiki2.7系统是否已经安装了git,运行如下指令进行测试:

user@instant-contiki:~$ git --version 
git version 1.7.9.5
user@instant-contiki:~$ 


可以看出已经安装了git,窃喜一下...大笑

不熟悉GIT的同学们可以看一下这个链接先热热身:GIT的安装与使用


1)终端下使用GIT直接下载contiki-sensinode分支:

git clone git://github.com/g-oikonomou/contiki-sensinode



这里很奇怪,我本来第一确实是clone成功了,后来取消后再重新测试,结果我在文件夹下面没有找到clone下来的文件,可能和虚拟机有关系,就没有在深究。

于是就直接通过HTTP下载了,简单方便。


2)下载后解压到了user目录下面



3)直奔主题,进入udp-ipv6进行测试,下面是make后的结果


4)生成的client.hex文件和server.hex文件拷贝至windows目录,方法有很多种,可以参考我的博文中关于共享文档的设置。

5)烧录clien.hex至CC2530:


6)观察效果如下图所示:


注意:因为linux和windows的换行机制不一样,PUTTY的设置中要在每一个换行符中增加CR,具体配置如下:



总结:这里介绍了获取contiki-sensinode分支的方法,方式还是很多种的,可以通过GIT、SSH及HTTPS的方式获取,大家可以根据自己的实际情况获取相关的资源,就目前测试来看编译生成的client.hex和server.hex均没有在CC2530中出现重启的现象。


0 0
原创粉丝点击