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

📄 node.lst

📁 zigbee location examples
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   00005D   F0           MOVX    @DPTR,A
    149             DataRequest(PC_SHORT, nbrOfChars + 3, sendBuffer);
   \   00005E                ; Setup parameters for call to function DataRequest
   \   00005E   7402         MOV     A,#0x2
   \   000060   12....       LCALL   ?XSTACK_DISP0_8
   \   000063   AC82         MOV     R4,DPL
   \   000065   AD83         MOV     R5,DPH
   \   000067   7403         MOV     A,#0x3
   \   000069   2A           ADD     A,R2
   \   00006A   F9           MOV     R1,A
   \   00006B   7A34         MOV     R2,#0x34
   \   00006D   7B12         MOV     R3,#0x12
   \   00006F   90....       MOV     DPTR,#(DataRequest & 0xffff)
   \   000072   74..         MOV     A,#((DataRequest >> 16) & 0xff)
   \   000074   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
    150          }
   \   000077   7482         MOV     A,#-0x7e
   \   000079   12....       LCALL   ?DEALLOC_XSTACK8
   \   00007C   02....       LJMP    ?Subroutine0 & 0xFFFF
    151          
    152          
    153          /******************************************************************************
    154          *
    155          * Add _msec_ number of milliseconds to sleep timer.
    156          * Using 33 Hz insted of 32.768 Hz for the RC osc.
    157          ******************************************************************************/

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    158          void AddToSleepTimer(UINT16 msec)
   \                     AddToSleepTimer:
    159          {
   \   000000   74F0         MOV     A,#-0x10
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 16
   \   000005                ; Auto size: 4
   \   000005   74FC         MOV     A,#-0x4
   \   000007   12....       LCALL   ?ALLOC_XSTACK8
    160             UINT32 sleepTimer;
    161          
    162             sleepTimer = ST0;
   \   00000A   E595         MOV     A,0x95
   \   00000C   85..82       MOV     DPL,?XSP + 0
   \   00000F   85..83       MOV     DPH,?XSP + 1
   \   000012   F0           MOVX    @DPTR,A
   \   000013   A3           INC     DPTR
   \   000014   E4           CLR     A
   \   000015   F0           MOVX    @DPTR,A
   \   000016   A3           INC     DPTR
   \   000017   F0           MOVX    @DPTR,A
   \   000018   A3           INC     DPTR
   \   000019   F0           MOVX    @DPTR,A
    163             sleepTimer |= (UINT32)ST1 <<  8;
   \   00001A   8596..       MOV     ?V0 + 0,0x96
   \   00001D   F5..         MOV     ?V0 + 1,A
   \   00001F   F5..         MOV     ?V0 + 2,A
   \   000021   F5..         MOV     ?V0 + 3,A
   \   000023   7408         MOV     A,#0x8
   \   000025   78..         MOV     R0,#?V0 + 0
   \   000027   12....       LCALL   ?L_SHL
   \   00002A   85..82       MOV     DPL,?XSP + 0
   \   00002D   85..83       MOV     DPH,?XSP + 1
   \   000030   78..         MOV     R0,#?V0 + 0
   \   000032   12....       LCALL   ?L_IOR_TO_X
    164             sleepTimer |= (UINT32)ST2 << 16;
   \   000035   8597..       MOV     ?V0 + 0,0x97
   \   000038   75..00       MOV     ?V0 + 1,#0x0
   \   00003B   7410         MOV     A,#0x10
   \   00003D   78..         MOV     R0,#?V0 + 0
   \   00003F   12....       LCALL   ?L_SHL
   \   000042   85..82       MOV     DPL,?XSP + 0
   \   000045   85..83       MOV     DPH,?XSP + 1
   \   000048   78..         MOV     R0,#?V0 + 0
   \   00004A   12....       LCALL   ?L_IOR_TO_X
    165          
    166             sleepTimer += ((UINT32)msec * (UINT32)33); // 32 768 kHz ~ 33 each mSecond
   \   00004D   8A..         MOV     ?V0 + 0,R2
   \   00004F   8B..         MOV     ?V0 + 1,R3
   \   000051   75..00       MOV     ?V0 + 2,#0x0
   \   000054   90....       MOV     DPTR,#__Constant_21
   \   000057   78..         MOV     R0,#?V0 + 4
   \   000059   12....       LCALL   ?L_MOV_X
   \   00005C   78..         MOV     R0,#?V0 + 0
   \   00005E   79..         MOV     R1,#?V0 + 4
   \   000060   12....       LCALL   ?L_MUL
   \   000063   85..82       MOV     DPL,?XSP + 0
   \   000066   85..83       MOV     DPH,?XSP + 1
   \   000069   78..         MOV     R0,#?V0 + 0
   \   00006B   12....       LCALL   ?L_ADD_TO_X
    167          
    168             if(sleepTimer > 0x00FFFFFF){
   \   00006E   85..82       MOV     DPL,?XSP + 0
   \   000071   85..83       MOV     DPH,?XSP + 1
   \   000074   C082         PUSH    DPL
   \   000076   C083         PUSH    DPH
   \   000078   90....       MOV     DPTR,#__Constant_1000000
   \   00007B   78..         MOV     R0,#?V0 + 0
   \   00007D   12....       LCALL   ?L_MOV_X
   \   000080   D083         POP     DPH
   \   000082   D082         POP     DPL
   \   000084   78..         MOV     R0,#?V0 + 0
   \   000086   12....       LCALL   ?UL_GT_X
   \   000089   4013         JC      ??AddToSleepTimer_0
    169               sleepTimer -= 0x00FFFFFF;
   \   00008B   90....       MOV     DPTR,#__Constant_ff000001
   \   00008E   78..         MOV     R0,#?V0 + 0
   \   000090   12....       LCALL   ?L_MOV_X
   \   000093   85..82       MOV     DPL,?XSP + 0
   \   000096   85..83       MOV     DPH,?XSP + 1
   \   000099   78..         MOV     R0,#?V0 + 0
   \   00009B   12....       LCALL   ?L_ADD_TO_X
    170             }
    171          
    172             ST2 = (UINT8)(sleepTimer >> 16);
   \                     ??AddToSleepTimer_0:
   \   00009E   85..82       MOV     DPL,?XSP + 0
   \   0000A1   85..83       MOV     DPH,?XSP + 1
   \   0000A4   78..         MOV     R0,#?V0 + 0
   \   0000A6   12....       LCALL   ?L_MOV_X
   \   0000A9   7410         MOV     A,#0x10
   \   0000AB   78..         MOV     R0,#?V0 + 0
   \   0000AD   12....       LCALL   ?UL_SHR
   \   0000B0   E5..         MOV     A,?V0 + 0
   \   0000B2   F597         MOV     0x97,A
    173             ST1 = (UINT8)(sleepTimer >> 8);
   \   0000B4   85..82       MOV     DPL,?XSP + 0
   \   0000B7   85..83       MOV     DPH,?XSP + 1
   \   0000BA   78..         MOV     R0,#?V0 + 0
   \   0000BC   12....       LCALL   ?L_MOV_X
   \   0000BF   E5..         MOV     A,?V0 + 1
   \   0000C1   F596         MOV     0x96,A
    174             ST0 = (UINT8) sleepTimer;
   \   0000C3   E5..         MOV     A,?V0 + 0
   \   0000C5   F595         MOV     0x95,A
    175          }
   \   0000C7   7404         MOV     A,#0x4
   \   0000C9   12....       LCALL   ?DEALLOC_XSTACK8
   \   0000CC   7F08         MOV     R7,#0x8
   \   0000CE   02....       LJMP    ?BANKED_LEAVE_XDATA

   \                                 In segment INTVEC, offset 0x2b, root
   \                     `ST_IRQ??INTVEC 43`:
   \   00002B   02....       LJMP       (ST_IRQ)

   \                                 In segment XDATA_I, align 1, keep-with-next
   \                     __Constant_21:
   \   000000                DS 4
   \   000004                REQUIRE `?<Initializer for __Constant_21>`
   \   000004                REQUIRE __INIT_XDATA_I

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for __Constant_21>`:
   \   000000   21000000     DD 33

   \                                 In segment XDATA_I, align 1, keep-with-next
   \                     __Constant_1000000:
   \   000000                DS 4
   \   000004                REQUIRE `?<Initializer for __Constant_1000000>`
   \   000004                REQUIRE __INIT_XDATA_I

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for __Constant_1000000>`:
   \   000000   00000001     DD 16777216

   \                                 In segment XDATA_I, align 1, keep-with-next
   \                     __Constant_ff000001:
   \   000000                DS 4
   \   000004                REQUIRE `?<Initializer for __Constant_ff000001>`
   \   000004                REQUIRE __INIT_XDATA_I

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for __Constant_ff000001>`:
   \   000000   010000FF     DD 4278190081
    176          
    177          #ifdef CC2430EB
    178          /******************************************************************************
    179          *
    180          * Print X and Y on LCD display, can only be used on SmartRF04EB
    181          ******************************************************************************/
    182          void PrintXY(void){
    183             char s[16];
    184             sprintf(s, "X: %d.%d", UINT16_2_INT(x), FRAC_2_TO_DEC(x));
    185             lcdUpdateLine(LINE1, s);
    186             sprintf(s, "Y: %d.%d", UINT16_2_INT(y), FRAC_2_TO_DEC(y));
    187             lcdUpdateLine(LINE2, s);
    188          }
    189          #endif

   Maximum stack usage in bytes:

     Function              ISTACK PSTACK XSTACK
     --------              ------ ------ ------
     AddToSleepTimer           2      0     20
     NodeDataIndication        0      0     12
       -> SetupRefNode         0      0     20
       -> SetupBlindNode       0      0     20
       -> memcpy               0      0     24
     ST_IRQ                   11      0      0
       -> ST_IRQ_RefNode      22      0      0
       -> ST_IRQ_BlindNode    22      0      0
     SendPosition              3      0      6
       -> DataRequest          4      0     12
     SendText                  1      0    142
       -> vsprintf             0      0    284
       -> DataRequest          0      0    280


   Segment part sizes:

     Function/Label                 Bytes
     --------------                 -----
     ST0                               1
     ST1                               1
     ST2                               1
     parametersReceived                1
     blinkLed                          1
     ledBlinkCounter                   1
     nodeType                          1
     x                                 2
     y                                 2
     z                                 1
     buffer                          145
     msgReceived                       1
     NodeDataIndication              121
     ?Subroutine0                      5
     ST_IRQ                           78
     SendPosition                    130
     SendText                        127
     AddToSleepTimer                 209
     ST_IRQ??INTVEC 43                 3
     __Constant_21                     4
     ?<Initializer for __Constant_21>
                                       4
     __Constant_1000000                4
     ?<Initializer for __Constant_1000000>
                                       4
     __Constant_ff000001               4
     ?<Initializer for __Constant_ff000001>
                                       4

 
 592 bytes in segment BANKED_CODE
   3 bytes in segment INTVEC
  78 bytes in segment NEAR_CODE
   3 bytes in segment SFR_AN
  12 bytes in segment XDATA_I
  12 bytes in segment XDATA_ID
 155 bytes in segment XDATA_Z
 
 670 bytes of CODE  memory (+ 15 bytes shared)
   0 bytes of DATA  memory (+  3 bytes shared)
 155 bytes of XDATA memory (+ 12 bytes shared)

Errors: none
Warnings: none

⌨️ 快捷键说明

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