📄 zmain.lst
字号:
##############################################################################
# #
# IAR 8051 C/C++ Compiler V7.20H/W32 13/Nov/2008 11:55:01 #
# 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\Projects\zstack #
# \ZMain\TI2430DB\ZMain.c #
# Command line = -f "C:\Texas Instruments\ZStack-1.4.2\Projects\zs #
# tack\Samples\SampleApp\CC2430DB\..\..\..\Tools\CC #
# 2430DB\f8wEndev.cfg" (-DCPU32MHZ #
# -DFORCE_MAC_NEAR -DROOT=__near_func #
# -DMAC_OPT_FFD=0 -DBLINK_LEDS "-DCONST=const #
# __code" -DGENERIC=__generic) -f "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\Tools\CC2430DB\f8wCon #
# fig.cfg" (-DSECURE=0 -DDEFAULT_CHANLIST=0x0000080 #
# 0 -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\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\Source\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\ZMain\TI2430DB\" -I #
# "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
# k\Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo #
# nents\mt\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\hal\ #
# include\" -I "C:\Texas Instruments\ZStack-1.4.2\P #
# rojects\zstack\Samples\SampleApp\CC2430DB\..\..\. #
# .\..\..\Components\hal\target\CC2430EB\" -I #
# "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
# k\Samples\SampleApp\CC2430DB\..\..\..\..\..\Compo #
# nents\osal\mcu\ccsoc\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\osal #
# \include\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
# k\af\" -I "C:\Texas Instruments\ZStack-1.4.2\Proj #
# ects\zstack\Samples\SampleApp\CC2430DB\..\..\..\. #
# .\..\Components\stack\nwk\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
# k\sec\" -I "C:\Texas Instruments\ZStack-1.4.2\Pro #
# jects\zstack\Samples\SampleApp\CC2430DB\..\..\..\ #
# ..\..\Components\stack\sys\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\stac #
# k\zdo\" -I "C:\Texas Instruments\ZStack-1.4.2\Pro #
# jects\zstack\Samples\SampleApp\CC2430DB\..\..\..\ #
# ..\..\Components\zmac\f8w\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\zmac #
# \" -I "C:\Texas Instruments\ZStack-1.4.2\Projects #
# \zstack\Samples\SampleApp\CC2430DB\..\..\..\..\.. #
# \Components\services\saddr\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\serv #
# ices\sdata\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\mac\ #
# include\" -I "C:\Texas Instruments\ZStack-1.4.2\P #
# rojects\zstack\Samples\SampleApp\CC2430DB\..\..\. #
# .\..\..\Components\mac\high_level\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\mac\ #
# low_level\srf03\" -I "C:\Texas #
# Instruments\ZStack-1.4.2\Projects\zstack\Samples\ #
# SampleApp\CC2430DB\..\..\..\..\..\Components\mac\ #
# low_level\srf03\single_chip\" -D CC2430EB -D #
# NWK_AUTO_POLL -D ZTOOL_P1 -D MT_TASK -lC #
# "C:\Texas Instruments\ZStack-1.4.2\Projects\zstac #
# k\Samples\SampleApp\CC2430DB\EndDeviceEB\List\" #
# -lA "C:\Texas Instruments\ZStack-1.4.2\Projects\z #
# stack\Samples\SampleApp\CC2430DB\EndDeviceEB\List #
# \" --diag_suppress Pe001,Pa010 --diag_remark #
# pe550 -o "C:\Texas Instruments\ZStack-1.4.2\Proje #
# cts\zstack\Samples\SampleApp\CC2430DB\EndDeviceEB #
# \Obj\" -e --require_prototypes -z9 #
# --no_code_motion --debug --core=plain #
# --dptr=16,1 --data_model=large #
# --code_model=banked --calling_convention=xdata_re #
# entrant --place_constants=data --nr_virtual_regs #
# 8 "C:\Texas Instruments\ZStack-1.4.2\Projects\zst #
# ack\ZMain\TI2430DB\ZMain.c" #
# List file = C:\Texas Instruments\ZStack-1.4.2\Projects\zstack #
# \Samples\SampleApp\CC2430DB\EndDeviceEB\List\ZMai #
# n.lst #
# Object file = C:\Texas Instruments\ZStack-1.4.2\Projects\zstack #
# \Samples\SampleApp\CC2430DB\EndDeviceEB\Obj\ZMain #
# .r51 #
# #
# #
##############################################################################
C:\Texas Instruments\ZStack-1.4.2\Projects\zstack\ZMain\TI2430DB\ZMain.c
1 /*********************************************************************
2 Filename: ZMain.c
3 Revised: $Date: 2007-04-17 16:38:52 -0700 (Tue, 17 Apr 2007) $
4 Revision: $Revision: 14036 $
5
6 Description: Startup and shutdown code for ZStack
7 Notes: This version targets the Chipcon CC2430DB/CC2430EB
8
9 Copyright (c) 2006 by Texas Instruments, Inc.
10 All Rights Reserved. Permission to use, reproduce, copy, prepare
11 derivative works, modify, distribute, perform, display or sell this
12 software and/or its documentation for any purpose is prohibited
13 without the express written consent of Texas Instruments, Inc.
14 *********************************************************************/
15
16 /*********************************************************************
17 * INCLUDES
18 */
19
20 #include "ZComDef.h"
21 #include "OSAL.h"
22 #include "OSAL_Memory.h"
23 #include "OSAL_Nv.h"
24 #include "OnBoard.h"
\ In segment SFR_AN, at 0x81
\ unsigned char volatile __sfr SP
\ `SP`:
\ 000000 DS 1
\ In segment SFR_AN, at 0x8f
\ unsigned char volatile __sfr P0INP
\ P0INP:
\ 000000 DS 1
\ In segment SFR_AN, at 0xfe
\ unsigned char volatile __sfr P1DIR
\ P1DIR:
\ 000000 DS 1
25 #include "ZMAC.h"
26 #include "MTEL.h"
27
28 #include "nwk_globals.h"
29 #include "ZDApp.h"
30 #include "ssp.h"
31 #include "ZGlobals.h"
32
33 #ifndef NONWK
34 #include "AF.h"
35 #endif
36
37 /* Hal */
38 #include "hal_lcd.h"
39 #include "hal_key.h"
40 #include "hal_led.h"
41 #include "hal_adc.h"
42 #include "hal_drivers.h"
43 #include "hal_assert.h"
44
45 #include "ioCC2430.h"
46
47 /* temperture */
48 #include "Temp.h"
49
50 /*********************************************************************
51 * MACROS
52 */
53
54 /*********************************************************************
55 * CONSTANTS
56 */
57
58 // LED Flash counter, waiting for default 64-bit address
59 #define FLASH_COUNT 20000
60
61 // Maximun number of Vdd samples checked before go on
62 #define MAX_VDD_SAMPLES 3
63 #define ZMAIN_VDD_LIMIT HAL_ADC_VDD_LIMIT_4
64
65 #define TIMER3_INTERRUPT() _Pragma("vector=T3_VECTOR") __near_func __interrupt void Timer3ISR(void)
66
67
68 /*********************************************************************
69 * TYPEDEFS
70 */
71
72 /*********************************************************************
73 * GLOBAL VARIABLES
74 */
75
76 /*********************************************************************
77 * EXTERNAL VARIABLES
78 */
79
80 /*********************************************************************
81 * EXTERNAL FUNCTIONS
82 */
83
84 extern __near_func uint8 GetCodeByte(uint32);
85
86 extern bool HalAdcCheckVdd (uint8 limit);
87
88 /*********************************************************************
89 * LOCAL VARIABLES
90 */
91
92 /*********************************************************************
93 * ZMAIN API JUMP FUNCTIONS
94 *
95 * If the MINIMIZE_ROOT compile flag is defined, ZMAIN API functions
96 * are implemented as "jump functions" located in the ROOT segment,
97 * as expected by the NWK object libraries. This allows the actual
98 * ZMAIN function bodies to locate outside ROOT memory, increasing
99 * space for user defined constants, strings, etc in ROOT memory.
100 *
101 * If the MINIMIZE_ROOT compile flag in not defined, the ZMAIN API
102 * functions are aliased to the similarly-named function bodies and
103 * located in the ROOT segment with no "jump function" overhead.
104 * This is the default behavior which produces smaller overall code
105 * size and maximizes available code space in BANK1...BANK3.
106 *
107 */
108
109 #ifdef MINIMIZE_ROOT
110 // ZMAIN functions are not forced into ROOT segment
111 #define ZSEG
112 #else
113 // ZMAIN functions are forced into ROOT segment
114 #define ZSEG ROOT
115 #endif
116
117 /*********************************************************************
118 * LOCAL FUNCTIONS
119 */
120
121 static ZSEG void zmain_dev_info( void );
122 static ZSEG void zmain_ext_addr( void );
123 static ZSEG void zmain_ram_init( void );
124 static ZSEG void zmain_vdd_check( void );
125
126 #ifdef LCD_SUPPORTED
127 static ZSEG void zmain_lcd_init( void );
128 #endif
129
130 /*********************************************************************
131 * @fn main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -