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

📄 zdobject.s51

📁 cc2430讀取短地址程式
💻 S51
📖 第 1 页 / 共 5 页
字号:
        CFI V2 SameValue
        CFI V3 SameValue
        CFI V4 SameValue
        CFI V5 SameValue
        CFI V6 SameValue
        CFI V7 SameValue
        CFI PSPH Undefined
        CFI PSPL Undefined
        CFI XSPH Undefined
        CFI XSPL Undefined
        CFI ?RET Concat
        CFI ?BRET_EXT SameValue
        CFI ?RET_HIGH Frame(CFA_SP, 2)
        CFI ?RET_LOW Frame(CFA_SP, 1)
        CFI EndCommon cfiCommon1
        
        EXTERN NLME_DeviceJoiningInit
        FUNCTION NLME_DeviceJoiningInit,0202H
        ARGFRAME ISTACK, 2, STACK
        EXTERN ZDSecMgrInit
        FUNCTION ZDSecMgrInit,0202H
        ARGFRAME ISTACK, 2, STACK
        EXTERN NLME_NetworkDiscoveryRequest
        FUNCTION NLME_NetworkDiscoveryRequest,0202H
        ARGFRAME XSTACK, 23, STACK
        EXTERN nwk_ScanJoiningOrphan
        FUNCTION nwk_ScanJoiningOrphan,0202H
        ARGFRAME XSTACK, 23, STACK
        EXTERN NLME_OrphanJoinRequest
        FUNCTION NLME_OrphanJoinRequest,0202H
        ARGFRAME XSTACK, 23, STACK
        EXTERN ZDSecMgrConfig
        FUNCTION ZDSecMgrConfig,0202H
        ARGFRAME XSTACK, 23, STACK
        EXTERN osal_start_timer
        FUNCTION osal_start_timer,0202H
        ARGFRAME XSTACK, 23, STACK
        EXTERN NLME_GetShortAddr
        FUNCTION NLME_GetShortAddr,0202H
        ARGFRAME XSTACK, 12, STACK
        EXTERN NLME_GetExtAddr
        FUNCTION NLME_GetExtAddr,0202H
        ARGFRAME XSTACK, 12, STACK
        EXTERN osal_msg_allocate
        FUNCTION osal_msg_allocate,0202H
        ARGFRAME XSTACK, 30, STACK
        EXTERN osal_msg_send
        FUNCTION osal_msg_send,0202H
        ARGFRAME XSTACK, 30, STACK
        EXTERN osal_mem_alloc
        FUNCTION osal_mem_alloc,0202H
        ARGFRAME XSTACK, 14, STACK
        EXTERN NLME_GetProtocolVersion
        FUNCTION NLME_GetProtocolVersion,0202H
        ARGFRAME XSTACK, 14, STACK
        EXTERN ZDP_NodeDescMsg
        FUNCTION ZDP_NodeDescMsg,0202H
        ARGFRAME XSTACK, 15, STACK
        EXTERN ZDP_GenericRsp
        FUNCTION ZDP_GenericRsp,0202H
        ARGFRAME XSTACK, 20, STACK
        EXTERN ZDP_PowerDescMsg
        FUNCTION ZDP_PowerDescMsg,0202H
        ARGFRAME XSTACK, 15, STACK
        EXTERN afFindSimpleDesc
        FUNCTION afFindSimpleDesc,0202H
        ARGFRAME XSTACK, 16, STACK
        EXTERN ZDP_SimpleDescMsg
        FUNCTION ZDP_SimpleDescMsg,0202H
        ARGFRAME XSTACK, 20, STACK
        EXTERN osal_mem_free
        FUNCTION osal_mem_free,0202H
        ARGFRAME XSTACK, 30, STACK
        EXTERN afNumEndPoints
        FUNCTION afNumEndPoints,0202H
        ARGFRAME XSTACK, 16, STACK
        EXTERN afEndPoints
        FUNCTION afEndPoints,0202H
        ARGFRAME XSTACK, 16, STACK
        EXTERN ZDP_EPRsp
        FUNCTION ZDP_EPRsp,0202H
        ARGFRAME XSTACK, 37, STACK
        EXTERN NLME_IsAddressBroadcast
        FUNCTION NLME_IsAddressBroadcast,0202H
        ARGFRAME XSTACK, 30, STACK
        EXTERN osal_memcpy
        FUNCTION osal_memcpy,0202H
        ARGFRAME XSTACK, 33, STACK
        EXTERN ZDApp_MatchDescRspCB
        FUNCTION ZDApp_MatchDescRspCB,0202H
        ARGFRAME XSTACK, 14, STACK
        EXTERN ZDApp_EndDeviceBindRsp
        FUNCTION ZDApp_EndDeviceBindRsp,0202H
        ARGFRAME ISTACK, 2, STACK
        EXTERN ZDAppNwkAddr
        EXTERN ZDO_Config_Node_Descriptor
        EXTERN ZDO_Config_Power_Descriptor
        EXTERN devState
        EXTERN epList
        EXTERN zgDefaultChannelList
        EXTERN zgDefaultStartingScanDuration

// C:\Texas Instruments\ZStack-1.4.2\Components\stack\zdo\ZDObject.c
//    1 /*********************************************************************
//    2     Filename:       ZDObject.c
//    3     Revised:        $Date: 2007-05-14 17:34:18 -0700 (Mon, 14 May 2007) $
//    4     Revision:       $Revision: 14296 $
//    5 
//    6     Description:
//    7 
//    8       This Zigbee Device Object.
//    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 /*********************************************************************
//   20  * INCLUDES
//   21  */
//   22 #include "ZComdef.h"
//   23 #include "OSAL.h"
//   24 #include "OSAL_Nv.h"
//   25 #include "rtg.h"
//   26 #include "NLMEDE.h"
//   27 #include "nwk_globals.h"
//   28 #include "APS.h"
//   29 #include "APSMEDE.h"
//   30 #include "AssocList.h"
//   31 #include "BindingTable.h"
//   32 #include "AddrMgr.h"
//   33 #include "AF.h"
//   34 #include "ZDObject.h"
//   35 #include "ZDProfile.h"
//   36 #include "ZDConfig.h"
//   37 #include "ZDCache.h"
//   38 #include "ZDSecMgr.h"
//   39 #include "ZDApp.h"
//   40 #include "nwk_util.h"   // NLME_IsAddressBroadcast()
//   41 #include "ZGlobals.h"
//   42 
//   43 #if defined( LCD_SUPPORTED )
//   44   #include "OnBoard.h"
//   45 #endif
//   46 
//   47 /* HAL */
//   48 #include "hal_lcd.h"
//   49 
//   50 /*********************************************************************
//   51  * MACROS
//   52  */
//   53 
//   54 /*********************************************************************
//   55  * CONSTANTS
//   56  */
//   57 // NLME Stub Implementations
//   58 #define ZDO_ProcessMgmtPermitJoinTimeout NLME_PermitJoiningTimeout
//   59 
//   60 // Status fields used by ZDO_ProcessMgmtRtgReq
//   61 #define ZDO_MGMT_RTG_ENTRY_ACTIVE             0x00
//   62 #define ZDO_MGMT_RTG_ENTRY_DISCOVERY_UNDERWAY 0x01
//   63 #define ZDO_MGMT_RTG_ENTRY_DISCOVERY_FAILED   0x02
//   64 #define ZDO_MGMT_RTG_ENTRY_INACTIVE           0x03
//   65 
//   66 /*********************************************************************
//   67  * TYPEDEFS
//   68  */
//   69 #if defined ( REFLECTOR )
//   70 typedef struct
//   71 {
//   72   byte SrcTransSeq;
//   73   zAddrType_t SrcAddr;
//   74   uint16 LocalCoordinator;
//   75   byte epIntf;
//   76   uint16 ProfileID;
//   77   byte numInClusters;
//   78   uint16 *inClusters;
//   79   byte numOutClusters;
//   80   uint16 *outClusters;
//   81   byte SecurityUse;
//   82   byte status;
//   83 } ZDO_EDBind_t;
//   84 #endif // defined ( REFLECTOR )
//   85 
//   86 #if defined ( ZDO_COORDINATOR )
//   87 enum
//   88 {
//   89   ZDMATCH_INIT,           // Initialized
//   90   ZDMATCH_WAIT_REQ,       // Received first request, waiting for second
//   91   ZDMATCH_SENDING_BINDS   // Received both requests, sending unbind/binds
//   92 };
//   93 
//   94 enum
//   95 {
//   96   ZDMATCH_REASON_START,
//   97   ZDMATCH_REASON_TIMEOUT,
//   98   ZDMATCH_REASON_UNBIND_RSP,
//   99   ZDMATCH_REASON_BIND_RSP
//  100 };
//  101 
//  102 enum
//  103 {
//  104   ZDMATCH_SENDING_NOT,
//  105   ZDMATCH_SENDING_UNBIND,
//  106   ZDMATCH_SENDING_BIND
//  107 };
//  108 
//  109 typedef struct
//  110 {
//  111   ZDEndDeviceBind_t ed1;
//  112   ZDEndDeviceBind_t ed2;
//  113   uint8  state;            // One of the above states
//  114   uint8  sending;         // 0 - not sent, 1 - unbind, 2 bind - expecting response
//  115   uint8  transSeq;
//  116   uint8  ed1numMatched;
//  117   uint16 *ed1Matched;
//  118   uint8  ed2numMatched;
//  119   uint16 *ed2Matched;
//  120 } ZDMatchEndDeviceBind_t;
//  121 #endif
//  122 
//  123 /*********************************************************************
//  124  * GLOBAL VARIABLES
//  125  */
//  126 
//  127 /*********************************************************************
//  128  * EXTERNAL VARIABLES
//  129  */
//  130 
//  131 /*********************************************************************
//  132  * EXTERNAL FUNCTIONS
//  133  */
//  134 
//  135 /*********************************************************************
//  136  * LOCAL VARIABLES
//  137  */

        RSEG XDATA_Z:XDATA:NOROOT(0)
        REQUIRE __INIT_XDATA_Z
//  138 static uint16 ZDOBuildBuf[26];  // temp area to build data without allocation
??ZDOBuildBuf:
        DS 52
//  139 
//  140 #if defined ( REFLECTOR )
//  141 static ZDO_EDBind_t *ZDO_EDBind;     // Null when not used
//  142 #endif
//  143 
//  144 #if defined ( MANAGED_SCAN )
//  145   uint32 managedScanNextChannel = 0;
//  146   uint32 managedScanChannelMask = 0;
//  147   uint8  managedScanTimesPerChannel = 0;
//  148 #endif
//  149 
//  150 #if defined ( ZDO_COORDINATOR )
//  151   ZDMatchEndDeviceBind_t *matchED = (ZDMatchEndDeviceBind_t *)NULL;
//  152 #endif
//  153 
//  154 /*********************************************************************
//  155  * LOCAL FUNCTIONS
//  156  */
//  157 static void ZDODeviceSetup( void );
//  158 static uint16 *ZDO_CreateAlignedUINT16List(uint8 num, uint8 *buf);
//  159 #if defined ( MANAGED_SCAN )
//  160   static void ZDOManagedScan_Next( void );
//  161 #endif
//  162 #if defined ( REFLECTOR )
//  163   static void ZDO_RemoveEndDeviceBind( void );
//  164   static void ZDO_SendEDBindRsp( byte TransSeq, zAddrType_t *dstAddr, byte Status, byte secUse );
//  165 #endif
//  166 #if defined ( REFLECTOR ) || defined( ZDO_COORDINATOR )
//  167   static byte ZDO_CompareClusterLists( byte numList1, uint16 *list1,
//  168                                 byte numList2, uint16 *list2, uint16 *pMatches );
//  169 #endif
//  170 #if defined ( ZDO_COORDINATOR )
//  171   static void ZDO_RemoveMatchMemory( void );
//  172   static uint8 ZDO_CopyMatchInfo( ZDEndDeviceBind_t *destReq, ZDEndDeviceBind_t *srcReq );
//  173   static uint8 ZDMatchSendState( uint8 reason, uint8 status, uint8 TransSeq );
//  174   static void ZDO_EndDeviceBindMatchTimeoutCB( void );
//  175 #endif
//  176 
//  177 /*********************************************************************
//  178  * @fn          ZDO_Init
//  179  *
//  180  * @brief       ZDObject and ZDProfile initialization.
//  181  *
//  182  * @param       none
//  183  *
//  184  * @return      none
//  185  */

        RSEG BANKED_CODE:CODE:NOROOT(0)
//  186 void ZDO_Init( void )
ZDO_Init:
        CFI Block cfiBlock0 Using cfiCommon0
        CFI Function ZDO_Init
//  187 {
        FUNCALL ZDO_Init, NLME_DeviceJoiningInit
        LOCFRAME ISTACK, 2, STACK
        ARGFRAME ISTACK, 2, STACK
        FUNCALL ZDO_Init, ZDSecMgrInit
        LOCFRAME ISTACK, 2, STACK
        ARGFRAME ISTACK, 2, STACK
        PUSH	DPL
        CFI DPL0 Frame(CFA_SP, 4)
        CFI CFA_SP SP+-4
        PUSH	DPH
        CFI DPH0 Frame(CFA_SP, 5)
        CFI CFA_SP SP+-5
        ; Saved register size: 2
        ; Auto size: 0
//  188   // Initialize ZD items
//  189   #if defined ( REFLECTOR )
//  190   ZDO_EDBind = NULL;
//  191   #endif
//  192 
//  193   // Setup the device - type of device to create.
//  194   ZDODeviceSetup();
        ; Setup parameters for call to function NLME_DeviceJoiningInit
        MOV	DPTR,#(NLME_DeviceJoiningInit & 0xffff)
        MOV	A,#((NLME_DeviceJoiningInit >> 16) & 0xff)
        LCALL	?BCALL               ; Banked call to: DPTR()
//  195 
//  196   // Initialize ZigBee Device Security Manager
//  197   ZDSecMgrInit();
        ; Setup parameters for call to function ZDSecMgrInit
        MOV	DPTR,#(ZDSecMgrInit & 0xffff)
        MOV	A,#((ZDSecMgrInit >> 16) & 0xff)
        LCALL	?BCALL               ; Banked call to: DPTR()
        CFI EndBlock cfiBlock0

⌨️ 快捷键说明

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