📄 nwk_globals.lst
字号:
##############################################################################
# #
# IAR 8051 C/C++ Compiler V7.20H/W32 06/Nov/2008 11:13:28 #
# 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\stack\nwk\nwk_globals.c #
# Command line = -f E:\解决\路由\Projects\zstack\Samples\SampleApp #
# \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\CC #
# 2430DB\..\..\..\Tools\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 "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\CC #
# 2430DB\ -I E:\解决\路由\Projects\zstack\Samples\S #
# ampleApp\CC2430DB\..\Source\ -I #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\..\..\..\ZMain\TI2430DB\ -I #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\..\..\..\..\..\Components\mt\ -I #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\..\..\..\..\..\Components\hal\include\ -I #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\..\..\..\..\..\Components\hal\target\CC243 #
# 0DB\ -I E:\解决\路由\Projects\zstack\Samples\Samp #
# leApp\CC2430DB\..\..\..\..\..\Components\osal\mcu #
# \ccsoc\ -I E:\解决\路由\Projects\zstack\Samples\S #
# ampleApp\CC2430DB\..\..\..\..\..\Components\osal\ #
# include\ -I E:\解决\路由\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
# k\af\ -I E:\解决\路由\Projects\zstack\Samples\Sam #
# pleApp\CC2430DB\..\..\..\..\..\Components\stack\n #
# wk\ -I E:\解决\路由\Projects\zstack\Samples\Sampl #
# eApp\CC2430DB\..\..\..\..\..\Components\stack\sec #
# \ -I E:\解决\路由\Projects\zstack\Samples\SampleA #
# pp\CC2430DB\..\..\..\..\..\Components\stack\sys\ #
# -I E:\解决\路由\Projects\zstack\Samples\SampleApp #
# \CC2430DB\..\..\..\..\..\Components\stack\zdo\ #
# -I E:\解决\路由\Projects\zstack\Samples\SampleApp #
# \CC2430DB\..\..\..\..\..\Components\zmac\f8w\ -I #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\..\..\..\..\..\Components\zmac\ -I #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\..\..\..\..\..\Components\services\saddr\ #
# -I E:\解决\路由\Projects\zstack\Samples\SampleApp #
# \CC2430DB\..\..\..\..\..\Components\services\sdat #
# a\ -I E:\解决\路由\Projects\zstack\Samples\Sample #
# App\CC2430DB\..\..\..\..\..\Components\mac\includ #
# e\ -I E:\解决\路由\Projects\zstack\Samples\Sample #
# App\CC2430DB\..\..\..\..\..\Components\mac\high_l #
# evel\ -I E:\解决\路由\Projects\zstack\Samples\Sam #
# pleApp\CC2430DB\..\..\..\..\..\Components\mac\low #
# _level\srf03\ -I E:\解决\路由\Projects\zstack\Sam #
# ples\SampleApp\CC2430DB\..\..\..\..\..\Components #
# \mac\low_level\srf03\single_chip\ -D CC2430DB #
# -lC E:\解决\路由\Projects\zstack\Samples\SampleAp #
# p\CC2430DB\CoordinatorDB\List\ -lA #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\CoordinatorDB\List\ --diag_suppress #
# Pe001,Pa010 --diag_remark pe550 -o #
# E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\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\stack\nwk\nwk_globals.c #
# List file = E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\CoordinatorDB\List\nwk_globals.lst #
# Object file = E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
# 2430DB\CoordinatorDB\Obj\nwk_globals.r51 #
# #
# #
##############################################################################
E:\解决\路由\Components\stack\nwk\nwk_globals.c
1 /*********************************************************************
2 Filename: nwk_globals.c
3 Revised: $Date: 2007-05-14 17:34:18 -0700 (Mon, 14 May 2007) $
4 Revision: $Revision: 14296 $
5
6 Description:
7
8 User definable Network Parameters.
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 "AddrMgr.h"
25 #include "AssocList.h"
26 #include "BindingTable.h"
27 #include "nwk_globals.h"
28 #include "ssp.h"
29 #include "rtg.h"
30 #include "ZDConfig.h"
31 #include "ZGlobals.h"
32
33 #if defined ( LCD_SUPPORTED )
34 #include "OnBoard.h"
35 #endif
36
37 /* HAL */
38 #include "hal_lcd.h"
39
40 /*********************************************************************
41 * MACROS
42 */
43
44 /*********************************************************************
45 * CONSTANTS
46 */
47
48 // Maximums for the data buffer queue
49 #define NWK_MAX_DATABUFS_WAITING 8 // Waiting to be sent to MAC
50 #define NWK_MAX_DATABUFS_SCHEDULED 5 // Timed messages to be sent
51 #define NWK_MAX_DATABUFS_CONFIRMED 5 // Held after MAC confirms
52 #define NWK_MAX_DATABUFS_TOTAL 12 // Total number of buffers
53
54 // 1-255 (0 -> 256) X RTG_TIMER_INTERVAL
55 // A known shortcoming is that when a message is enqueued as "hold" for a
56 // sleeping device, the timer tick may have counted down to 1, so that msg
57 // will not be held as long as expected. If NWK_INDIRECT_MSG_TIMEOUT is set to 1
58 // the hold time will vary randomly from 0 - CNT_RTG_TIMER ticks.
59 // So the hold time will vary within this interval:
60 // { (NWK_INDIRECT_MSG_TIMEOUT-1)*CNT_RTG_TIMER,
61 // NWK_INDIRECT_MSG_TIMEOUT*CNT_RTG_TIMER }
62 #define NWK_INDIRECT_CNT_RTG_TMR 1 //ggg - need hours or days?
63 // To hold msg for sleeping end devices for 30 secs:
64 // #define CNT_RTG_TIMER 1
65 // #define NWK_INDIRECT_MSG_TIMEOUT 30
66 // To hold msg for sleeping end devices for 30 mins:
67 // #define CNT_RTG_TIMER 60
68 // #define NWK_INDIRECT_MSG_TIMEOUT 30
69 // To hold msg for sleeping end devices for 30 days:
70 // #define CNT_RTG_TIMER 60
71 // #define NWK_INDIRECT_MSG_TIMEOUT (30 * 24 * 60)
72 // Maximum msgs to hold per associated device.
73 #define NWK_INDIRECT_MSG_MAX_PER 3
74 // Maximum total msgs to hold for all associated devices.
75 #define NWK_INDIRECT_MSG_MAX_ALL \
76 (NWK_MAX_DATABUFS_TOTAL - NWK_INDIRECT_MSG_MAX_PER)
77
78
79 /*********************************************************************
80 * TYPEDEFS
81 */
82
83 /*********************************************************************
84 * NWK GLOBAL VARIABLES
85 */
86
87 // Variables for MAX list size
\ In segment CODE_C, align 1
88 CONST uint16 gNWK_MAX_DEVICE_LIST = NWK_MAX_DEVICES;
\ gNWK_MAX_DEVICE_LIST:
\ 000000 1500 DW 21
89
90 // Variables for MAX data buffer levels
\ In segment CODE_C, align 1
91 CONST byte gNWK_MAX_DATABUFS_WAITING = NWK_MAX_DATABUFS_WAITING;
\ gNWK_MAX_DATABUFS_WAITING:
\ 000000 08 DB 8
\ In segment CODE_C, align 1
92 CONST byte gNWK_MAX_DATABUFS_SCHEDULED = NWK_MAX_DATABUFS_SCHEDULED;
\ gNWK_MAX_DATABUFS_SCHEDULED:
\ 000000 05 DB 5
\ In segment CODE_C, align 1
93 CONST byte gNWK_MAX_DATABUFS_CONFIRMED = NWK_MAX_DATABUFS_CONFIRMED;
\ gNWK_MAX_DATABUFS_CONFIRMED:
\ 000000 05 DB 5
\ In segment CODE_C, align 1
94 CONST byte gNWK_MAX_DATABUFS_TOTAL = NWK_MAX_DATABUFS_TOTAL;
\ gNWK_MAX_DATABUFS_TOTAL:
\ 000000 0C DB 12
95
\ In segment CODE_C, align 1
96 CONST byte gNWK_INDIRECT_CNT_RTG_TMR = NWK_INDIRECT_CNT_RTG_TMR;
\ gNWK_INDIRECT_CNT_RTG_TMR:
\ 000000 01 DB 1
\ In segment CODE_C, align 1
97 CONST byte gNWK_INDIRECT_MSG_MAX_PER = NWK_INDIRECT_MSG_MAX_PER;
\ gNWK_INDIRECT_MSG_MAX_PER:
\ 000000 03 DB 3
\ In segment CODE_C, align 1
98 CONST byte gNWK_INDIRECT_MSG_MAX_ALL = NWK_INDIRECT_MSG_MAX_ALL;
\ gNWK_INDIRECT_MSG_MAX_ALL:
\ 000000 09 DB 9
99
100 #if defined ( RTR_NWK )
101 // change this if using a different stack profile...
102 // Cskip array
\ In segment XDATA_Z, align 1, keep-with-next
\ 000000 REQUIRE __INIT_XDATA_Z
103 uint16 *Cskip;
\ Cskip:
\ 000000 DS 2
104
105 #if ( STACK_PROFILE_ID == HOME_CONTROLS )
\ In segment XDATA_I, align 1, keep-with-next
106 byte CskipRtrs[MAX_NODE_DEPTH+1] = {6,6,6,6,6,0};
\ CskipRtrs:
\ 000000 DS 6
\ 000006 REQUIRE `?<Initializer for CskipRtrs>`
\ 000006 REQUIRE __INIT_XDATA_I
\ In segment XDATA_I, align 1, keep-with-next
107 byte CskipChldrn[MAX_NODE_DEPTH+1] = {20,20,20,20,20,0};
\ CskipChldrn:
\ 000000 DS 6
\ 000006 REQUIRE `?<Initializer for CskipChldrn>`
\ 000006 REQUIRE __INIT_XDATA_I
108 #elif ( STACK_PROFILE_ID == GENERIC_STAR )
109 byte CskipRtrs[MAX_NODE_DEPTH+1] = {5,5,5,5,5,0};
110 byte CskipChldrn[MAX_NODE_DEPTH+1] = {5,5,5,5,5,0};
111 #elif ( STACK_PROFILE_ID == NETWORK_SPECIFIC )
112 byte CskipRtrs[MAX_NODE_DEPTH+1] = {5,5,5,5,5,0};
113 byte CskipChldrn[MAX_NODE_DEPTH+1] = {5,5,5,5,5,0};
114 #endif // STACK_PROFILE_ID
115 #endif // RTR_NWK
116
117
118 // Minimum lqi value that is required for association
\ In segment XDATA_I, align 1, keep-with-next
119 byte gMIN_TREE_LINK_COST = MIN_LQI_COST_3;
\ gMIN_TREE_LINK_COST:
\ 000000 DS 1
\ 000001 REQUIRE `?<Initializer for gMIN_TREE_LINK_COST>`
\ 000001 REQUIRE __INIT_XDATA_I
120
121 #if defined(RTR_NWK)
122 // Statically defined Associated Device List
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -