⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mt_zdo.s51

📁 用IAR开发的ZIGBEE网络路由例子
💻 S51
📖 第 1 页 / 共 5 页
字号:
//////////////////////////////////////////////////////////////////////////////
//                                                                           /
// IAR 8051 C/C++ Compiler V7.20H/W32                  06/Nov/2008  11:13:07 /
// Copyright 2004-2006 IAR Systems. All rights reserved.                     /
//                                                                           /
//    Core               =  plain                                            /
//    Code model         =  banked                                           /
//    Data model         =  large                                            /
//    Calling convention =  xdata reentrant                                  /
//    Constant location  =  data                                             /
//    Dptr setup         =  1,16                                             /
//    Source file        =  E:\解决\路由\Components\mt\MT_ZDO.c              /
//    Command line       =  -f E:\解决\路由\Projects\zstack\Samples\SampleAp /
//                          p\CC2430DB\..\..\..\Tools\CC2430DB\f8wCoord.cfg  /
//                          (-DCPU32MHZ -DFORCE_MAC_NEAR -DROOT=__near_func  /
//                          -DMAC_CFG_APP_PENDING_QUEUE=TRUE                 /
//                          -DZDO_COORDINATOR -DRTR_NWK -DBLINK_LEDS         /
//                          "-DCONST=const __code" -DGENERIC=__generic) -f   /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\..\..\..\Tools\CC2430DB\f8wConfig.cfg    /
//                          (-DSECURE=0 -DDEFAULT_CHANLIST=0x00000800        /
//                          -DZDAPP_CONFIG_PAN_ID=0xFFFF                     /
//                          -DNWK_START_DELAY=100 -DEXTENDED_JOINING_RANDOM_ /
//                          MASK=0x007F -DBEACON_REQUEST_DELAY=100           /
//                          -DBEACON_REQ_DELAY_MASK=0x00FF                   /
//                          -DROUTE_EXPIRY_TIME=30 -DAPSC_ACK_WAIT_DURATION_ /
//                          POLLED=3000 -DNWK_INDIRECT_MSG_TIMEOUT=7         /
//                          -DMAX_RREQ_ENTRIES=10 -DAPSC_MAX_FRAME_RETRIES=3 /
//                           -DNWK_MAX_DATA_RETRIES=2                        /
//                          -DMAX_POLL_FAILURE_RETRIES=2 -DMAX_BCAST=9       /
//                          -DAPS_MAX_GROUPS=16 -DMAX_RTG_ENTRIES=20         /
//                          -DNWK_MAX_BINDING_ENTRIES=10                     /
//                          -DMAX_BINDING_CLUSTER_IDS=5                      /
//                          "-DDEFAULT_KEY={0x01, 0x03, 0x05, 0x07, 0x09,    /
//                          0x0B, 0x0D, 0x0F, 0x00, 0x02, 0x04, 0x06, 0x08,  /
//                          0x0A, 0x0C, 0x0D}" -DRFD_RCVC_ALWAYS_ON=FALSE    /
//                          -DPOLL_RATE=1000 -DQUEUED_POLL_RATE=100          /
//                          -DRESPONSE_POLL_RATE=100 -DREJOIN_POLL_RATE=440  /
//                          -DTOP_BOOT_PAGES=0) -I "D:\Program Files\IAR     /
//                          Systems\Embedded Workbench 4.05 Evaluation       /
//                          version\8051\inc\" -I "D:\Program Files\IAR      /
//                          Systems\Embedded Workbench 4.05 Evaluation       /
//                          version\8051\inc\clib\" -I                       /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\ -I E:\解决\路由\Projects\zstack\Samples /
//                          \SampleApp\CC2430DB\..\Source\ -I                /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\..\..\..\ZMain\TI2430DB\ -I              /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\..\..\..\..\..\Components\mt\ -I         /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\..\..\..\..\..\Components\hal\include\   /
//                          -I E:\解决\路由\Projects\zstack\Samples\SampleAp /
//                          p\CC2430DB\..\..\..\..\..\Components\hal\target\ /
//                          CC2430DB\ -I E:\解决\路由\Projects\zstack\Sample /
//                          s\SampleApp\CC2430DB\..\..\..\..\..\Components\o /
//                          sal\mcu\ccsoc\ -I E:\解决\路由\Projects\zstack\S /
//                          amples\SampleApp\CC2430DB\..\..\..\..\..\Compone /
//                          nts\osal\include\ -I E:\解决\路由\Projects\zstac /
//                          k\Samples\SampleApp\CC2430DB\..\..\..\..\..\Comp /
//                          onents\stack\af\ -I E:\解决\路由\Projects\zstack /
//                          \Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo /
//                          nents\stack\nwk\ -I E:\解决\路由\Projects\zstack /
//                          \Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo /
//                          nents\stack\sec\ -I E:\解决\路由\Projects\zstack /
//                          \Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo /
//                          nents\stack\sys\ -I E:\解决\路由\Projects\zstack /
//                          \Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo /
//                          nents\stack\zdo\ -I E:\解决\路由\Projects\zstack /
//                          \Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo /
//                          nents\zmac\f8w\ -I E:\解决\路由\Projects\zstack\ /
//                          Samples\SampleApp\CC2430DB\..\..\..\..\..\Compon /
//                          ents\zmac\ -I E:\解决\路由\Projects\zstack\Sampl /
//                          es\SampleApp\CC2430DB\..\..\..\..\..\Components\ /
//                          services\saddr\ -I E:\解决\路由\Projects\zstack\ /
//                          Samples\SampleApp\CC2430DB\..\..\..\..\..\Compon /
//                          ents\services\sdata\ -I                          /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\..\..\..\..\..\Components\mac\include\   /
//                          -I E:\解决\路由\Projects\zstack\Samples\SampleAp /
//                          p\CC2430DB\..\..\..\..\..\Components\mac\high_le /
//                          vel\ -I E:\解决\路由\Projects\zstack\Samples\Sam /
//                          pleApp\CC2430DB\..\..\..\..\..\Components\mac\lo /
//                          w_level\srf03\ -I E:\解决\路由\Projects\zstack\S /
//                          amples\SampleApp\CC2430DB\..\..\..\..\..\Compone /
//                          nts\mac\low_level\srf03\single_chip\ -D          /
//                          CC2430DB -lC E:\解决\路由\Projects\zstack\Sample /
//                          s\SampleApp\CC2430DB\CoordinatorDB\List\ -lA     /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\CoordinatorDB\List\ --diag_suppress      /
//                          Pe001,Pa010 --diag_remark pe550 -o               /
//                          E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\CoordinatorDB\Obj\ -e                    /
//                          --require_prototypes -z9 --no_code_motion        /
//                          --debug --core=plain --dptr=16,1                 /
//                          --data_model=large --code_model=banked           /
//                          --calling_convention=xdata_reentrant             /
//                          --place_constants=data --nr_virtual_regs 8       /
//                          E:\解决\路由\Components\mt\MT_ZDO.c              /
//    List file          =  E:\解决\路由\Projects\zstack\Samples\SampleApp\C /
//                          C2430DB\CoordinatorDB\List\MT_ZDO.s51            /
//                                                                           /
//                                                                           /
//////////////////////////////////////////////////////////////////////////////

        NAME MT_ZDO

        RTMODEL "__calling_convention", "xdata_reentrant"
        RTMODEL "__code_model", "banked"
        RTMODEL "__core", "plain"
        RTMODEL "__data_model", "large"
        RTMODEL "__dptr_size", "16"
        RTMODEL "__extended_stack", "disabled"
        RTMODEL "__location_for_constants", "data"
        RTMODEL "__number_of_dptrs", "1"
        RTMODEL "__rt_version", "1"

        RSEG DOVERLAY:DATA:NOROOT(0)
        RSEG IOVERLAY:IDATA:NOROOT(0)
        RSEG ISTACK:IDATA:NOROOT(0)
        RSEG PSTACK:XDATA:NOROOT(0)
        RSEG XSTACK:XDATA:NOROOT(0)


        END
