wxl_sampleapp.lst

来自「TI的基于ZIGBEE2006的协议栈」· LST 代码 · 共 1,078 行 · 第 1/4 页

LST
1,078
字号
    261                break;
    262            }
    263          }
   \                     ??WXL_SampleApp_MessageMSGCB_0:
   \   000100   7404         MOV     A,#0x4
   \   000102   80..         SJMP    ??Subroutine2_0

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine0:
   \   000000   EE           MOV     A,R6
   \   000001   2415         ADD     A,#0x15
   \   000003   F582         MOV     DPL,A
   \   000005   EF           MOV     A,R7
   \   000006   3400         ADDC    A,#0x0
   \   000008   F583         MOV     DPH,A
   \   00000A   E0           MOVX    A,@DPTR
   \   00000B   FC           MOV     R4,A
   \   00000C   A3           INC     DPTR
   \   00000D   E0           MOVX    A,@DPTR
   \   00000E   FD           MOV     R5,A
   \   00000F   7402         MOV     A,#0x2
   \   000011   22           RET

   \                                 In segment BANKED_CODE, align 1, keep-with-next
   \                     ?Subroutine2:
   \   000000   90....       MOV     DPTR,#(AF_DataRequest & 0xffff)
   \   000003   74..         MOV     A,#((AF_DataRequest >> 16) & 0xff)
   \   000005   12....       LCALL   ?BCALL               ; Banked call to: DPTR()
   \   000008   7409         MOV     A,#0x9
   \                     ??Subroutine2_0:
   \   00000A   12....       LCALL   ?DEALLOC_XSTACK8
   \   00000D   7F02         MOV     R7,#0x2
   \   00000F   02....       LJMP    ?BANKED_LEAVE_XDATA
    264          /*********************************************************************
    265           * @函数名:   SampleApp_SendFlashMessage
    266           *
    267           * @函数功能: 广播发送一串数据。
    268           *
    269           * @param   none
    270           *
    271           * @return  none
    272           */
    273          

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    274          void WXL_SampleApp_SendFlashMessage( uint8 *buffer )
   \                     WXL_SampleApp_SendFlashMessage:
    275          {
   \   000000   74F6         MOV     A,#-0xa
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 10
   \   000005                ; Auto size: 0
    276          
    277            if ( AF_DataRequest( &WXL_SampleApp_All_DstAddr, &WXL_SampleApp_epDesc,
    278                                 WXL_SAMPLEAPP_CLUSTERID2,
    279                                 4,
    280                                 buffer,
    281                                 &WXL_SampleApp_TransID,
    282                                 AF_DISCV_ROUTE,
    283                                 AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
   \   000005                ; Setup parameters for call to function AF_DataRequest
   \   000005   75..0A       MOV     ?V0 + 0,#0xa
   \   000008   78..         MOV     R0,#?V0 + 0
   \   00000A   12....       LCALL   ?PUSH_XSTACK_I_ONE
   \   00000D   75....       MOV     ?V0 + 0,#(WXL_SampleApp_TransID & 0xff)
   \   000010   75....       MOV     ?V0 + 1,#((WXL_SampleApp_TransID >> 8) & 0xff)
   \   000013   78..         MOV     R0,#?V0 + 0
   \   000015   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000018   8A..         MOV     ?V0 + 0,R2
   \   00001A   8B..         MOV     ?V0 + 1,R3
   \   00001C   78..         MOV     R0,#?V0 + 0
   \   00001E   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000021   75..04       MOV     ?V0 + 0,#0x4
   \   000024   75..00       MOV     ?V0 + 1,#0x0
   \   000027   78..         MOV     R0,#?V0 + 0
   \   000029   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   00002C   75..02       MOV     ?V0 + 0,#0x2
   \   00002F   78..         MOV     R0,#?V0 + 0
   \   000031   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000034   7920         MOV     R1,#0x20
   \   000036   7C..         MOV     R4,#(WXL_SampleApp_epDesc & 0xff)
   \   000038   7D..         MOV     R5,#((WXL_SampleApp_epDesc >> 8) & 0xff)
   \   00003A   7A..         MOV     R2,#(WXL_SampleApp_All_DstAddr & 0xff)
   \   00003C   7B..         MOV     R3,#((WXL_SampleApp_All_DstAddr >> 8) & 0xff)
   \   00003E                REQUIRE ?Subroutine2
   \   00003E                ; // Fall through to label ?Subroutine2
    284            {
    285            }
    286            else
    287            {
    288              // Error occurred in request to send.
    289            }
    290          }
    291          
    292          //**********************************************************************
    293          //**以短地址方式发送数据
    294          //buf ::发送的数据
    295          //addr::目的地址
    296          //Leng::数据长度
    297          //********************************************************************

   \                                 In segment BANKED_CODE, align 1, keep-with-next
    298          void WXL_SampleApp_SendData(uint8 *buf, uint16 addr, uint8 Leng)
   \                     WXL_SampleApp_SendData:
    299          {
   \   000000   74F6         MOV     A,#-0xa
   \   000002   12....       LCALL   ?BANKED_ENTER_XDATA
   \   000005                ; Saved register size: 10
   \   000005                ; Auto size: 0
    300          	WXL_SampleApp_Single_DstAddr.addr.shortAddr = addr;
   \   000005   90....       MOV     DPTR,#WXL_SampleApp_Single_DstAddr
   \   000008   EC           MOV     A,R4
   \   000009   F0           MOVX    @DPTR,A
   \   00000A   A3           INC     DPTR
   \   00000B   ED           MOV     A,R5
   \   00000C   F0           MOVX    @DPTR,A
    301                  if ( AF_DataRequest( &WXL_SampleApp_Single_DstAddr, //发送的地址和模式
    302                                 &WXL_SampleApp_epDesc,   //终端(比如操作系统中任务ID等)
    303                                 WXL_SAMPLEAPP_CLUSTERID1,//发送串ID
    304                                 Leng,                    //信息长度
    305                                 buf,                     //待发送的数据
    306                                 &WXL_SampleApp_TransID,
    307                                 AF_DISCV_ROUTE,
    308                                 AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
   \   00000D                ; Setup parameters for call to function AF_DataRequest
   \   00000D   75..0A       MOV     ?V0 + 0,#0xa
   \   000010   78..         MOV     R0,#?V0 + 0
   \   000012   12....       LCALL   ?PUSH_XSTACK_I_ONE
   \   000015   75....       MOV     ?V0 + 0,#(WXL_SampleApp_TransID & 0xff)
   \   000018   75....       MOV     ?V0 + 1,#((WXL_SampleApp_TransID >> 8) & 0xff)
   \   00001B   78..         MOV     R0,#?V0 + 0
   \   00001D   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000020   8A..         MOV     ?V0 + 0,R2
   \   000022   8B..         MOV     ?V0 + 1,R3
   \   000024   78..         MOV     R0,#?V0 + 0
   \   000026   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000029   89..         MOV     ?V0 + 0,R1
   \   00002B   75..00       MOV     ?V0 + 1,#0x0
   \   00002E   78..         MOV     R0,#?V0 + 0
   \   000030   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   000033   75..01       MOV     ?V0 + 0,#0x1
   \   000036   78..         MOV     R0,#?V0 + 0
   \   000038   12....       LCALL   ?PUSH_XSTACK_I_TWO
   \   00003B   7920         MOV     R1,#0x20
   \   00003D   7C..         MOV     R4,#(WXL_SampleApp_epDesc & 0xff)
   \   00003F   7D..         MOV     R5,#((WXL_SampleApp_epDesc >> 8) & 0xff)
   \   000041   7A..         MOV     R2,#(WXL_SampleApp_Single_DstAddr & 0xff)
   \   000043   7B..         MOV     R3,#((WXL_SampleApp_Single_DstAddr >> 8) & 0xff)
   \   000045   80..         SJMP    ?Subroutine2
    309          	{
    310          
    311          	}
    312          	else
    313          	{
    314          
    315          	}
    316          }

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for <Constant "OPEN">>`:
   \   000000   4F50454E     DB "OPEN"
   \            00      

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for <Constant "YES">>`:
   \   000000   59455300     DB "YES"

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for WXL_SampleApp_ClusterList>`:
   \   000000   01000200     DW 1, 2

   \                                 In segment XDATA_ID, align 1, keep-with-next
   \                     `?<Initializer for WXL_SampleApp_SimpleDesc>`:
   \   000000   14           DB 20
   \   000001   080F0100     DW 3848, 1
   \   000005   0002         DB 0, 2
   \   000007   ....         DW WXL_SampleApp_ClusterList
   \   000009   02           DB 2
   \   00000A   ....         DW WXL_SampleApp_ClusterList

   \                                 In segment XDATA_I, align 1, keep-with-next
   \                     `?<Constant "OPEN">`:
   \   000000                DS 5
   \   000005                REQUIRE `?<Initializer for <Constant "OPEN">>`
   \   000005                REQUIRE __INIT_XDATA_I

   \                                 In segment XDATA_I, align 1, keep-with-next
   \                     `?<Constant "YES">`:
   \   000000                DS 4
   \   000004                REQUIRE `?<Initializer for <Constant "YES">>`
   \   000004                REQUIRE __INIT_XDATA_I
    317          
    318          /*********************************************************************
    319          *********************************************************************/

   Maximum stack usage in bytes:

     Function                       ISTACK PSTACK XSTACK
     --------                       ------ ------ ------
     WXL_SampleApp_HandleKeys           2      0     12
       -> WXL_SampleApp_SendFlashMessage
                                        4      0      0
     WXL_SampleApp_Init                 2      0      0
       -> afRegister                    4      0      0
       -> RegisterForKeys               4      0      0
     WXL_SampleApp_MessageMSGCB         0      0     28
       -> memcpy                        0      0     32
       -> HalLedBlink                   0      0     28
       -> memcpy                        0      0     32
       -> HalLedBlink                   0      0     28
       -> WXL_SampleApp_SendData        0      0     28
     WXL_SampleApp_ProcessEvent         0      0     12
       -> osal_msg_receive              0      0     24
       -> osal_msg_deallocate           0      0     24
       -> osal_msg_receive              0      0     24
       -> WXL_SampleApp_HandleKeys      0      0     24
       -> WXL_SampleApp_MessageMSGCB
                                        0      0     24
     WXL_SampleApp_SendData             0      0     33
       -> AF_DataRequest                0      0     38
     WXL_SampleApp_SendFlashMessage     2      0     19
       -> AF_DataRequest                0      0     38


   Segment part sizes:

     Function/Label                 Bytes
     --------------                 -----
     WXL_SampleApp_ClusterList         4
     WXL_SampleApp_SimpleDesc         12
     WXL_SampleApp_epDesc              6
     WXL_SampleApp_TaskID              1
     WXL_SampleApp_NwkState            1
     WXL_SampleApp_TransID             1
     WXL_SampleApp_All_DstAddr         4
     WXL_SampleApp_Single_DstAddr      4
     WXL_SampleApp_Init              106
     ?Subroutine1                      7
     WXL_SampleApp_ProcessEvent      140
     WXL_SampleApp_HandleKeys         32
     WXL_SampleApp_MessageMSGCB      260
     ?Subroutine0                     18
     ?Subroutine2                     18
     WXL_SampleApp_SendFlashMessage   62
     WXL_SampleApp_SendData           71
     ?<Initializer for <Constant "OPEN">>
                                       5
     ?<Initializer for <Constant "YES">>
                                       4
     ?<Initializer for WXL_SampleApp_ClusterList>
                                       4
     ?<Initializer for WXL_SampleApp_SimpleDesc>
                                      12
     ?<Constant "OPEN">                5
     ?<Constant "YES">                 4

 
 714 bytes in segment BANKED_CODE
  25 bytes in segment XDATA_I
  25 bytes in segment XDATA_ID
  17 bytes in segment XDATA_Z
 
 739 bytes of CODE  memory
  42 bytes of XDATA memory

Errors: none
Warnings: none

⌨️ 快捷键说明

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