📄 zglobals.s51
字号:
?Subroutine0:
CFI Block cfiCond3 Using cfiCommon0
CFI NoFunction
CFI Conditional ??CrossCallReturnLabel_0
CFI R6 load(1, XDATA, add(CFA_XSP16, literal(-10)))
CFI VB load(1, XDATA, add(CFA_XSP16, literal(-9)))
CFI V0 load(1, XDATA, add(CFA_XSP16, literal(-8)))
CFI V1 load(1, XDATA, add(CFA_XSP16, literal(-7)))
CFI R7 load(1, XDATA, add(CFA_XSP16, literal(-6)))
CFI ?RET_LOW load(1, XDATA, add(CFA_XSP16, literal(-5)))
CFI ?RET_HIGH load(1, XDATA, add(CFA_XSP16, literal(-4)))
CFI ?BRET_EXT load(1, XDATA, add(CFA_XSP16, literal(-3)))
CFI DPL0 load(1, XDATA, add(CFA_XSP16, literal(-2)))
CFI DPH0 load(1, XDATA, add(CFA_XSP16, literal(-1)))
CFI CFA_SP SP+0
CFI CFA_XSP16 add(XSP16, 11)
CFI Block cfiCond4 Using cfiCommon0
CFI (cfiCond4) NoFunction
CFI (cfiCond4) Conditional ??CrossCallReturnLabel_1
CFI (cfiCond4) R6 load(1, XDATA, add(CFA_XSP16, literal(-10)))
CFI (cfiCond4) VB load(1, XDATA, add(CFA_XSP16, literal(-9)))
CFI (cfiCond4) V0 load(1, XDATA, add(CFA_XSP16, literal(-8)))
CFI (cfiCond4) V1 load(1, XDATA, add(CFA_XSP16, literal(-7)))
CFI (cfiCond4) R7 load(1, XDATA, add(CFA_XSP16, literal(-6)))
CFI (cfiCond4) ?RET_LOW load(1, XDATA, add(CFA_XSP16, literal(-5)))
CFI (cfiCond4) ?RET_HIGH load(1, XDATA, add(CFA_XSP16, literal(-4)))
CFI (cfiCond4) ?BRET_EXT load(1, XDATA, add(CFA_XSP16, literal(-3)))
CFI (cfiCond4) DPL0 load(1, XDATA, add(CFA_XSP16, literal(-2)))
CFI (cfiCond4) DPH0 load(1, XDATA, add(CFA_XSP16, literal(-1)))
CFI (cfiCond4) CFA_SP SP+0
CFI (cfiCond4) CFA_XSP16 add(XSP16, 11)
CFI Block cfiPicker5 Using cfiCommon1
CFI (cfiPicker5) NoFunction
CFI (cfiPicker5) Picker
CLR A
MOV DPL,?XSP + 0
MOV DPH,?XSP + 1
CFI Block cfiCond6 Using cfiCommon0
CFI (cfiCond6) NoFunction
CFI (cfiCond6) Conditional ??CrossCallReturnLabel_2
CFI (cfiCond6) R6 load(1, XDATA, add(CFA_XSP16, literal(-10)))
CFI (cfiCond6) VB load(1, XDATA, add(CFA_XSP16, literal(-9)))
CFI (cfiCond6) V0 load(1, XDATA, add(CFA_XSP16, literal(-8)))
CFI (cfiCond6) V1 load(1, XDATA, add(CFA_XSP16, literal(-7)))
CFI (cfiCond6) R7 load(1, XDATA, add(CFA_XSP16, literal(-6)))
CFI (cfiCond6) ?RET_LOW load(1, XDATA, add(CFA_XSP16, literal(-5)))
CFI (cfiCond6) ?RET_HIGH load(1, XDATA, add(CFA_XSP16, literal(-4)))
CFI (cfiCond6) ?BRET_EXT load(1, XDATA, add(CFA_XSP16, literal(-3)))
CFI (cfiCond6) DPL0 load(1, XDATA, add(CFA_XSP16, literal(-2)))
CFI (cfiCond6) DPH0 load(1, XDATA, add(CFA_XSP16, literal(-1)))
CFI (cfiCond6) CFA_SP SP+0
CFI (cfiCond6) CFA_XSP16 add(XSP16, 11)
??Subroutine0_0:
MOVX @DPTR,A
; Setup parameters for call to function osal_nv_item_init
; Setup parameters for call to function osal_nv_read
; Setup parameters for call to function osal_nv_write
MOV ?V0 + 0,DPL
MOV ?V0 + 1,DPH
MOV R0,#?V0 + 0
RET
CFI EndBlock cfiCond3
CFI EndBlock cfiCond4
CFI EndBlock cfiPicker5
CFI EndBlock cfiCond6
// 425
// 426 /*********************************************************************
// 427 * @fn zgWriteStartupOptions
// 428 *
// 429 * @brief Writes bits into the ZCD_NV_STARTUP_OPTION NV Item.
// 430 *
// 431 * @param action - ZG_STARTUP_SET set bit, ZG_STARTUP_CLEAR to
// 432 * clear bit. The set bit is an OR operation, and the
// 433 * clear bit is an AND ~(bitOptions) operation.
// 434 *
// 435 * @param bitOptions - which bits to perform action on:
// 436 * ZCD_STARTOPT_DEFAULT_CONFIG_STATE
// 437 * ZCD_STARTOPT_DEFAULT_NETWORK_STATE
// 438 *
// 439 * @return ZSUCCESS if successful
// 440 */
RSEG BANKED_CODE:CODE:NOROOT(0)
// 441 uint8 zgWriteStartupOptions( uint8 action, uint8 bitOptions )
zgWriteStartupOptions:
CFI Block cfiBlock7 Using cfiCommon0
CFI Function zgWriteStartupOptions
// 442 {
FUNCALL zgWriteStartupOptions, osal_nv_read
LOCFRAME XSTACK, 15, STACK
ARGFRAME XSTACK, 15, STACK
FUNCALL zgWriteStartupOptions, osal_nv_write
LOCFRAME XSTACK, 15, STACK
ARGFRAME XSTACK, 15, STACK
MOV A,#-0xa
LCALL ?BANKED_ENTER_XDATA
CFI DPH0 load(1, XDATA, add(CFA_XSP16, literal(-1)))
CFI DPL0 load(1, XDATA, add(CFA_XSP16, literal(-2)))
CFI ?BRET_EXT load(1, XDATA, add(CFA_XSP16, literal(-3)))
CFI ?RET_HIGH load(1, XDATA, add(CFA_XSP16, literal(-4)))
CFI ?RET_LOW load(1, XDATA, add(CFA_XSP16, literal(-5)))
CFI R7 load(1, XDATA, add(CFA_XSP16, literal(-6)))
CFI V1 load(1, XDATA, add(CFA_XSP16, literal(-7)))
CFI V0 load(1, XDATA, add(CFA_XSP16, literal(-8)))
CFI VB load(1, XDATA, add(CFA_XSP16, literal(-9)))
CFI R6 load(1, XDATA, add(CFA_XSP16, literal(-10)))
CFI CFA_SP SP+0
CFI CFA_XSP16 add(XSP16, 10)
; Saved register size: 10
; Auto size: 1
MOV A,#-0x1
LCALL ?ALLOC_XSTACK8
CFI CFA_XSP16 add(XSP16, 11)
MOV A,R1
MOV R6,A
MOV A,R2
MOV R7,A
// 443 uint8 status;
// 444 uint8 startupOptions = 0;
LCALL ?Subroutine0 & 0xFFFF
// 445
// 446 status = osal_nv_read( ZCD_NV_STARTUP_OPTION,
// 447 0,
// 448 sizeof( startupOptions ),
// 449 &startupOptions );
??CrossCallReturnLabel_1:
LCALL ?PUSH_XSTACK_I_TWO
CFI CFA_XSP16 add(XSP16, 13)
MOV ?V0 + 0,#0x1
MOV ?V0 + 1,#0x0
MOV R0,#?V0 + 0
LCALL ?PUSH_XSTACK_I_TWO
CFI CFA_XSP16 add(XSP16, 15)
MOV R4,#0x0
MOV R5,#0x0
MOV R2,#0x3
MOV R3,#0x0
MOV DPTR,#(osal_nv_read & 0xffff)
MOV A,#((osal_nv_read >> 16) & 0xff)
LCALL ?BCALL ; Banked call to: DPTR()
MOV A,#0x4
LCALL ?DEALLOC_XSTACK8
CFI CFA_XSP16 add(XSP16, 11)
MOV A,R1
// 450
// 451 if ( status == ZSUCCESS )
JNZ ??zgWriteStartupOptions_0
// 452 {
// 453 if ( action == ZG_STARTUP_SET )
MOV A,#-0x1
XRL A,R6
JNZ ??zgWriteStartupOptions_1
// 454 {
// 455 // Set bits
// 456 startupOptions |= bitOptions;
MOV DPL,?XSP + 0
MOV DPH,?XSP + 1
MOVX A,@DPTR
ORL A,R7
SJMP ??zgWriteStartupOptions_2
// 457 }
// 458 else
// 459 {
// 460 // Clear bits
// 461 startupOptions &= ~(bitOptions);
??zgWriteStartupOptions_1:
MOV A,R7
CPL A
MOV R2,A
MOV DPL,?XSP + 0
MOV DPH,?XSP + 1
MOVX A,@DPTR
ANL A,R2
??zgWriteStartupOptions_2:
LCALL ??Subroutine0_0 & 0xFFFF
// 462 }
// 463
// 464 // Changed?
// 465 status = osal_nv_write( ZCD_NV_STARTUP_OPTION,
// 466 0,
// 467 sizeof( startupOptions ),
// 468 &startupOptions );
??CrossCallReturnLabel_2:
LCALL ?PUSH_XSTACK_I_TWO
CFI CFA_XSP16 add(XSP16, 13)
MOV ?V0 + 0,#0x1
MOV ?V0 + 1,#0x0
MOV R0,#?V0 + 0
LCALL ?PUSH_XSTACK_I_TWO
CFI CFA_XSP16 add(XSP16, 15)
MOV R4,#0x0
MOV R5,#0x0
MOV R2,#0x3
MOV R3,#0x0
MOV DPTR,#(osal_nv_write & 0xffff)
MOV A,#((osal_nv_write >> 16) & 0xff)
LCALL ?BCALL ; Banked call to: DPTR()
MOV A,#0x4
LCALL ?DEALLOC_XSTACK8
CFI CFA_XSP16 add(XSP16, 11)
// 469 }
// 470
// 471 return ( status );
??zgWriteStartupOptions_0:
LJMP ?Subroutine1 & 0xFFFF
CFI EndBlock cfiBlock7
// 472 }
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgPollRate>`:
DW 1000
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgQueuedPollRate>`:
DW 100
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgResponsePollRate>`:
DW 100
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgRejoinPollRate>`:
DW 440
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgMaxDataRetries>`:
DB 2
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgMaxPollFailureRetries>`:
DB 2
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgDefaultChannelList>`:
DD 2048
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgDefaultStartingScanDuratio`:
DB 5
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgStackProfile>`:
DB 1
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgIndirectMsgTimeout>`:
DB 7
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgRouteExpiryTime>`:
DB 30
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgMaxBcastRetires>`:
DB 2
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgPassiveAckTimeout>`:
DB 5
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgBcastDeliveryTime>`:
DB 30
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgNwkMode>`:
DB 2
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgConcentratorRadius>`:
DB 10
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgMaxSourceRoute>`:
DB 12
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgApscMaxFrameRetries>`:
DB 3
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgApscAckWaitDurationPolled>`:
DW 3000
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgApsAckWaitMultiplier>`:
DB 2
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgApsDefaultMaxBindingTime>`:
DW 16000
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgConfigPANID>`:
DW 65535
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgDeviceLogicalType>`:
DB 3
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgStartDelay>`:
DB 10
RSEG XDATA_ID:CODE:NOROOT(0)
`?<Initializer for zgSapiEndpoint>`:
DB 224
END
// 473
// 474 /*********************************************************************
// 475 *********************************************************************/
//
// 535 bytes in segment BANKED_CODE
// 192 bytes in segment CODE_C
// 35 bytes in segment XDATA_I
// 35 bytes in segment XDATA_ID
// 28 bytes in segment XDATA_Z
//
// 762 bytes of CODE memory
// 63 bytes of XDATA memory
//
//Errors: none
//Warnings: none
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -