cc2538平台下的Contiki基本试验

首先发个官方原网址:

https://github.com/contiki-os/contiki/blob/master/platform/cc2538dk/README.md

操作步骤:

1、下载安装预装有Contiki的ubuntu虚拟机,具体见官网;

2、 安装gcc,一般可以忽略;

3、 安装驱动,一般插上板子后会自动安装,可以查看:

       $ lsusb

得到:


如果安装了brltty,还需要把它移除;

4、 如果是通过UART来通信,需要修改vendor和product参数值,即上面所得到的两个:

$  modprobe ftdi_sio vendor=0x0403 product=0xa6d1

对于3.12以后的内核版本需要以下操作:

$ modprobe ftdi_sio

$ echo 0403 a6d1 >/sys/bus/usb-serial/drivers/ftdi_sio/new_id

(需要在root下运行)


如果是用USB口,则参看原网页介绍

5、 如果采用USB通信,需要对系统进行改进,因为ubuntu的特点,设备管理模块会在USB设备插入的前30s内不停的对其进行探检,从而造成设备的反复断开与连接,为了阻止这个过程,需让设备管理模块略过这个模块:

       $ vim/lib/udev/rules.d/77-mm-usb-device-blacklist.rules

添加新的一行:

ATTRS{idVendor}=="0451", ATTRS{idProduct}=="16c8", ENV{ID_MM_DEVICE_IGNORE}="1"

重启模块管理器:

       $ sudo service modemmanager restart


6、下载编程

可以在window下通过smartRF Flash programmer来下载.bin文件到cc2538中(一定要保证下载的成功),也可以在linux下通过串口bootloader安装.elf,其中波特率要设置为115200,8N1。


7、测试

(1)Borderrouter:examples/ipv6/rpl-border-router

编译:make TARGET=cc2538dk

下载:如果想通过串口直接下载,需要手动的设置使能boot loader,然后使用:

       $ makecc2538-demo.upload

对于演示版的方法:按住select键,并复位板子。

通过make cc2538-demo.lst 可以看到编译的信息,这可以有助于调试代码。

 

8、节点IEEE/RIME/IPv6地址

       节点一般会根据它们的IEEE地址(硬件地址)来确定它们的IPV6地址,这个IEEE地址可能直接从cc2538的info页读取到,也可以通过硬编码得到,用户可以在编译的时候定义一个2字节的的值,这个值将用于IEEE地址的两个最低有效位。

       设置IEEE地址来源——info页或者硬编码,可以通过定义../platform/cc2538dk/Contiki-conf.h中的IEEE_ADDR_CONF_HARDCODED得到,

如果为0——info页中得到

如果为1——从硬编码中得到,即从IEEE_ADDR_CONF_ADDRESS得到。

       并且,你可以重新定义IEEE的最低两位地址,通过:

$ make NODEID=0x79ab

 

此外,还可以设置使不同的节点具有不同的IEEE地址。

 

9、 建立6lowpan测试平台(examples/ipv6/rpl-border-router)

(1)修改border-router.c

将#define DEBUG DEBUG_NONE 改为 #defineDEBUG DEBUG_PRINT

(2)在project-conf.h中定义了UIP的最大缓冲值(UIP_CONF_BUFFER_SIZE),可以将它改为更大或删除这句话,从而允许更多的的值。

(3)编译:makeTARGET=cc2538dk ,因为不是在cc2538的工程中编译,所以需要加上这句话。

(4)下载程序(一定要保证下载成功)。

(5)测试,进入contiki-2.7/tools/

         编译tunslip6.c,

         运行:sudo./tunslip6 -s /dev/ttyUSB1 aaaa::1/64

看到router的IPV6地址:

(6)通信测试

Ping6 测试:

 

网页访问测试:


到这里,基本的操作就完成了,可以实现基础的IPV6通信测试。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值