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

📄 osal_timers.lst

📁 用IAR开发的ZIGBEE网络路由例子
💻 LST
📖 第 1 页 / 共 5 页
字号:
##############################################################################
#                                                                            #
# IAR 8051 C/C++ Compiler V7.20H/W32                   06/Nov/2008  11:13:12 #
# 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\osal\common\OSAL_Timers.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\osal\common\OSAL_Timers.c #
#    List file          =  E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
#                          2430DB\CoordinatorDB\List\OSAL_Timers.lst         #
#    Object file        =  E:\解决\路由\Projects\zstack\Samples\SampleApp\CC #
#                          2430DB\CoordinatorDB\Obj\OSAL_Timers.r51          #
#                                                                            #
#                                                                            #
##############################################################################

E:\解决\路由\Components\osal\common\OSAL_Timers.c
      1          /*********************************************************************
      2              Filename:       OSAL_Timers.c
      3              Revised:        $Date: 2006-10-27 16:25:55 -0700 (Fri, 27 Oct 2006) $
      4              Revision:       $Revision: 12442 $
      5          
      6              Description:    OSAL Timer definition and manipulation functions.
      7          
      8              Copyright (c) 2006 by Texas Instruments, Inc.
      9              All Rights Reserved.  Permission to use, reproduce, copy, prepare
     10              derivative works, modify, distribute, perform, display or sell this
     11              software and/or its documentation for any purpose is prohibited
     12              without the express written consent of Texas Instruments, Inc.
     13          *********************************************************************/
     14          
     15          /*********************************************************************
     16           * INCLUDES
     17           */
     18          
     19          #include "ZComDef.h"
     20          #include "OnBoard.h"
     21          #include "OSAL.h"
     22          #include "OSAL_Timers.h"
     23          
     24          #include "hal_timer.h"
     25          #include "hal_led.h"
     26          
     27          /*********************************************************************
     28           * MACROS
     29           */
     30          
     31          /*********************************************************************
     32           * CONSTANTS
     33           */
     34          
     35          /*********************************************************************
     36           * TYPEDEFS
     37           */
     38          
     39          typedef struct
     40          {
     41            void *next;
     42            UINT16 timeout;
     43            UINT16 event_flag;
     44            byte task_id;
     45          } osalTimerRec_t;
     46          
     47          /*********************************************************************
     48           * GLOBAL VARIABLES
     49           */
     50          

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     51          osalTimerRec_t *timerHead;
   \                     timerHead:
   \   000000                DS 2

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     52          uint32 tmr_count;          // Amount of time per tick - in micro-sec
   \                     tmr_count:
   \   000000                DS 4

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     53          uint16 tmr_decr_time;      // Decr_Time for system timer
   \                     tmr_decr_time:
   \   000000                DS 2

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     54          byte timerActive;          // Flag if hw timer active
   \                     timerActive:
   \   000000                DS 1
     55          
     56          /*********************************************************************
     57           * EXTERNAL VARIABLES
     58           */
     59          
     60          /*********************************************************************
     61           * EXTERNAL FUNCTIONS
     62           */
     63          
     64          /*********************************************************************
     65           * LOCAL VARIABLES
     66           */
     67          // Milliseconds since last reboot

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     68          static uint32 osal_systemClock;
   \                     ??osal_systemClock:
   \   000000                DS 4
     69          
     70          /*********************************************************************
     71           * LOCAL FUNCTION PROTOTYPES
     72           */
     73          osalTimerRec_t  *osalAddTimer( byte task_id, UINT16 event_flag, UINT16 timeout );
     74          osalTimerRec_t *osalFindTimer( byte task_id, uint16 event_flag );
     75          void osalDeleteTimer( osalTimerRec_t *rmTimer );
     76          static void osalTimerUpdate( uint16 time );
     77          
     78          void osal_timer_activate( byte turn_on );
     79          void osal_timer_hw_setup( byte turn_on );
     80          void osal_set_timer_interrupt( byte turn_on );
     81          void osal_retune_timers( void );
     82          
     83          /*********************************************************************
     84           * FUNCTIONS
     85           *********************************************************************/
     86          
     87          /*********************************************************************
     88           * @fn      osalTimerInit
     89           *
     90           * @brief   Initialization for the OSAL Timer System.
     91           *
     92           * @param   none
     93           *
     94           * @return
     95           */

   \                                 In segment BANKED_CODE, align 1, keep-with-next
     96          void osalTimerInit( void )
   \                     osalTimerInit:
     97          {
   \   000000   74F4         MOV     A,#-0xc
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 12
   \   000005                ; Auto size: 0
     98            // Initialize the rollover modulo
     99            tmr_count = TICK_TIME;
   \   000005   90....       MOV     DPTR,#__Constant_3e8
   \   000008   78..         MOV     R0,#?V0 + 0
   \   00000A   12....       LCALL   ?L_MOV_X
   \   00000D   90....       MOV     DPTR,#tmr_count
   \   000010   78..         MOV     R0,#?V0 + 0
   \   000012   12....       LCALL   ?L_MOV_TO_X
    100            tmr_decr_time = TIMER_DECR_TIME;
   \   000015   90....       MOV     DPTR,#tmr_decr_time
   \   000018   7401         MOV     A,#0x1
   \   00001A   F0           MOVX    @DPTR,A
   \   00001B   A3           INC     DPTR
   \   00001C   E4           CLR     A
   \   00001D   F0           MOVX    @DPTR,A
    101          
    102            // Initialize the system timer
    103            osal_timer_activate( false );
   \   00001E                ; Setup parameters for call to function osal_timer_activate
   \   00001E   F9           MOV     R1,A
   \   00001F   90....       MOV     DPTR,#(osal_timer_activate & 0xffff)
   \   000022   74..         MOV     A,#((osal_timer_activate >> 16) & 0xff)
   \   000024   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    104            timerActive = false;
   \   000027   E4           CLR     A
   \   000028   90....       MOV     DPTR,#timerActive
   \   00002B   F0           MOVX    @DPTR,A
    105          
    106            osal_systemClock = 0;

⌨️ 快捷键说明

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