📄 hal_timer.lst
字号:
##############################################################################
# #
# IAR 8051 C/C++ Compiler V7.20H/W32 08/Mar/2009 09:13:32 #
# 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\hal\target\CC2430DB\hal_timer.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\hal\target\CC2430DB\hal_timer.c" #
# List file = C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects\ #
# zstack\Samples\GenericApp\CC2430DB\CoordinatorDB\ #
# List\hal_timer.lst #
# Object file = C:\Texas Instruments\ZStack-1.4.2-1.1.0\Projects\ #
# zstack\Samples\GenericApp\CC2430DB\CoordinatorDB\ #
# Obj\hal_timer.r51 #
# #
# #
##############################################################################
C:\Texas Instruments\ZStack-1.4.2-1.1.0\Components\hal\target\CC2430DB\hal_timer.c
1 /**************************************************************************************************
2 Filename: hal_timer.c
3 Revised: $Date: 2006-11-01 15:05:21 -0700 (Wed, 01 Nov 2006) $
4 Revision: $Revision: 12475 $
5
6 Description:
7
8 This file contains the interface to the Timer Service.
9 This also contains the Task functions.
10
11 Copyright (c) 2006 by Texas Instruments, Inc.
12 All Rights Reserved. Permission to use, reproduce, copy, prepare
13 derivative works, modify, distribute, perform, display or sell this
14 software and/or its documentation for any purpose is prohibited
15 without the express written consent of Texas Instruments, Inc.
16 **************************************************************************************************/
17 /*********************************************************************
18 NOTE: The following mapping is done between the logical timer
19 names defined in HAL_TIMER.H and the physical HW timer.
20
21 HAL_TIMER_0 --> HW Timer 3 (8-bits)
22 HAL_TIMER_2 --> HW Timer 4 (8-bits)
23 HAL_TIMER_3 --> HW Timer 1 (16-bits)
24
25 NOTE: The timer code assumes only one channel, CHANNEL 0, is used
26 for each timer. There is currently no support for other
27 channels.
28
29 NOTE: Only Output Compare Mode is supported. There is no provision
30 to support Input Capture Mode.
31
32 NOTE: There is no support to map the output of the timers to a
33 physical I/O pin
34
35 *********************************************************************/
36 /*********************************************************************
37 * INCLUDES
38 */
39 #include "hal_mcu.h"
\ In segment SFR_AN, at 0xcb
\ unsigned char volatile __sfr T3CTL
\ T3CTL:
\ 000000 DS 1
\ In segment SFR_AN, at 0xcc
\ unsigned char volatile __sfr T3CCTL0
\ T3CCTL0:
\ 000000 DS 1
\ In segment SFR_AN, at 0xce
\ unsigned char volatile __sfr T3CCTL1
\ T3CCTL1:
\ 000000 DS 1
\ In segment SFR_AN, at 0xe4
\ unsigned char volatile __sfr T1CTL
\ T1CTL:
\ 000000 DS 1
\ In segment SFR_AN, at 0xe5
\ unsigned char volatile __sfr T1CCTL0
\ T1CCTL0:
\ 000000 DS 1
\ In segment SFR_AN, at 0xe6
\ unsigned char volatile __sfr T1CCTL1
\ T1CCTL1:
\ 000000 DS 1
\ In segment SFR_AN, at 0xe7
\ unsigned char volatile __sfr T1CCTL2
\ T1CCTL2:
\ 000000 DS 1
\ In segment SFR_AN, at 0xeb
\ unsigned char volatile __sfr T4CTL
\ T4CTL:
\ 000000 DS 1
\ In segment SFR_AN, at 0xec
\ unsigned char volatile __sfr T4CCTL0
\ T4CCTL0:
\ 000000 DS 1
\ In segment SFR_AN, at 0xee
\ unsigned char volatile __sfr T4CCTL1
\ T4CCTL1:
\ 000000 DS 1
40 #include "hal_defs.h"
41 #include "hal_types.h"
42 #include "hal_timer.h"
43
44 /*********************************************************************
45 * MACROS
46 */
47
48 /*********************************************************************
49 * CONSTANTS
50 */
51 #define HW_TIMER_1 0x00
52 #define HW_TIMER_3 0x01
53 #define HW_TIMER_4 0x02
54 #define HW_TIMER_INVALID 0x03
55 #define HW_TIMER_MAX 0x03
56
57 #define IEN1_T1IE 0x02 /* Timer1 Interrupt Enable */
58 #define IEN1_T3IE 0x08 /* Timer3 Interrupt Enable */
59 #define IEN1_T4IE 0x10 /* Timer4 Interrupt Enable */
60
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -