CC2538之TinyOS例程实验:10-CoAPServer zigbee灯光无线控制实验

本例程的实验需要9-Ppprouter实验节点;通过边界路由来实现CoAPServer 的节点LED控制;

先烧写一个Ppprouter节点,连接PC,pppd拨号连接后;进行下面的操作;不清楚的朋友大家可以去看看视频部分;


例程目录:

tinyos-main-release_tinyos_2_1_2\apps\cc2538_Test\CoapBlip

Makefile文件;任性的忽略

CoapBlipC.nc文件:

#ifdef COAP_RESOURCE_KEY
#include "StorageVolumes.h"
#endif

#include <iprouting.h>

#include "tinyos_coap_resources.h"

configuration CoapBlipC {

} implementation {
  components MainC;
  components LedsC;
  components CoapBlipP;
  components LibCoapAdapterC;
  components IPStackC;

  CoapBlipP.Boot -> MainC;
  CoapBlipP.Leds -> LedsC;
  CoapBlipP.RadioControl ->  IPStackC;

#ifdef IN6_PREFIX
 components StaticIPAddressTosIdC;
#endif

#ifdef RPL_ROUTING
  components RPLRoutingC;
#endif

#ifdef COAP_SERVER_ENABLED
  components CoapUdpServerC;
  components new UdpSocketC() as UdpServerSocket;
  CoapBlipP.CoAPServer -> CoapUdpServerC;
  CoapUdpServerC.LibCoapServer -> LibCoapAdapterC.LibCoapServer;
  LibCoapAdapterC.UDPServer -> UdpServerSocket;

#if defined (COAP_CONTENT_TYPE_JSON) || defined (COAP_CONTENT_TYPE_XML)
  components LocalIeeeEui64C;
#endif

#ifdef COAP_RESOURCE_DEFAULT
  components new CoapDefaultResourceC(INDEX_DEFAULT);
  CoapUdpServerC.CoapResource[INDEX_DEFAULT] -> CoapDefaultResourceC.CoapResource;
  CoapDefaultResourceC.Leds -> LedsC;
  CoapDefaultResourceC.CoAPServer ->  CoapUdpServerC;//for POST/DELETE
#endif

#if defined (COAP_RESOURCE_TEMP)  || defined (COAP_RESOURCE_HUM) || defined (COAP_RESOURCE_ALL)
  components new SensirionSht11C() as HumTempSensor;
#endif

#ifdef COAP_RESOURCE_TEMP
  components new CoapReadResourceC(uint16_t, INDEX_TEMP) as CoapReadTempResource;
  components new CoapBufferTempTranslateC() as CoapBufferTempTranslate;
  CoapReadTempResource.Read -> CoapBufferTempTranslate.ReadTemp;
  CoapBufferTempTranslate.Read -> HumTempSensor.Temperature;
  CoapUdpServerC.CoapResource[INDEX_TEMP] -> CoapReadTempResource.CoapResource;
#if defined (COAP_CONTENT_TYPE_JSON) || defined (COAP_CONTENT_TYPE_XML)
  CoapReadTempResource.LocalIeeeEui64 -> LocalIeeeEui64C;
#endif
#endif

#ifdef COAP_RESOURCE_HUM
  components new CoapReadResourceC(uint16_t, INDEX_HUM) as CoapReadHumResource;
  components new CoapBufferHumTranslateC() as CoapBufferHumTranslate;
  CoapReadHumResource.Read -> CoapBufferHumTranslate.ReadHum;
  CoapBufferHumTranslate.Read -> HumTempSensor.Humidity;
  CoapUdpServerC.CoapResource[INDEX_HUM] -> CoapReadHumResource.CoapResource;
#if defined (COAP_CONTENT_TYPE_JSON) || defined (COAP_CONTENT_TYPE_XML)
  CoapReadHumResource.LocalIeeeEui64 -> LocalIeeeEui64C;
#endif
#endif

#if defined (COAP_RESOURCE_VOLT)  || defined (COAP_RESOURCE_ALL) || defined (COAP_RESOURCE_IPSO_DEV_BAT)
  components new VoltageC() as VoltSensor;
#endif

#ifdef COAP_RESOURCE_VOLT
  components new CoapReadResourceC(uint16_t, INDEX_VOLT) as CoapReadVoltResource;
  components new CoapBufferVoltTranslateC() as CoapBufferVoltTranslate;
  CoapReadVoltResource.Read -> CoapBufferVoltTran
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值