// E:\解决\路由\Components\mt\MT_ZDO.c
//    1 /*********************************************************************
//    2     Filename:       MT_ZDO.c
//    3     Revised:        $Date: 2007-05-14 17:34:18 -0700 (Mon, 14 May 2007) $
//    4     Revision:       $Revision: 14296 $
//    5 
//    6     Description:
//    7 
//    8         MonitorTest functions for the NWK layer.
//    9 
//   10     Notes:
//   11 
//   12     Copyright (c) 2006 by Texas Instruments, Inc.
//   13     All Rights Reserved.  Permission to use, reproduce, copy, prepare
//   14     derivative works, modify, distribute, perform, display or sell this
//   15     software and/or its documentation for any purpose is prohibited
//   16     without the express written consent of Texas Instruments, Inc.
//   17 *********************************************************************/
//   18 
//   19 #ifdef MT_ZDO_FUNC
//   20 
//   21 
//   22 /*********************************************************************
//   23  * INCLUDES
//   24  */
//   25 #include "ZComDef.h"
//   26 #include "OSAL.h"
//   27 #include "MTEL.h"
//   28 #include "MT_ZDO.h"
//   29 #include "APSMEDE.h"
//   30 #include "ZDConfig.h"
//   31 #include "ZDProfile.h"
//   32 #include "ZDObject.h"
//   33 #include "ZDApp.h"
//   34 
//   35 #if !defined( WIN32 )
//   36   #include "OnBoard.h"
//   37 #endif
//   38 
//   39 #include "nwk_util.h"
//   40 
//   41 /*********************************************************************
//   42  * MACROS
//   43  */
//   44 
//   45 /*********************************************************************
//   46  * CONSTANTS
//   47  */
//   48 
//   49 /*********************************************************************
//   50  * TYPEDEFS
//   51  */
//   52 
//   53 /*********************************************************************
//   54  * GLOBAL VARIABLES
//   55  */
//   56 uint32 _zdoCallbackSub;
//   57 
//   58 /*********************************************************************
//   59  * EXTERNAL VARIABLES
//   60  */
//   61 
//   62 /*********************************************************************
//   63  * EXTERNAL FUNCTIONS
//   64  */
//   65 
//   66 /*********************************************************************
//   67  * LOCAL VARIABLES
//   68  */
//   69 
//   70 /*********************************************************************
//   71  * LOCAL FUNCTIONS
//   72  */
//   73 byte *zdo_MT_MakeExtAddr( zAddrType_t *devAddr, byte *pData );
//   74 byte *zdo_MT_CopyRevExtAddr( byte *dstMsg, byte *addr );
//   75 
//   76 /*********************************************************************
//   77  * @fn      MT_ZdoCommandProcessing
//   78  *
//   79  * @brief
//   80  *
//   81  *   Process all the ZDO commands that are issued by test tool
//   82  *
//   83  * @param   cmd_id - Command ID
//   84  * @param   len    - Length of received SPI data message
//   85  * @param   pData  - pointer to received SPI data message
//   86  *
//   87  * @return  void
//   88  */
//   89 void MT_ZdoCommandProcessing( uint16 cmd_id , byte len , byte *pData )
//   90 {
//   91   byte i;
//   92   byte x;
//   93   byte ret;
//   94   byte attr;
//   95   byte attr1;
//   96   uint16 cID;
//   97   uint16 shortAddr;
//   98   uint16 uAttr;
//   99   byte *ptr;
//  100   byte *ptr1;
//  101   zAddrType_t devAddr;
//  102   zAddrType_t dstAddr;
//  103   byte respLen;
//  104 #if defined ( ZDO_MGMT_NWKDISC_REQUEST )
//  105   uint32 scanChans;
//  106 #endif
//  107 #if defined ( ZDO_USERDESCSET_REQUEST )
//  108   UserDescriptorFormat_t userDesc;
//  109 #endif
//  110 
//  111   ret = UNSUPPORTED_COMMAND;
//  112   len = SPI_0DATA_MSG_LEN + SPI_RESP_LEN_ZDO_DEFAULT;
//  113   respLen = SPI_RESP_LEN_ZDO_DEFAULT;
//  114 
//  115   switch (cmd_id)
//  116   {
//  117     case SPI_CMD_ZDO_AUTO_ENDDEVICEBIND_REQ:
//  118       i = *pData;    // Get the endpoint/interface
//  119       ZDApp_SendEndDeviceBindReq( i );
//  120 
//  121       //Since function type is void, report a succesful operation to the test tool
//  122       ret = ZSUCCESS;
//  123       break;
//  124 
//  125     case SPI_CMD_ZDO_AUTO_FIND_DESTINATION_REQ:
//  126       i = *pData;    // Get the endpoint/interface
//  127       ZDApp_AutoFindDestination( i );
//  128       //Since function type is void, report a succesful operation to the test tool
//  129       ret = ZSUCCESS;
//  130       break;
//  131 
//  132 #if defined ( ZDO_NWKADDR_REQUEST )
//  133     case SPI_CMD_ZDO_NWK_ADDR_REQ:
//  134       // Copy and flip incoming 64-bit address
//  135       pData = zdo_MT_MakeExtAddr( &devAddr, pData );
//  136 
//  137       ptr = (byte*)&devAddr.addr.extAddr;
//  138 
//  139       attr = *pData++;   // RequestType
//  140       attr1 = *pData++;  // StartIndex
//  141       x = *pData;
//  142       ret = (byte)ZDP_NwkAddrReq( ptr, attr, attr1, x );
//  143       break;
//  144 #endif
//  145 
//  146 #if defined ( ZDO_IEEEADDR_REQUEST )
//  147     case SPI_CMD_ZDO_IEEE_ADDR_REQ:
//  148       shortAddr = BUILD_UINT16( pData[1], pData[0] );
//  149       pData += sizeof( shortAddr );
//  150       attr = *pData++;   // RequestType
//  151       attr1 = *pData++;  // StartIndex
//  152       x = *pData;        // SecuritySuite
//  153       ret = (byte)ZDP_IEEEAddrReq( shortAddr, attr, attr1, x );
//  154       break;
//  155 #endif
//  156 
//  157 #if defined ( ZDO_NODEDESC_REQUEST )
//  158     case SPI_CMD_ZDO_NODE_DESC_REQ:
//  159       // destination address
//  160       devAddr.addrMode = Addr16Bit;
//  161       devAddr.addr.shortAddr = BUILD_UINT16( pData[1], pData[0] );
//  162       pData += 2;
//  163 
//  164       // Network address of interest
//  165       shortAddr = BUILD_UINT16( pData[1], pData[0] );
//  166       pData += 2;
//  167 
//  168       attr = *pData;
//  169       ret = (byte)ZDP_NodeDescReq( &devAddr, shortAddr, attr );
//  170       break;
//  171 #endif
//  172 
//  173 #if defined ( ZDO_POWERDESC_REQUEST )
//  174     case SPI_CMD_ZDO_POWER_DESC_REQ:
//  175       // destination address
//  176       devAddr.addrMode = Addr16Bit;
//  177       devAddr.addr.shortAddr = BUILD_UINT16( pData[1], pData[0] );
//  178       pData += 2;
//  179 
//  180       // Network address of interest
//  181       shortAddr = BUILD_UINT16( pData[1], pData[0] );
//  182       pData += 2;
//  183 
//  184       attr = *pData;
//  185       ret = (byte)ZDP_PowerDescReq( &devAddr, shortAddr, attr );
//  186       break;
//  187 #endif
//  188 
//  189 #if defined ( ZDO_SIMPLEDESC_REQUEST )
//  190     case SPI_CMD_ZDO_SIMPLE_DESC_REQ:
//  191       // destination address
//  192       devAddr.addrMode = Addr16Bit;
//  193       devAddr.addr.shortAddr = BUILD_UINT16( pData[1], pData[0] );
//  194       pData += 2;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -