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

📄 mac-common.lst

📁 zigbee location examples
💻 LST
📖 第 1 页 / 共 2 页
字号:
##############################################################################
#                                                                            #
# IAR 8051 C/C++ Compiler V7.20H/W32                   16/Jan/2007  15:30:50 #
# 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:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\lib\mac\CC2430\mac-common.c                    #
#    Command line       =  -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\SRC\LIB\" -I         #
#                          "C:\Program Files\IAR Systems\Embedded Workbench  #
#                          4.05 Evaluation version\8051\INC\CLIB\" -I        #
#                          E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\..\..\..\include\ -I          #
#                          E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\..\..\..\include\mac\cc2430\  #
#                          -I E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_E #
#                          ngine\Test\mac\mac_loc\..\..\..\include\hal\cc243 #
#                          0\ -I E:\公司产品资料\Zigbee\cc2431\cc2431定位\LO #
#                          C_Engine\Test\mac\mac_loc\..\..\..\apps\ -D       #
#                          CC2430EB -D USE_LED -lCN                          #
#                          E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\CC2430EB\List\ -lA            #
#                          E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\CC2430EB\List\ -o             #
#                          E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\CC2430EB\Obj\ -e -s9 --debug  #
#                          --core=plain --dptr=16,1 --data_model=large       #
#                          --code_model=banked --calling_convention=xdata_re #
#                          entrant --place_constants=data --nr_virtual_regs  #
#                          8 E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_En #
#                          gine\lib\mac\CC2430\mac-common.c                  #
#    List file          =  E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\CC2430EB\List\mac-common.lst  #
#    Object file        =  E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engi #
#                          ne\Test\mac\mac_loc\CC2430EB\Obj\mac-common.r51   #
#                                                                            #
#                                                                            #
##############################################################################

