📄 charger.asm
字号:
STR V9, [SP, #4] ; |193|
.dwpsn "charger.c",193,16
MOV V9, #16 ; |193|
LDR A1, [SP, #4] ; |193|
ADD V9, V9, #9984 ; |193|
CMP A1, V9 ; |193|
BLT L6 ; |193|
; |193|
DW$L$_MADC_RT_INT2$5$E:
;* --------------------------------------------------------------------------*
L7:
.dwpsn "charger.c",195,3
MOV A1, #1 ; |195|
.dwpsn "charger.c",196,1
.dwcfa 0x0e, 16
LDMFD SP!, {A2, A3, A4, PC}
DW$44 .dwtag DW_TAG_loop
.dwattr DW$44, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\charger.asm:L6:1:1214374275")
.dwattr DW$44, DW_AT_begin_file("charger.c")
.dwattr DW$44, DW_AT_begin_line(0xc1)
.dwattr DW$44, DW_AT_end_line(0xc1)
DW$45 .dwtag DW_TAG_loop_range
.dwattr DW$45, DW_AT_low_pc(DW$L$_MADC_RT_INT2$5$B)
.dwattr DW$45, DW_AT_high_pc(DW$L$_MADC_RT_INT2$5$E)
.dwendtag DW$44
DW$46 .dwtag DW_TAG_loop
.dwattr DW$46, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\charger.asm:L4:1:1214374275")
.dwattr DW$46, DW_AT_begin_file("charger.c")
.dwattr DW$46, DW_AT_begin_line(0xbf)
.dwattr DW$46, DW_AT_end_line(0xbf)
DW$47 .dwtag DW_TAG_loop_range
.dwattr DW$47, DW_AT_low_pc(DW$L$_MADC_RT_INT2$3$B)
.dwattr DW$47, DW_AT_high_pc(DW$L$_MADC_RT_INT2$3$E)
.dwendtag DW$46
.dwattr DW$39, DW_AT_end_file("charger.c")
.dwattr DW$39, DW_AT_end_line(0xc4)
.dwattr DW$39, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$39
.sect ".text"
.align 4
.clink
.armfunc _MADC_SP1_poll
.state32
.global _MADC_SP1_poll
DW$48 .dwtag DW_TAG_subprogram, DW_AT_name("MADC_SP1_poll"), DW_AT_symbol_name("_MADC_SP1_poll")
.dwattr DW$48, DW_AT_low_pc(_MADC_SP1_poll)
.dwattr DW$48, DW_AT_high_pc(0x00)
.dwattr DW$48, DW_AT_begin_file("charger.c")
.dwattr DW$48, DW_AT_begin_line(0xd3)
.dwattr DW$48, DW_AT_begin_column(0x05)
.dwpsn "charger.c",212,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: MADC_SP1_poll *
;* *
;* Regs Modified : A1,A2,A3,A4,V9,SP,LR,SR *
;* Regs Used : A1,A2,A3,A4,V9,SP,LR,SR *
;* Local Frame Size : 0 Args + 12 Auto + 4 Save = 16 byte *
;*****************************************************************************
_MADC_SP1_poll:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {A2, A3, A4, LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 8
.dwcfa 0x80, 3, 2
.dwcfa 0x0e, 12
.dwcfa 0x80, 2, 3
.dwcfa 0x0e, 16
.dwcfa 0x80, 1, 4
.dwcfa 0x0e, 16
DW$49 .dwtag DW_TAG_variable, DW_AT_name("madc_busy"), DW_AT_symbol_name("_madc_busy")
.dwattr DW$49, DW_AT_type(*DW$T$10)
.dwattr DW$49, DW_AT_location[DW_OP_breg13 0]
DW$50 .dwtag DW_TAG_variable, DW_AT_name("madc_eocrt"), DW_AT_symbol_name("_madc_eocrt")
.dwattr DW$50, DW_AT_type(*DW$T$10)
.dwattr DW$50, DW_AT_location[DW_OP_breg13 4]
DW$51 .dwtag DW_TAG_variable, DW_AT_name("previous_content"), DW_AT_symbol_name("_previous_content")
.dwattr DW$51, DW_AT_type(*DW$T$10)
.dwattr DW$51, DW_AT_location[DW_OP_breg13 8]
.dwpsn "charger.c",213,7
MOV V9, #1 ; |213|
STR V9, [SP, #0] ; |213|
.dwpsn "charger.c",214,7
MOV V9, #0 ; |214|
STR V9, [SP, #4] ; |214|
.dwpsn "charger.c",219,3
MOV A1, #0 ; |219|
BL _MSI2C_AccessPage ; |219|
; |219|
.dwpsn "charger.c",222,3
MOV A1, #131 ; |222|
BL _MSI2C_MasterPollingReceiveAbb ; |222|
; |222|
AND V9, A1, #255 ; |222|
STR V9, [SP, #8] ; |222|
.dwpsn "charger.c",225,3
LDR V9, [SP, #8] ; |225|
ORR V9, V9, #48 ; |225|
MOV A1, #131 ; |225|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |225|
; |225|
.dwpsn "charger.c",228,3
MOV A1, #0 ; |228|
BL _MSI2C_AccessPage ; |228|
; |228|
.dwpsn "charger.c",231,3
MOV A1, #246 ; |231|
MOV A2, #8 ; |231|
BL _MSI2C_MasterPollingSendAbb ; |231|
; |231|
.dwpsn "charger.c",234,3
MOV A1, #0 ; |234|
BL _MSI2C_AccessPage ; |234|
; |234|
.dwpsn "charger.c",237,3
MOV A1, #104 ; |237|
MOV A2, #2 ; |237|
BL _MSI2C_MasterPollingSendAbb ; |237|
; |237|
.dwpsn "charger.c",240,3
MOV A1, #42 ; |240|
BL _MSI2C_MasterPollingReceiveAbb ; |240|
; |240|
AND V9, A1, #15 ; |240|
STR V9, [SP, #8] ; |240|
.dwpsn "charger.c",243,3
LDR V9, [SP, #8] ; |243|
ORR V9, V9, #8 ; |243|
MOV A1, #42 ; |243|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |243|
; |243|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L8
;*
;* Loop source line : 248
;* Loop closing brace source line : 257
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L8:
DW$L$_MADC_SP1_poll$2$B:
.dwpsn "charger.c",250,7
MOV A1, #42 ; |250|
BL _MSI2C_MasterPollingReceiveAbb ; |250|
; |250|
AND V9, A1, #1 ; |250|
STR V9, [SP, #0] ; |250|
.dwpsn "charger.c",251,7
MOV A1, #42 ; |251|
BL _MSI2C_MasterPollingReceiveAbb ; |251|
; |251|
AND V9, A1, #4 ; |251|
MOV V9, V9, ASR #2 ; |251|
STR V9, [SP, #4] ; |251|
.dwpsn "charger.c",252,7
ADR A2, SL3 ; |252|
MOV A1, #1 ; |252|
LDR A3, [SP, #0] ; |252|
BL _UART_Printf ; |252|
; |252|
.dwpsn "charger.c",254,7
ADR A2, SL5 ; |254|
MOV A1, #1 ; |254|
LDR A3, [SP, #4] ; |254|
BL _UART_Printf ; |254|
; |254|
.dwpsn "charger.c",257,14
LDR V9, [SP, #0] ; |257|
CMP V9, #0 ; |257|
BNE L8 ; |257|
; |257|
DW$L$_MADC_SP1_poll$2$E:
;* --------------------------------------------------------------------------*
DW$L$_MADC_SP1_poll$3$B:
LDR V9, [SP, #4] ; |257|
CMP V9, #0 ; |257|
BEQ L8 ; |257|
; |257|
DW$L$_MADC_SP1_poll$3$E:
;* --------------------------------------------------------------------------*
.dwpsn "charger.c",260,3
MOV A1, #0 ; |260|
BL _MSI2C_AccessPage ; |260|
; |260|
.dwpsn "charger.c",263,3
MOV A2, #0 ; |263|
MOV A1, #246 ; |263|
BL _MSI2C_MasterPollingSendAbb ; |263|
; |263|
.dwpsn "charger.c",265,3
MOV A1, #1 ; |265|
.dwpsn "charger.c",266,1
.dwcfa 0x0e, 16
LDMFD SP!, {A2, A3, A4, PC}
DW$52 .dwtag DW_TAG_loop
.dwattr DW$52, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\charger.asm:L8:1:1214374275")
.dwattr DW$52, DW_AT_begin_file("charger.c")
.dwattr DW$52, DW_AT_begin_line(0xf8)
.dwattr DW$52, DW_AT_end_line(0x101)
DW$53 .dwtag DW_TAG_loop_range
.dwattr DW$53, DW_AT_low_pc(DW$L$_MADC_SP1_poll$2$B)
.dwattr DW$53, DW_AT_high_pc(DW$L$_MADC_SP1_poll$2$E)
DW$54 .dwtag DW_TAG_loop_range
.dwattr DW$54, DW_AT_low_pc(DW$L$_MADC_SP1_poll$3$B)
.dwattr DW$54, DW_AT_high_pc(DW$L$_MADC_SP1_poll$3$E)
.dwendtag DW$52
.dwattr DW$48, DW_AT_end_file("charger.c")
.dwattr DW$48, DW_AT_end_line(0x10a)
.dwattr DW$48, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$48
;******************************************************************************
;* STRINGS *
;******************************************************************************
.sect ".text"
.align 4
SL1: .string 13,10," AC Precharge and USB precharge disabled",13,10,0
.align 4
SL2: .string 13,10," AC Precharge and USB precharge enabled",13,10,0
.sect ".text"
.align 4
.clink
.armfunc _MADC_SP1_poll_Measure
.state32
.global _MADC_SP1_poll_Measure
DW$55 .dwtag DW_TAG_subprogram, DW_AT_name("MADC_SP1_poll_Measure"), DW_AT_symbol_name("_MADC_SP1_poll_Measure")
.dwattr DW$55, DW_AT_low_pc(_MADC_SP1_poll_Measure)
.dwattr DW$55, DW_AT_high_pc(0x00)
.dwattr DW$55, DW_AT_begin_file("charger.c")
.dwattr DW$55, DW_AT_begin_line(0x10e)
.dwattr DW$55, DW_AT_begin_column(0x05)
.dwpsn "charger.c",271,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: MADC_SP1_poll_Measure *
;* *
;* Regs Modified : A1,A2,A3,A4,V9,SP,LR,SR *
;* Regs Used : A1,A2,A3,A4,V9,SP,LR,SR *
;* Local Frame Size : 0 Args + 12 Auto + 4 Save = 16 byte *
;*****************************************************************************
_MADC_SP1_poll_Measure:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {A2, A3, A4, LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 8
.dwcfa 0x80, 3, 2
.dwcfa 0x0e, 12
.dwcfa 0x80, 2, 3
.dwcfa 0x0e, 16
.dwcfa 0x80, 1, 4
.dwcfa 0x0e, 16
DW$56 .dwtag DW_TAG_variable, DW_AT_name("madc_busy"), DW_AT_symbol_name("_madc_busy")
.dwattr DW$56, DW_AT_type(*DW$T$10)
.dwattr DW$56, DW_AT_location[DW_OP_breg13 0]
DW$57 .dwtag DW_TAG_variable, DW_AT_name("madc_eocrt"), DW_AT_symbol_name("_madc_eocrt")
.dwattr DW$57, DW_AT_type(*DW$T$10)
.dwattr DW$57, DW_AT_location[DW_OP_breg13 4]
DW$58 .dwtag DW_TAG_variable, DW_AT_name("previous_content"), DW_AT_symbol_name("_previous_content")
.dwattr DW$58, DW_AT_type(*DW$T$10)
.dwattr DW$58, DW_AT_location[DW_OP_breg13 8]
.dwpsn "charger.c",272,7
MOV V9, #1 ; |272|
STR V9, [SP, #0] ; |272|
.dwpsn "charger.c",273,7
MOV V9, #0 ; |273|
STR V9, [SP, #4] ; |273|
.dwpsn "charger.c",278,3
MOV A1, #0 ; |278|
BL _MSI2C_AccessPage ; |278|
; |278|
.dwpsn "charger.c",281,3
MOV A1, #131 ; |281|
BL _MSI2C_MasterPollingReceiveAbb ; |281|
; |281|
AND V9, A1, #255 ; |281|
STR V9, [SP, #8] ; |281|
.dwpsn "charger.c",284,3
LDR V9, [SP, #8] ; |284|
ORR V9, V9, #48 ; |284|
MOV A1, #131 ; |284|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |284|
; |284|
.dwpsn "charger.c",287,3
MOV A1, #0 ; |287|
BL _MSI2C_AccessPage ; |287|
; |287|
.dwpsn "charger.c",290,3
MOV A1, #246 ; |290|
MOV A2, #8 ; |290|
BL _MSI2C_MasterPollingSendAbb ; |290|
; |290|
.dwpsn "charger.c",293,3
MOV A1, #0 ; |293|
BL _MSI2C_AccessPage ; |293|
; |293|
.dwpsn "charger.c",296,3
MOV A1, #104 ; |296|
MOV A2, #2 ; |296|
BL _MSI2C_MasterPollingSendAbb ; |296|
; |296|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -