zoukankan      html  css  js  c++  java
  • 修改TI SensorDemo例程,摆脱烦人的摇杆与按键吧!

    TI提供的SensorDemo例程非常不错,配合 ZigBee Sensor Monitor还可以观察ZigBee的网络拓扑结构。

    但是按照原本SensorDemo来运行,collector、router和enddevice都有相应的按键或摇杆要操作,才能建立网络、发送数据。

    1、加多一个新配置-RouterEB

    打开SensorDemo工程,在Project菜单下找到Edit Configurations,进去之后点击New按钮,弹出New Configuration对话框,如下图所示填写,点击OK:

    些时建立的RouterEB跟CollectorEB的配置是完全相同的。

    2、选择CollectorEB配置,打开Options选项,在Defined Symbols那里加多一个编译选项:MY_TYPE_COLLECTOR

    3、在sapi.c文件的 SAPI_Init()函数,找到下面语句:

    afSetMatch(sapi_epDesc.simpleDesc->EndPoint, FALSE);

    修改为:

    #ifdef MY_TYPE_COLLECTOR
    afSetMatch(sapi_epDesc.simpleDesc->EndPoint, TRUE);//FALSE
    #else
    afSetMatch(sapi_epDesc.simpleDesc->EndPoint, FALSE);//FALSE
    #endif

    4、找到DemoCollector.c文件的函数 void zb_HandleOsalEvent( uint16 event )

    将if( event & ZB_ENTRY_EVENT )内的代码修改为以下内容:

    if( event & ZB_ENTRY_EVENT )
    {
     // blind LED 1 to indicate starting/joining a network
    HalLedBlink ( HAL_LED_1, 0, 50, 500 );
    HalLedSet( HAL_LED_2, HAL_LED_MODE_OFF );

    if ( appState == APP_INIT )
    {
    #ifdef MY_TYPE_COLLECTOR
    logicalType = ZG_DEVICETYPE_COORDINATOR;
    zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
    initUart(uartRxCB);
    #else
    logicalType = ZG_DEVICETYPE_ROUTER;
    zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
    #endif
    }
    // Start the device
    zb_StartRequest();
    }


    5、DemoSensor.c 和Democollector.c文件,找到void zb_BindConfirm( uint16 commandId, uint8 status )里的

    if ( reportState ) 

    将这行注释掉。

    如此路由器和终端在与协调器绑定成功后自动发送报告。

    也可以将工程内所有跟reportState有关的代码删除。



  • 相关阅读:
    2017微软骇客马拉松精彩大回Fun:不一样的Hacker,一Young的Cool
    老板这种生物:只看结果,不问过程
    小目标 | 分解任务,聪明人只设达得到的“小目标”
    本号讯 | 微软被 Forrester 评为销售服务自动化解决方案领导者
    IT圈网红,抢鲜围观
    云时代“非诚勿扰”
    安装conda后去除终端出现的(base)字样
    Ubuntu18.04 安装 Anaconda3
    高斯模糊
    准确率(Accuracy) 精确率(Precision) 与 召回率(Recall)
  • 原文地址:https://www.cnblogs.com/qmlm8844/p/2387692.html
Copyright © 2011-2022 走看看