📄 mac_loc.lst
字号:
\ 00007D FA MOV R2,A
\ 00007E A3 INC DPTR
\ 00007F E0 MOVX A,@DPTR
\ 000080 FB MOV R3,A
\ 000081 7988 MOV R1,#-0x78
\ 000083 12.... LCALL mcpsDataRequest & 0xFFFF
\ 000086 7409 MOV A,#0x9
\ 000088 12.... LCALL ?DEALLOC_XSTACK8
356
357 WaitForPacketTransmission(msduHandle);
\ 00008B 90.... MOV DPTR,#msduHandle
\ 00008E E0 MOVX A,@DPTR
\ 00008F FA MOV R2,A
\ ??DataRequest_5:
\ 000090 90.... MOV DPTR,#dataConfirmMsduHandle
\ 000093 E0 MOVX A,@DPTR
\ 000094 6A XRL A,R2
\ 000095 70F9 JNZ ??DataRequest_5
\ ??DataRequest_6:
\ 000097 90.... MOV DPTR,#dataConfirmStatus
\ 00009A E0 MOVX A,@DPTR
\ 00009B 6480 XRL A,#0x80
\ 00009D 60F8 JZ ??DataRequest_6
358 }
\ 00009F 7408 MOV A,#0x8
\ 0000A1 12.... LCALL ?DEALLOC_XSTACK8
\ 0000A4 7F02 MOV R7,#0x2
\ 0000A6 02.... LJMP ?BANKED_LEAVE_XDATA
359
360 #ifdef SOC_BB
361 /******************************************************************************
362 * This function perform a test on SOC_BB. Connect a jumper between
363 * pin 19 and pin 20 on P10 to run the test. Press S1 and the led will lit
364 * if the test is OK.
365 ******************************************************************************/
366 void RunHWTest(void){
367 // setup P1_7 as pull-up input
368 IO_IMODE_PORT_PIN(0, 7, IO_IMODE_PUD);
369 IO_PUD_PORT(0, IO_PULLUP);
370 IO_DIR_PORT_PIN(0, 7, IO_IN);
371 halWait(100);
372
373 while(P0_7 == 0) //If P0_7 == 0 then P0_7 is shorted to GND
374 {
375 LED1 = !BUTTON_PRESSED();
376 }
377 }
378 #endif
379
380
381
382 /******************************************************************************
383 * Currently unused callbacks
384 ******************************************************************************/
385 #pragma diag_suppress=Pe550
\ In segment NEAR_CODE, align 1, keep-with-next
386 ROOT void mlmeDisassociateIndication(ADDRESS deviceAddress, BYTE disassociateReason, BOOL securityUse, BOOL aclEntry){}
\ mlmeDisassociateIndication:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
387
\ In segment NEAR_CODE, align 1, keep-with-next
388 ROOT void mlmeAssociateConfirm(WORD assocShortAddress, MAC_ENUM status){}
\ mlmeAssociateConfirm:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
389
\ In segment NEAR_CODE, align 1, keep-with-next
390 ROOT void mlmeAssociateIndication(ADDRESS deviceAddress, BYTE capabilityInformation, BOOL securityUse, UINT8 aclEntry) {}
\ mlmeAssociateIndication:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
391
\ In segment NEAR_CODE, align 1, keep-with-next
392 ROOT void mlmeBeaconNotifyIndication(MLME_BEACON_NOTIFY_INDICATION *pMBNI) {
\ mlmeBeaconNotifyIndication:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
393 MLME_BEACON_NOTIFY_INDICATION *mlmeBeaconNotifyIndication;
394
395 mlmeBeaconNotifyIndication = pMBNI;
396 }
\ 000000 22 RET
397
\ In segment NEAR_CODE, align 1, keep-with-next
398 ROOT void mlmeCommStatusIndication(WORD panId, BYTE srcAddrMode, ADDRESS *pSrcAddr, BYTE dstAddrMode, ADDRESS *pDstAddr, BYTE status) {
\ mlmeCommStatusIndication:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
399 srcAddrMode = dstAddrMode = status = panId;
400 pDstAddr = pSrcAddr;
401 }
\ 000000 22 RET
402
\ In segment NEAR_CODE, align 1, keep-with-next
403 ROOT void mlmeDisassociateConfirm(MAC_ENUM status) { status = 1; }
\ mlmeDisassociateConfirm:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
404
\ In segment NEAR_CODE, align 1, keep-with-next
405 ROOT void mlmeOrphanIndication(ADDRESS orphanAddress, BOOL securityUse, BOOL aclEntry) {
\ mlmeOrphanIndication:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
406 orphanAddress.Short = securityUse = aclEntry;
407 }
\ 000000 22 RET
408
\ In segment NEAR_CODE, align 1, keep-with-next
409 ROOT void mlmeRxEnableConfirm(MAC_ENUM status) { status = 1; }
\ mlmeRxEnableConfirm:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
\ In segment NEAR_CODE, align 1, keep-with-next
410 ROOT void mlmeSyncLossIndication(MAC_ENUM lossReason) { lossReason = 1; }
\ mlmeSyncLossIndication:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
\ In segment NEAR_CODE, align 1, keep-with-next
411 ROOT void mpmSetConfirm(BYTE status) { status = 1;}
\ mpmSetConfirm:
\ 000000 ; Saved register size: 0
\ 000000 ; Auto size: 0
\ 000000 22 RET
\ In segment XDATA_ID, align 1, keep-with-next
\ `?<Initializer for <Constant "Chipcon">>`:
\ 000000 43686970 DB "Chipcon"
\ 636F6E00
\ In segment XDATA_ID, align 1, keep-with-next
\ `?<Initializer for <Constant "Location Engine">`:
\ 000000 4C6F6361 DB "Location Engine"
\ 74696F6E
\ 20456E67
\ 696E6500
\ In segment XDATA_I, align 1, keep-with-next
\ `?<Constant "Chipcon">`:
\ 000000 DS 8
\ 000008 REQUIRE `?<Initializer for <Constant "Chipcon">>`
\ 000008 REQUIRE __INIT_XDATA_I
\ In segment XDATA_I, align 1, keep-with-next
\ `?<Constant "Location Engine">`:
\ 000000 DS 16
\ 000010 REQUIRE `?<Initializer for <Constant "Location Engine">`
\ 000010 REQUIRE __INIT_XDATA_I
\ In segment SFR_AN, at 0x80
\ union <unnamed> volatile __sfr _A_P0
\ _A_P0:
\ 000000 DS 1
\ In segment SFR_AN, at 0x90
\ union <unnamed> volatile __sfr _A_P1
\ _A_P1:
\ 000000 DS 1
\ In segment SFR_AN, at 0xa8
\ union <unnamed> volatile __sfr _A_IEN0
\ _A_IEN0:
\ 000000 DS 1
\ In segment SFR_AN, at 0xb8
\ union <unnamed> volatile __sfr _A_IEN1
\ _A_IEN1:
\ 000000 DS 1
412 /*****************************************************************************/
413
414 #pragma diag_default=Pe550
Maximum stack usage in bytes:
Function ISTACK PSTACK XSTACK
-------- ------ ------ ------
DataRequest 0 0 27
-> mcpsDataRequest 0 0 54
FetchIeeeAddress 5 0 1
StartDevice 3 0 1
-> FetchIeeeAddress 4 0 2
-> halInitRandomGenerator 4 0 2
-> mlmeResetRequest 4 0 2
-> mlmeSetRequest 4 0 2
-> mlmeSetRequest 4 0 2
-> mlmeSetRequest 4 0 2
-> mlmeSetRequest 4 0 2
-> mlmeSetRequest 4 0 2
-> mlmeSetRequest 4 0 2
-> msupSetChannel 4 0 2
main 0 0 0
-> initLcd 0 0 0
-> lcdUpdate 0 0 0
-> mschInit 0 0 0
-> mtimInit 0 0 0
-> InitializeCommonStorage 0 0 0
-> InitializeDma 0 0 0
-> InitializeRfInterrupts 0 0 0
-> mpmSetRequest 0 0 0
-> mpmGetState 0 0 0
-> getJoystickDirection 0 0 0
-> StartDevice 0 0 0
-> RunRefNode 0 0 0
-> RunBlindNode 0 0 0
-> halWait 0 0 0
mcpsDataConfirm 2 0 0
mcpsDataIndication 2 0 0
-> NodeDataIndication 4 0 0
mlmeAssociateConfirm 0 0 0
mlmeAssociateIndication 0 0 8
mlmeBeaconNotifyIndication 0 0 0
mlmeCommStatusIndication 0 0 4
mlmeDisassociateConfirm 0 0 0
mlmeDisassociateIndication 0 0 8
mlmeOrphanIndication 0 0 8
mlmePollConfirm 2 0 0
mlmeRxEnableConfirm 0 0 0
mlmeSyncLossIndication 0 0 0
mpmSetConfirm 0 0 0
Segment part sizes:
Function/Label Bytes
-------------- -----
ADCCON1 1
RNDH 1
MEMCTR 1
P1SEL 1
P0DIR 1
P1DIR 1
myShortAddr 2
extAddr 8
panId 2
pBuffer 128
msduHandle 1
txOptions 1
dataConfirmStatus 1
pollConfirmStatus 1
dataConfirmMsduHandle 1
main 214
StartDevice 174
mcpsDataIndication 14
?Subroutine0 6
mcpsDataConfirm 15
mlmePollConfirm 10
FetchIeeeAddress 125
DataRequest 169
mlmeDisassociateIndication 1
mlmeAssociateConfirm 1
mlmeAssociateIndication 1
mlmeBeaconNotifyIndication 1
mlmeCommStatusIndication 1
mlmeDisassociateConfirm 1
mlmeOrphanIndication 1
mlmeRxEnableConfirm 1
mlmeSyncLossIndication 1
mpmSetConfirm 1
?<Initializer for <Constant "Chipcon">>
8
?<Initializer for <Constant "Location Engine">
16
?<Constant "Chipcon"> 8
?<Constant "Location Engine"> 16
_A_P0 1
_A_P1 1
_A_IEN0 1
_A_IEN1 1
557 bytes in segment BANKED_CODE
180 bytes in segment NEAR_CODE
10 bytes in segment SFR_AN
24 bytes in segment XDATA_I
24 bytes in segment XDATA_ID
145 bytes in segment XDATA_Z
761 bytes of CODE memory
0 bytes of DATA memory (+ 10 bytes shared)
169 bytes of XDATA memory
Errors: none
Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -