📄 zdobject.lst
字号:
##############################################################################
# #
# IAR 8051 C/C++ Compiler V7.20H/W32 08/Mar/2009 09:13:29 #
# 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 = C:\Texas Instruments\ZStack-1.4.2-1.1.0\Component #
# s\stack\zdo\ZDObject.c #
# Command line = -f "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Proje #
# cts\zstack\Samples\GenericApp\CC2430DB\..\..\..\T #
# ools\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 #
# "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects #
# \zstack\Samples\GenericApp\CC2430DB\..\..\..\Tool #
# s\CC2430DB\f8wConfig.cfg" (-DSECURE=0 #
# -DDEFAULT_CHANLIST=0x00000800 #
# -DZDAPP_CONFIG_PAN_ID=0xFFFF #
# -DNWK_START_DELAY=100 -DEXTENDED_JOINING_RANDOM_M #
# ASK=0x007F -DBEACON_REQUEST_DELAY=100 #
# -DBEACON_REQ_DELAY_MASK=0x00FF #
# -DROUTE_EXPIRY_TIME=30 -DAPSC_ACK_WAIT_DURATION_P #
# OLLED=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 "C:\Program Files\IAR #
# Systems\Embedded Workbench 4.05 Evaluation #
# version\8051\inc\" -I "C:\Program Files\IAR #
# Systems\Embedded Workbench 4.05 Evaluation #
# version\8051\inc\clib\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\Source\" -I #
# "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects #
# \zstack\Samples\GenericApp\CC2430DB\..\..\..\ZMai #
# n\TI2430DB\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\mt\" -I "C:\Texas Instruments\ZStack-1.4.2-1.1 #
# .0\Projects\zstack\Samples\GenericApp\CC2430DB\.. #
# \..\..\..\..\Components\hal\include\" -I #
# "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects #
# \zstack\Samples\GenericApp\CC2430DB\..\..\..\..\. #
# .\Components\hal\target\CC2430DB\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\osal\mcu\ccsoc\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\osal\include\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\stack\af\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\stack\nwk\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\stack\sec\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\stack\sys\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\stack\zdo\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\zmac\f8w\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\zmac\" -I "C:\Texas Instruments\ZStack-1.4.2-1 #
# .1.0\Projects\zstack\Samples\GenericApp\CC2430DB\ #
# ..\..\..\..\..\Components\services\saddr\" -I #
# "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects #
# \zstack\Samples\GenericApp\CC2430DB\..\..\..\..\. #
# .\Components\services\sdata\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\mac\include\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\mac\high_level\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\mac\low_level\srf03\" -I "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\..\..\..\..\..\Componen #
# ts\mac\low_level\srf03\single_chip\" -D CC2430DB #
# -D COORDINATOR_BINDING -D xZTOOL_P2 -D xMT_TASK #
# -D xMT_ZDO_FUNC -D xLCD_SUPPORTED=DEBUG -lC #
# "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects #
# \zstack\Samples\GenericApp\CC2430DB\CoordinatorDB #
# \List\" -lA "C:\Texas Instruments\ZStack-1.4.2-1. #
# 1.0\Projects\zstack\Samples\GenericApp\CC2430DB\C #
# oordinatorDB\List\" --diag_suppress Pe001,Pa010 #
# --diag_remark pe550 -o "C:\Texas #
# Instruments\ZStack-1.4.2-1.1.0\Projects\zstack\Sa #
# mples\GenericApp\CC2430DB\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 #
# "C:\Texas Instruments\ZStack-1.4.2-1.1.0\Componen #
# ts\stack\zdo\ZDObject.c" #
# List file = C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects\ #
# zstack\Samples\GenericApp\CC2430DB\CoordinatorDB\ #
# List\ZDObject.lst #
# Object file = C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects\ #
# zstack\Samples\GenericApp\CC2430DB\CoordinatorDB\ #
# Obj\ZDObject.r51 #
# #
# #
##############################################################################
C:\Texas Instruments\ZStack-1.4.2-1.1.0\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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -