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

📄 zdprofile.lst

📁 用IAR开发的ZIGBEE网络路由例子
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 15
   \   000005                ; Auto size: 4
   \   000005   74FC         MOV     A,#-0x4
   \   000007   12....       LCALL   ?ALLOC_XSTACK8
   \   00000A   8A..         MOV     ?V0 + 0,R2
   \   00000C   8B..         MOV     ?V0 + 1,R3
   \   00000E   7413         MOV     A,#0x13
   \   000010   12....       LCALL   ?XSTACK_DISP0_8
   \   000013   12....       LCALL   ?Subroutine33 & 0xFFFF
    120          #if ( AF_V1_SUPPORT )
    121          
    122            byte proVer = NLME_GetProtocolVersion();
    123          #endif
    124            afAddrType_t afAddr;
    125          
    126            ZADDR_TO_AFADDR( addr, afAddr );
   \                     ??CrossCallReturnLabel_74:
   \   000016   7403         MOV     A,#0x3
   \   000018   12....       LCALL   ?XSTACK_DISP0_8
   \   00001B   E4           CLR     A
   \   00001C   F0           MOVX    @DPTR,A
   \   00001D   8C82         MOV     DPL,R4
   \   00001F   8D83         MOV     DPH,R5
   \   000021   A3           INC     DPTR
   \   000022   A3           INC     DPTR
   \   000023   A3           INC     DPTR
   \   000024   A3           INC     DPTR
   \   000025   A3           INC     DPTR
   \   000026   A3           INC     DPTR
   \   000027   A3           INC     DPTR
   \   000028   A3           INC     DPTR
   \   000029   E0           MOVX    A,@DPTR
   \   00002A   C0E0         PUSH    A
   \   00002C   7402         MOV     A,#0x2
   \   00002E   12....       LCALL   ?XSTACK_DISP0_8
   \   000031   D0E0         POP     A
   \   000033   F0           MOVX    @DPTR,A
   \   000034   8C82         MOV     DPL,R4
   \   000036   8D83         MOV     DPH,R5
   \   000038   E0           MOVX    A,@DPTR
   \   000039   FA           MOV     R2,A
   \   00003A   A3           INC     DPTR
   \   00003B   E0           MOVX    A,@DPTR
   \   00003C   FB           MOV     R3,A
   \   00003D   85..82       MOV     DPL,?XSP + 0
   \   000040   85..83       MOV     DPH,?XSP + 1
   \   000043   EA           MOV     A,R2
   \   000044   F0           MOVX    @DPTR,A
   \   000045   A3           INC     DPTR
   \   000046   EB           MOV     A,R3
   \   000047   F0           MOVX    @DPTR,A
    127          
    128          #if ( AF_V1_SUPPORT )
    129            if ( proVer == ZB_PROT_V1_0 )
    130            {
    131              return ( afFillAndSendMessage( &afAddr, ZDP_AF_ENDPOINT, clusterID,
    132                         1, FRAMETYPE_MSG, transSeq,
    133                         NULL, NULL, NULL, NULL, len, ZDP_TmpBuf,
    134                         ZDP_TxOptions, FALSE, AF_DEFAULT_RADIUS ) );
    135            }
    136            else
    137          #endif
    138            {
    139              *(ZDP_TmpBuf-1) = *transSeq;
   \   000048   90....       MOV     DPTR,#??ZDP_TmpBuf
   \   00004B   E0           MOVX    A,@DPTR
   \   00004C   24FF         ADD     A,#-0x1
   \   00004E   F5..         MOV     ?V0 + 4,A
   \   000050   A3           INC     DPTR
   \   000051   E0           MOVX    A,@DPTR
   \   000052   34FF         ADDC    A,#-0x1
   \   000054   F5..         MOV     ?V0 + 5,A
   \   000056   85..82       MOV     DPL,?V0 + 0
   \   000059   85..83       MOV     DPH,?V0 + 1
   \   00005C   E0           MOVX    A,@DPTR
   \   00005D   85..82       MOV     DPL,?V0 + 4
   \   000060   85..83       MOV     DPH,?V0 + 5
   \   000063   F0           MOVX    @DPTR,A
    140          
    141              return AF_DataRequest( &afAddr, &ZDApp_epDesc, clusterID,
    142                                     (uint16)(len+1), (uint8*)(ZDP_TmpBuf-1),
    143                                     transSeq, ZDP_TxOptions,  AF_DEFAULT_RADIUS );
   \   000064                ; Setup parameters for call to function AF_DataRequest
   \   000064   75..0A       MOV     ?V0 + 6,#0xa
   \   000067   78..         MOV     R0,#?V0 + 6
   \   000069   12....       LCALL   ?PUSH_XSTACK_I_ONE
   \   00006C   78..         MOV     R0,#?V0 + 0
   \   00006E   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000071   78..         MOV     R0,#?V0 + 4
   \   000073   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000076   89..         MOV     ?V0 + 0,R1
   \   000078   7401         MOV     A,#0x1
   \   00007A   25..         ADD     A,?V0 + 0
   \   00007C   F5..         MOV     ?V0 + 0,A
   \   00007E   E4           CLR     A
   \   00007F   3400         ADDC    A,#0x0
   \   000081   F5..         MOV     ?V0 + 1,A
   \   000083   78..         MOV     R0,#?V0 + 0
   \   000085   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000088   78..         MOV     R0,#?V0 + 2
   \   00008A   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   00008D   90....       MOV     DPTR,#??ZDP_TxOptions
   \   000090   E0           MOVX    A,@DPTR
   \   000091   F9           MOV     R1,A
   \   000092   7C..         MOV     R4,#(ZDApp_epDesc & 0xff)
   \   000094   7D..         MOV     R5,#((ZDApp_epDesc >> 8) & 0xff)
   \   000096   7409         MOV     A,#0x9
   \   000098   12....       LCALL   ?XSTACK_DISP0_8
   \   00009B   AA82         MOV     R2,DPL
   \   00009D   AB83         MOV     R3,DPH
   \   00009F   90....       MOV     DPTR,#(AF_DataRequest & 0xffff)
   \   0000A2   74..         MOV     A,#((AF_DataRequest >> 16) & 0xff)
   \   0000A4   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   0000A7   7409         MOV     A,#0x9
   \   0000A9   12....       LCALL   ?DEALLOC_XSTACK8
   \   0000AC   7404         MOV     A,#0x4
   \   0000AE                REQUIRE ?Subroutine45
   \   0000AE                ; // Fall through to label ?Subroutine45
    144            }
    145          }

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine45:
   \   000000   12....       LCALL   ?DEALLOC_XSTACK8
   \   000003   7F07         MOV     R7,#0x7
   \   000005   02....       LJMP    ?BANKED_LEAVE_XDATA

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine33:
   \   000000   E0           MOVX    A,@DPTR
   \   000001   F5..         MOV     ?V0 + 2,A
   \   000003   A3           INC     DPTR
   \   000004   E0           MOVX    A,@DPTR
   \   000005   F5..         MOV     ?V0 + 3,A
   \   000007   22           RET
    146          
    147          /*********************************************************************
    148           * @fn          ZDP_SendData
    149           *
    150           * @brief       This builds and send a request message that has
    151           *              NWKAddrOfInterest as its only parameter.
    152           *
    153           * @param       dstAddr - destination address
    154           * @param       cmd - clusterID
    155           * @param       dataLen - number of bytes of data
    156           * @param       data - pointer to the data
    157           * @param       SecurityEnable - Security Options
    158           *
    159           * @return      afStatus_t
    160           */

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    161          afStatus_t ZDP_SendData( byte *TransSeq, zAddrType_t *dstAddr, uint16 cmd,
   \                     ZDP_SendData:
    162                                  byte len, byte *buf, byte SecurityEnable )
    163          {
   \   000000   74F2         MOV     A,#-0xe
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 14
   \   000005                ; Auto size: 0
   \   000005   89..         MOV     ?V0 + 2,R1
   \   000007   740E         MOV     A,#0xe
   \   000009   12....       LCALL   ?XSTACK_DISP0_8
   \   00000C   12....       LCALL   ?Subroutine14 & 0xFFFF
   \                     ??CrossCallReturnLabel_37:
   \   00000F   7410         MOV     A,#0x10
   \   000011   12....       LCALL   ?XSTACK_DISP0_8
   \   000014   12....       LCALL   ?Subroutine20 & 0xFFFF
   \                     ??CrossCallReturnLabel_45:
   \   000017   7412         MOV     A,#0x12
   \   000019   12....       LCALL   ?XSTACK_DISP0_8
   \   00001C   E0           MOVX    A,@DPTR
   \   00001D   F5..         MOV     ?V0 + 3,A
    164            byte *pBuf = ZDP_TmpBuf;
   \   00001F   12....       LCALL   ?Subroutine11 & 0xFFFF
    165            byte cnt = len;
   \                     ??CrossCallReturnLabel_26:
   \   000022   85....       MOV     ?V0 + 4,?V0 + 2
   \   000025   8010         SJMP    ??ZDP_SendData_0
    166          
    167            while ( cnt-- )
    168            {
    169              *pBuf++ = *buf++;
   \                     ??ZDP_SendData_1:
   \   000027   12....       LCALL   ?Subroutine17 & 0xFFFF
   \                     ??CrossCallReturnLabel_102:
   \   00002A   AE82         MOV     R6,DPL
   \   00002C   AF83         MOV     R7,DPH
   \   00002E   8882         MOV     DPL,R0
   \   000030   8983         MOV     DPH,R1
   \   000032   A3           INC     DPTR
   \   000033   A882         MOV     R0,DPL
   \   000035   A983         MOV     R1,DPH
    170            }
   \                     ??ZDP_SendData_0:
   \   000037   85....       MOV     ?V0 + 5,?V0 + 4
   \   00003A   74FF         MOV     A,#-0x1
   \   00003C   25..         ADD     A,?V0 + 5
   \   00003E   F5..         MOV     ?V0 + 4,A
   \   000040   E5..         MOV     A,?V0 + 5
   \   000042   70E3         JNZ     ??ZDP_SendData_1
    171          
    172            FillAndSendTxOptions( TransSeq, dstAddr, cmd, len,
    173                         (AF_DEFAULT_RADIUS | ((SecurityEnable) ? AF_EN_SECURITY : 0)) );
   \   000044   E5..         MOV     A,?V0 + 3
   \   000046   6004         JZ      ??ZDP_SendData_2
   \   000048   7840         MOV     R0,#0x40
   \   00004A   8002         SJMP    ??ZDP_SendData_3
   \                     ??ZDP_SendData_2:
   \   00004C   7800         MOV     R0,#0x0
   \                     ??ZDP_SendData_3:
   \   00004E   E8           MOV     A,R0
   \   00004F   440A         ORL     A,#0xa
   \   000051   90....       MOV     DPTR,#??ZDP_TxOptions
   \   000054   F0           MOVX    @DPTR,A
   \   000055                ; Setup parameters for call to function fillAndSend
   \   000055   78..         MOV     R0,#?V0 + 0
   \   000057   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   00005A   A9..         MOV     R1,?V0 + 2
   \   00005C   90....       MOV     DPTR,#(??fillAndSend & 0xffff)
   \   00005F   74..         MOV     A,#((??fillAndSend >> 16) & 0xff)
   \   000061   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   000064   7402         MOV     A,#0x2
   \   000066   12....       LCALL   ?DEALLOC_XSTACK8
   \   000069   E4           CLR     A
   \   00006A   90....       MOV     DPTR,#??ZDP_TxOptions
   \   00006D   F0           MOVX    @DPTR,A
   \   00006E   7F06         MOV     R7,#0x6
   \   000070   02....       LJMP    ?BANKED_LEAVE_XDATA
    174          }

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine20:
   \   000000   E0           MOVX    A,@DPTR
   \   000001   FE           MOV     R6,A
   \   000002   A3           INC     DPTR
   \   000003   E0           MOVX    A,@DPTR
   \   000004   FF           MOV     R7,A
   \   000005   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine14:
   \   000000   E0           MOVX    A,@DPTR
   \   000001   F5..         MOV     ?V0 + 0,A
   \   000003   A3           INC     DPTR
   \   000004   E0           MOVX    A,@DPTR
   \   000005   F5..         MOV     ?V0 + 1,A
   \   000007   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine48:
   \   000000   8E82         MOV     DPL,R6
   \   000002   8F83         MOV     DPH,R7

⌨️ 快捷键说明

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