E:\公司产品资料\Zigbee\cc2431\cc2431定位\LOC_Engine\lib\mac\CC2430\mac-common.c
      1          /*******************************************************************************************************
      2           *                                                                                                     *
      3           *        **********                                                                                   *
      4           *       ************                                                                                  *
      5           *      ***        ***                                                                                 *
      6           *      ***   +++   ***                                                                                *
      7           *      ***   + +   ***                                                                                *
      8           *      ***   +                         CHIPCON CC2430 INTEGRATED 802.15.4 MAC AND PHY                 *
      9           *      ***   + +   ***                                   MAC-COMMON.C                                 *
     10           *      ***   +++   ***                                                                                *
     11           *      ***        ***                                                                                 *
     12           *       ************                                                                                  *
     13           *        **********                                                                                   *
     14           *                                                                                                     *
     15           *******************************************************************************************************
     16           * CONFIDENTIAL                                                                                        *
     17           * The use of this file is restricted by the signed MAC software license agreement.                    *
     18           *                                                                                                     *
     19           * Copyright Chipcon AS, 2005                                                                          *
     20           *******************************************************************************************************/
     21          #include "mac_headers.h"

   \                                 In segment SFR_AN, at 0xd6
   \   unsigned char volatile __sfr DMAARM
   \                     DMAARM:
   \   000000                DS 1
     22          #include <string.h>
     23          

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     24          BOOL    currentAesFinished;
   \                     currentAesFinished:
   \   000000                DS 1

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     25          BYTE    currentAesTransferCount;
   \                     currentAesTransferCount:
   \   000000                DS 1

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     26          BYTE    currentTimer2InterruptMask;
   \                     currentTimer2InterruptMask:
   \   000000                DS 1

   \                                 In segment XDATA_Z, align 1, keep-with-next
   \   000000                REQUIRE __INIT_XDATA_Z
     27          FRAME   currentTxFrame;
   \                     currentTxFrame:
   \   000000                DS 143
     28          
     29          
     30          //-------------------------------------------------------------------------------------------------------
     31          //
     32          //-------------------------------------------------------------------------------------------------------

   \                                 In segment NEAR_CODE, align 1, keep-with-next
     33          ROOT void InitializeCommonStorage (void)
   \                     InitializeCommonStorage:
     34          {
   \   000000   C082         PUSH    DPL
   \   000002   C083         PUSH    DPH
   \   000004                ; Saved register size: 2
   \   000004                ; Auto size: 0
     35              currentAesFinished = FALSE;
   \   000004   E4           CLR     A
   \   000005   90....       MOV     DPTR,#currentAesFinished
   \   000008   F0           MOVX    @DPTR,A
     36          }
   \   000009   D083         POP     DPH
   \   00000B   D082         POP     DPL
   \   00000D   22           RET
     37          
     38          //-------------------------------------------------------------------------------------------------------
     39          //
     40          //-------------------------------------------------------------------------------------------------------

   \                                 In segment NEAR_CODE, align 1, keep-with-next
     41          ROOT void DmaMemcpy(void   *destination, void   *source, BYTE noOfBytes) {
   \                     DmaMemcpy:
   \   000000   74F5         MOV     A,#-0xb
   \   000002   12....       LCALL   ?FUNC_ENTER_XDATA
   \   000005                ; Saved register size: 11
   \   000005                ; Auto size: 2
   \   000005   74FE         MOV     A,#-0x2
   \   000007   12....       LCALL   ?ALLOC_XSTACK8
   \   00000A   8A..         MOV     ?V0 + 0,R2
   \   00000C   8B..         MOV     ?V0 + 1,R3
   \   00000E   EC           MOV     A,R4
   \   00000F   FE           MOV     R6,A
   \   000010   ED           MOV     A,R5
   \   000011   FF           MOV     R7,A
   \   000012   89..         MOV     ?V0 + 2,R1
     42              DMA_CHANNEL_CONFIGURATION   *dmaChannelConfiguration;
     43          
     44              if (noOfBytes < USE_DMA_FOR_MEMCPY_THRESHOLD) {
   \   000014   E9           MOV     A,R1
   \   000015   C3           CLR     C
   \   000016   9410         SUBB    A,#0x10
   \   000018   5018         JNC     ??DmaMemcpy_0
     45                  memcpy(destination,
     46                         source,
     47                         noOfBytes);
   \   00001A                ; Setup parameters for call to function memcpy
   \   00001A   75..00       MOV     ?V0 + 3,#0x0
   \   00001D   78..         MOV     R0,#?V0 + 2
   \   00001F   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000022   90....       MOV     DPTR,#(memcpy & 0xffff)
   \   000025   74..         MOV     A,#((memcpy >> 16) & 0xff)
   \   000027   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   00002A   7402         MOV     A,#0x2
   \   00002C   12....       LCALL   ?DEALLOC_XSTACK8
   \   00002F   02....       LJMP    ??DmaMemcpy_1
     48              }
     49              else
     50              {
     51                  DISABLE_GLOBAL_INT();
   \                     ??DmaMemcpy_0:
   \   000032   C2AF         CLR     0xa8.7
     52                  while (DMAARM & DMA_CHANNEL_NO_3);
   \                     ??DmaMemcpy_2:
   \   000034   7403         MOV     A,#0x3
   \   000036   55D6         ANL     A,0xd6
   \   000038   70FA         JNZ     ??DmaMemcpy_2
     53          
     54                  FetchDmaChannelConfiguration (DMA_CHANNEL_NO_3,
     55                                                &dmaChannelConfiguration);
   \   00003A                ; Setup parameters for call to function FetchDmaChannelConfiguration
   \   00003A   85..82       MOV     DPL,?XSP + 0
   \   00003D   85..83       MOV     DPH,?XSP + 1
   \   000040   AA82         MOV     R2,DPL
   \   000042   AB83         MOV     R3,DPH
   \   000044   7903         MOV     R1,#0x3
   \   000046   12....       LCALL   FetchDmaChannelConfiguration
     56                  dmaChannelConfiguration->srcMsb = HIBYTE(source);
   \   000049   E0           MOVX    A,@DPTR
   \   00004A   F8           MOV     R0,A
   \   00004B   A3           INC     DPTR
   \   00004C   E0           MOVX    A,@DPTR
   \   00004D   F583         MOV     DPH,A
   \   00004F   8882         MOV     DPL,R0
   \   000051   EF           MOV     A,R7
   \   000052   F0           MOVX    @DPTR,A
     57                  dmaChannelConfiguration->srcLsb = LOBYTE(source);
   \   000053   85..82       MOV     DPL,?XSP + 0
   \   000056   85..83       MOV     DPH,?XSP + 1
   \   000059   E0           MOVX    A,@DPTR
   \   00005A   F8           MOV     R0,A
   \   00005B   A3           INC     DPTR
   \   00005C   E0           MOVX    A,@DPTR
   \   00005D   F583         MOV     DPH,A
   \   00005F   8882         MOV     DPL,R0
   \   000061   A3           INC     DPTR
   \   000062   EE           MOV     A,R6
   \   000063   F0           MOVX    @DPTR,A
     58                  dmaChannelConfiguration->destMsb = HIBYTE(destination);
   \   000064   85..82       MOV     DPL,?XSP + 0
   \   000067   85..83       MOV     DPH,?XSP + 1
   \   00006A   E0           MOVX    A,@DPTR
   \   00006B   F8           MOV     R0,A
   \   00006C   A3           INC     DPTR
   \   00006D   E0           MOVX    A,@DPTR
   \   00006E   F583         MOV     DPH,A
   \   000070   8882         MOV     DPL,R0
   \   000072   A3           INC     DPTR
   \   000073   A3           INC     DPTR
   \   000074   E5..         MOV     A,?V0 + 1
   \   000076   F0           MOVX    @DPTR,A
     59                  dmaChannelConfiguration->destLsb = LOBYTE(destination);
   \   000077   85..82       MOV     DPL,?XSP + 0
   \   00007A   85..83       MOV     DPH,?XSP + 1
   \   00007D   E0           MOVX    A,@DPTR
   \   00007E   F8           MOV     R0,A
   \   00007F   A3           INC     DPTR
   \   000080   E0           MOVX    A,@DPTR
   \   000081   F583         MOV     DPH,A
   \   000083   8882         MOV     DPL,R0
   \   000085   A3           INC     DPTR
   \   000086   A3           INC     DPTR
   \   000087   A3           INC     DPTR
   \   000088   E5..         MOV     A,?V0 + 0
   \   00008A   F0           MOVX    @DPTR,A
     60                  dmaChannelConfiguration->lenMsb = USE_LEN;
   \   00008B   85..82       MOV     DPL,?XSP + 0
   \   00008E   85..83       MOV     DPH,?XSP + 1
   \   000091   E0           MOVX    A,@DPTR
   \   000092   F8           MOV     R0,A
   \   000093   A3           INC     DPTR
   \   000094   E0           MOVX    A,@DPTR
   \   000095   F583         MOV     DPH,A
   \   000097   8882         MOV     DPL,R0
   \   000099   A3           INC     DPTR
   \   00009A   A3           INC     DPTR
   \   00009B   A3           INC     DPTR
   \   00009C   A3           INC     DPTR
   \   00009D   E4           CLR     A
   \   00009E   F0           MOVX    @DPTR,A
     61                  dmaChannelConfiguration->lenLsb = noOfBytes;
   \   00009F   85..82       MOV     DPL,?XSP + 0
   \   0000A2   85..83       MOV     DPH,?XSP + 1
   \   0000A5   E0           MOVX    A,@DPTR
   \   0000A6   F8           MOV     R0,A
   \   0000A7   A3           INC     DPTR
   \   0000A8   E0           MOVX    A,@DPTR
   \   0000A9   F583         MOV     DPH,A
   \   0000AB   8882         MOV     DPL,R0
   \   0000AD   A3           INC     DPTR
   \   0000AE   A3           INC     DPTR
   \   0000AF   A3           INC     DPTR
   \   0000B0   A3           INC     DPTR
   \   0000B1   A3           INC     DPTR
   \   0000B2   E5..         MOV     A,?V0 + 2
   \   0000B4   F0           MOVX    @DPTR,A
     62                  dmaChannelConfiguration->wsizeTmodeTrigger = BYTE_TRANSFER + TRANSFER_MODE_BLOCK;
   \   0000B5   85..82       MOV     DPL,?XSP + 0
   \   0000B8   85..83       MOV     DPH,?XSP + 1

⌨️ 快捷键说明

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