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 + -
显示快捷键?