微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > CC2650 contiki 解决UDP重启问题教程

CC2650 contiki 解决UDP重启问题教程

时间:10-02 整理:3721RD 点击:

例程以contiki sensinode分支为主,该分支和Contiki主分支存在差异,主要解决CC2530 UDP例程重启问题。


     【调试工具使用】

    由于linux中换行以\n结尾,而windows以\r\n结尾,在windows中调试例程需要修改串口调试工具中的设置,例如putty中。

    【\n变为\r\n】——修改设置见下图。

图1 回车换行设置

    【putty打开串口】——输入串口编号COM7,输入波特率115200,点击open。

图2 打开指定串口

    【下载hex文件】

    从Instant Contiki(Vmware虚拟机)中复制hex文件到windwos中某目录,然后使用smartRF Flash Programmmer。操作步骤如下。

图3 下载Flash

1.UDP例程

    本博文一反常态从较为复杂的例子开始,先尝试UDP IPv6例子。

    【说明】

    存在两个CC2530节点,一个作为客户端client,一个作为服务器端server。客户端定期向服务器端发送UDP数据包,服务器接收UDP数据包并直接返回。【如果发现例程没有效果,请参考【contiki学习笔记——IEEE802.15.4地址变为IPv6地址】修改client.c中的代码】

    【操作】——cd指令进入例程目录。server操作和client操作相似。

    cd contiki-sensinode-cc-ports/examples/cc2530dk/udp-ipv6/
    make server

图4 cd和make操作

图5 输出结果

    【运行结果】——稳定运行之后,server和client开发板 红色LED几乎同时闪烁。前几个UDP数据包会发生数据包丢失的情况,问题原因尚未找到。

图6 server串口输出结果

图7 client输出结果

   

2.hello world例程

    【说明】

    Contiki最简单的例子,通过串口输出Hello world!。

    【操作】

    cd contiki-sensinode-cc-ports/examples/cc2530dk/

    make hello-world

图8 hello-world例程

   

3.blink-hello例程

    【说明】建立两个任务,两任务同时通过串口打印数据。测试Contiki的定时器和阻塞API。

    【操作】

    cd contiki-sensinode-cc-ports/examples/cc2530dk/

    make blink-hello

    【运行结果】

图9 blink-hello例程

4.timer-test例程

    【说明】测试Contiki的多种定时器,包括etimer和rtimer。

    【操作】

    cd contiki-sensinode-cc-ports/examples/cc2530dk/

    make timer-test

    【运行结果】

图10 timer-test例程

5.sensor-demo例程

    【说明】

    通过CC2530的片内AD转换通道获得芯片内部温度,通过按下BUTTON按钮捕获外部中断。

    由于开发板存在差异,需要修改platform/cc2530dk/dev目录下的button-sensor.c文件,BUTTON1由P0_1变为P0_5,修改内容见红色字样

#if MODEL_CC2531

#define BUTTON1_PORT 1

#define BUTTON1_PIN 2

#define BUTTON2_PORT 1

#define BUTTON2_PIN 3

#else

#define BUTTON1_PORT 0

#define BUTTON1_PIN 5 /* P0_1 change to P0_5*/

#endif

    【操作】

    cd contiki-sensinode-cc-ports/examples/cc2530dk/

    make sensor-demo

    【运行结果】

图11 sensor-demo例程


提供CC2650 CC2541 CC2640R2 CC1310等CC系列免费样片 Q.Q 122982582

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top