📄 sampleapp.lst
字号:
\ 00002B F8 MOV R0,A
\ 00002C A3 INC DPTR
\ 00002D E0 MOVX A,@DPTR
\ 00002E F9 MOV R1,A
\ 00002F ; Setup parameters for call to function HalLedBlink
\ 00002F 8882 MOV DPL,R0
\ 000031 8983 MOV DPH,R1
\ 000033 A3 INC DPTR
\ 000034 E0 MOVX A,@DPTR
\ 000035 FA MOV R2,A
\ 000036 8882 MOV DPL,R0
\ 000038 8983 MOV DPH,R1
\ 00003A A3 INC DPTR
\ 00003B A3 INC DPTR
\ 00003C E0 MOVX A,@DPTR
\ 00003D F9 MOV R1,A
\ 00003E E4 CLR A
\ 00003F 2A ADD A,R2
\ 000040 F5.. MOV ?V0 + 0,A
\ 000042 E9 MOV A,R1
\ 000043 3400 ADDC A,#0x0
\ 000045 F5.. MOV ?V0 + 1,A
\ 000047 7402 MOV A,#0x2
\ 000049 78.. MOV R0,#?V0 + 0
\ 00004B 12.... LCALL ?US_SHR
\ 00004E AC.. MOV R4,?V0 + 0
\ 000050 AD.. MOV R5,?V0 + 1
\ 000052 7B32 MOV R3,#0x32
\ 000054 7A04 MOV R2,#0x4
\ 000056 7908 MOV R1,#0x8
\ 000058 90.... MOV DPTR,#(HalLedBlink & 0xffff)
\ 00005B 74.. MOV A,#((HalLedBlink >> 16) & 0xff)
\ 00005D 12.... LCALL ?BCALL ; Banked call to: DPTR()
398 break;
399 }
400 }
\ ??SampleApp_MessageMSGCB_0:
\ 000060 80.. SJMP ??Subroutine0_0
401
402 /*********************************************************************
403 * @fn SampleApp_SendPeriodicMessage
404 *
405 * @brief Send the periodic message.
406 *
407 * @param none
408 *
409 * @return none
410 */
\ In segment BANKED_CODE, align 1, keep-with-next
411 void SampleApp_SendPeriodicMessage( void )
\ SampleApp_SendPeriodicMessage:
412 {
\ 000000 74F6 MOV A,#-0xa
\ 000002 12.... LCALL ?BANKED_ENTER_XDATA
\ 000005 ; Saved register size: 10
\ 000005 ; Auto size: 0
413 if ( AF_DataRequest( &SampleApp_Periodic_DstAddr, &SampleApp_epDesc,
414 SAMPLEAPP_PERIODIC_CLUSTERID,
415 1,
416 (uint8*)&SampleAppPeriodicCounter,
417 &SampleApp_TransID,
418 AF_DISCV_ROUTE,
419 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,#(SampleApp_TransID & 0xff)
\ 000010 75.... MOV ?V0 + 1,#((SampleApp_TransID >> 8) & 0xff)
\ 000013 78.. MOV R0,#?V0 + 0
\ 000015 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 000018 75.... MOV ?V0 + 0,#(SampleAppPeriodicCounter & 0xff)
\ 00001B 75.... MOV ?V0 + 1,#((SampleAppPeriodicCounter >> 8) & 0xff)
\ 00001E 78.. MOV R0,#?V0 + 0
\ 000020 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 000023 75..01 MOV ?V0 + 0,#0x1
\ 000026 75..00 MOV ?V0 + 1,#0x0
\ 000029 78.. MOV R0,#?V0 + 0
\ 00002B 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 00002E 78.. MOV R0,#?V0 + 0
\ 000030 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 000033 7920 MOV R1,#0x20
\ 000035 7C.. MOV R4,#(SampleApp_epDesc & 0xff)
\ 000037 7D.. MOV R5,#((SampleApp_epDesc >> 8) & 0xff)
\ 000039 7A.. MOV R2,#(SampleApp_Periodic_DstAddr & 0xff)
\ 00003B 7B.. MOV R3,#((SampleApp_Periodic_DstAddr >> 8) & 0xff)
\ 00003D 90.... MOV DPTR,#(AF_DataRequest & 0xffff)
\ 000040 74.. MOV A,#((AF_DataRequest >> 16) & 0xff)
\ 000042 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 000045 7409 MOV A,#0x9
\ 000047 02.... LJMP ?Subroutine0 & 0xFFFF
420 {
421 }
422 else
423 {
424 // Error occurred in request to send.
425 }
426 }
427
428 /*********************************************************************
429 * @fn SampleApp_SendFlashMessage
430 *
431 * @brief Send the flash message to group 1.
432 *
433 * @param flashTime - in milliseconds
434 *
435 * @return none
436 */
\ In segment BANKED_CODE, align 1, keep-with-next
437 void SampleApp_SendFlashMessage( uint16 flashTime )
\ SampleApp_SendFlashMessage:
438 {
\ 000000 74F6 MOV A,#-0xa
\ 000002 12.... LCALL ?BANKED_ENTER_XDATA
\ 000005 ; Saved register size: 10
\ 000005 ; Auto size: 3
\ 000005 74FD MOV A,#-0x3
\ 000007 12.... LCALL ?ALLOC_XSTACK8
439 uint8 buffer[3];
440 buffer[0] = (uint8)(SampleAppFlashCounter++);
\ 00000A 90.... MOV DPTR,#SampleAppFlashCounter
\ 00000D E0 MOVX A,@DPTR
\ 00000E 85..82 MOV DPL,?XSP + 0
\ 000011 85..83 MOV DPH,?XSP + 1
\ 000014 F0 MOVX @DPTR,A
\ 000015 90.... MOV DPTR,#SampleAppFlashCounter
\ 000018 E0 MOVX A,@DPTR
\ 000019 04 INC A
\ 00001A F0 MOVX @DPTR,A
441 buffer[1] = LO_UINT16( flashTime );
\ 00001B 7401 MOV A,#0x1
\ 00001D 12.... LCALL ?XSTACK_DISP0_8
\ 000020 EA MOV A,R2
\ 000021 F0 MOVX @DPTR,A
442 buffer[2] = HI_UINT16( flashTime );
\ 000022 7402 MOV A,#0x2
\ 000024 12.... LCALL ?XSTACK_DISP0_8
\ 000027 EB MOV A,R3
\ 000028 F0 MOVX @DPTR,A
443
444 if ( AF_DataRequest( &SampleApp_Flash_DstAddr, &SampleApp_epDesc,
445 SAMPLEAPP_FLASH_CLUSTERID,
446 3,
447 buffer,
448 &SampleApp_TransID,
449 AF_DISCV_ROUTE,
450 AF_DEFAULT_RADIUS ) == afStatus_SUCCESS )
\ 000029 ; Setup parameters for call to function AF_DataRequest
\ 000029 75..0A MOV ?V0 + 0,#0xa
\ 00002C 78.. MOV R0,#?V0 + 0
\ 00002E 12.... LCALL ?PUSH_XSTACK_I_ONE
\ 000031 75.... MOV ?V0 + 0,#(SampleApp_TransID & 0xff)
\ 000034 75.... MOV ?V0 + 1,#((SampleApp_TransID >> 8) & 0xff)
\ 000037 78.. MOV R0,#?V0 + 0
\ 000039 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 00003C 7403 MOV A,#0x3
\ 00003E 12.... LCALL ?XSTACK_DISP0_8
\ 000041 8582.. MOV ?V0 + 0,DPL
\ 000044 8583.. MOV ?V0 + 1,DPH
\ 000047 78.. MOV R0,#?V0 + 0
\ 000049 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 00004C 75..03 MOV ?V0 + 0,#0x3
\ 00004F 75..00 MOV ?V0 + 1,#0x0
\ 000052 78.. MOV R0,#?V0 + 0
\ 000054 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 000057 75..02 MOV ?V0 + 0,#0x2
\ 00005A 78.. MOV R0,#?V0 + 0
\ 00005C 12.... LCALL ?PUSH_XSTACK_I_TWO
\ 00005F 7920 MOV R1,#0x20
\ 000061 7C.. MOV R4,#(SampleApp_epDesc & 0xff)
\ 000063 7D.. MOV R5,#((SampleApp_epDesc >> 8) & 0xff)
\ 000065 7A.. MOV R2,#(SampleApp_Flash_DstAddr & 0xff)
\ 000067 7B.. MOV R3,#((SampleApp_Flash_DstAddr >> 8) & 0xff)
\ 000069 90.... MOV DPTR,#(AF_DataRequest & 0xffff)
\ 00006C 74.. MOV A,#((AF_DataRequest >> 16) & 0xff)
\ 00006E 12.... LCALL ?BCALL ; Banked call to: DPTR()
\ 000071 7409 MOV A,#0x9
\ 000073 12.... LCALL ?DEALLOC_XSTACK8
451 {
452 }
453 else
454 {
455 // Error occurred in request to send.
456 }
457 }
\ 000076 7403 MOV A,#0x3
\ 000078 02.... LJMP ?Subroutine0 & 0xFFFF
\ In segment XDATA_ID, align 1, keep-with-next
\ `?<Initializer for <Constant "Group 1">>`:
\ 000000 47726F75 DB "Group 1"
\ 70203100
\ In segment XDATA_ID, align 1, keep-with-next
\ `?<Initializer for SampleApp_ClusterList>`:
\ 000000 01000200 DW 1, 2
\ In segment XDATA_ID, align 1, keep-with-next
\ `?<Initializer for SampleApp_SimpleDesc>`:
\ 000000 14 DB 20
\ 000001 080F0100 DW 3848, 1
\ 000005 0002 DB 0, 2
\ 000007 .... DW SampleApp_ClusterList
\ 000009 02 DB 2
\ 00000A .... DW SampleApp_ClusterList
\ In segment XDATA_I, align 1, keep-with-next
\ `?<Constant "Group 1">`:
\ 000000 DS 8
\ 000008 REQUIRE `?<Initializer for <Constant "Group 1">>`
\ 000008 REQUIRE __INIT_XDATA_I
\ In segment SFR_AN, at 0x90
\ union <unnamed> volatile __sfr _A_P1
\ _A_P1:
\ 000000 DS 1
458
459 /*********************************************************************
460 *********************************************************************/
Maximum stack usage in bytes:
Function ISTACK PSTACK XSTACK
-------- ------ ------ ------
SampleApp_HandleKeys 0 0 22
-> SampleApp_SendFlashMessage
0 0 20
-> aps_FindGroup 0 0 20
-> aps_RemoveGroup 0 0 20
-> aps_AddGroup 0 0 20
SampleApp_Init 0 0 14
-> afRegister 0 0 22
-> RegisterForKeys 0 0 22
-> osal_memcpy 0 0 28
-> aps_AddGroup 0 0 22
SampleApp_MessageMSGCB
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -