📄 fm_tea5760.asm
字号:
.dwpsn "FM_TEA5760.c",123,1
MOV A1, #16 ; |123|
ADD A1, A1, #9984 ; |123|
LDRH V9, [SP, #0] ; |123|
MUL V9, A1, V9 ; |123|
STR V9, [SP, #4] ; |123|
.dwpsn "FM_TEA5760.c",124,1
LDR V9, [SP, #4] ; |124|
ADD V9, V9, #744 ; |124|
ADD V9, V9, #224256 ; |124|
MOV V9, V9, LSL #2
MOV V9, V9, LSR #15
STRH V9, [SP, #8] ; |124|
.dwpsn "FM_TEA5760.c",125,1
LDRH V9, [SP, #8] ; |125|
MOV V9, V9, LSR #8 ; |125|
LDR A1, CON7 ; |125|
ORR V9, V9, #192 ; |125|
STRB V9, [A1, #0] ; |125|
.dwpsn "FM_TEA5760.c",126,1
LDR A1, CON8 ; |126|
LDRH V9, [SP, #8] ; |126|
STRB V9, [A1, #0] ; |126|
.dwpsn "FM_TEA5760.c",127,1
MOV V9, #64 ; |127|
LDR A1, CON9 ; |127|
STRB V9, [A1, #0] ; |127|
.dwpsn "FM_TEA5760.c",128,1
MOV V9, #96 ; |128|
ADD V9, V9, #8704 ; |128|
LDRH A1, [SP, #0] ; |128|
CMP A1, V9 ; |128|
BGE L8 ; |128|
; |128|
;* --------------------------------------------------------------------------*
.dwpsn "FM_TEA5760.c",128,16
LDR A1, CON6 ; |128|
LDRB V9, [A1, #3] ; |128|
ORR V9, V9, #32 ; |128|
STRB V9, [A1, #3] ; |128|
;* --------------------------------------------------------------------------*
L8:
.dwpsn "FM_TEA5760.c",129,1
MOV V9, #113 ; |129|
LDR A1, CON10 ; |129|
STRB V9, [A1, #0] ; |129|
.dwpsn "FM_TEA5760.c",131,2
LDR A2, CON6 ; |131|
MOV A3, #7 ; |131|
MOV A1, #17 ; |131|
BL _MSI2C_MasterPollingSendFM ; |131|
; |131|
.dwpsn "FM_TEA5760.c",132,2
MOV A2, #16 ; |132|
MOV A1, #17 ; |132|
BL _MSI2C_MasterPollingReceiveFM ; |132|
; |132|
.dwpsn "FM_TEA5760.c",134,3
ADR A2, SL1 ; |134|
MOV A1, #1 ; |134|
BL _UART_Printf ; |134|
; |134|
.dwpsn "FM_TEA5760.c",135,3
ADR A2, SL2 ; |135|
MOV A1, #1 ; |135|
LDR A3, [SP, #16] ; |135|
BL _UART_Printf ; |135|
; |135|
.dwpsn "FM_TEA5760.c",136,7
MOV V9, #0 ; |136|
STR V9, [SP, #12] ; |136|
.dwpsn "FM_TEA5760.c",136,11
LDR V9, [SP, #16] ; |136|
LDR A1, [SP, #12] ; |136|
CMP A1, V9 ; |136|
BGE L11 ; |136|
; |136|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L9
;*
;* Loop source line : 136
;* Loop closing brace source line : 141
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L9:
DW$L$_freq_set$4$B:
.dwpsn "FM_TEA5760.c",138,4
LDR V9, [SP, #12] ; |138|
LDR A1, CON15 ; |138|
LDR A3, [SP, #12] ; |138|
ADR A2, SL3 ; |138|
LDRB A4, [A1, +V9] ; |138|
MOV A1, #1 ; |138|
BL _UART_Printf ; |138|
; |138|
.dwpsn "FM_TEA5760.c",139,4
MOV A2, #5 ; |139|
LDR A1, [SP, #12] ; |139|
BL I_MOD ; |139|
; |139|
CMP A1, #0 ; |139|
BNE L10 ; |139|
; |139|
DW$L$_freq_set$4$E:
;* --------------------------------------------------------------------------*
DW$L$_freq_set$5$B:
.dwpsn "FM_TEA5760.c",140,4
ADR A2, SL1 ; |140|
MOV A1, #1 ; |140|
BL _UART_Printf ; |140|
; |140|
DW$L$_freq_set$5$E:
;* --------------------------------------------------------------------------*
L10:
DW$L$_freq_set$6$B:
.dwpsn "FM_TEA5760.c",136,20
LDR V9, [SP, #12] ; |136|
ADD V9, V9, #1 ; |136|
STR V9, [SP, #12] ; |136|
.dwpsn "FM_TEA5760.c",136,11
LDR A1, [SP, #12] ; |136|
LDR V9, [SP, #16] ; |136|
CMP A1, V9 ; |136|
BLT L9 ; |136|
; |136|
DW$L$_freq_set$6$E:
;* --------------------------------------------------------------------------*
L11:
.dwpsn "FM_TEA5760.c",143,4
LDR V9, CON17 ; |143|
LDRB V9, [V9, #0] ; |143|
CMP V9, #87 ; |143|
BNE L12 ; |143|
; |143|
;* --------------------------------------------------------------------------*
LDR V9, CON18 ; |143|
LDRB V9, [V9, #0] ; |143|
CMP V9, #96 ; |143|
BNE L12 ; |143|
; |143|
;* --------------------------------------------------------------------------*
.dwpsn "FM_TEA5760.c",144,4
ADR A2, SL4 ; |144|
MOV A1, #1 ; |144|
BL _UART_Printf ; |144|
; |144|
B L13 ; |144|
; |144|
;* --------------------------------------------------------------------------*
L12:
.dwpsn "FM_TEA5760.c",146,4
ADR A2, SL5 ; |146|
MOV A1, #1 ; |146|
BL _UART_Printf ; |146|
; |146|
;* --------------------------------------------------------------------------*
L13:
.dwpsn "FM_TEA5760.c",149,1
ADD SP, SP, #20
.dwcfa 0x0e, 4
LDMFD SP!, {PC}
DW$70 .dwtag DW_TAG_loop
.dwattr DW$70, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\FM_TEA5760.asm:L9:1:1214374288")
.dwattr DW$70, DW_AT_begin_file("FM_TEA5760.c")
.dwattr DW$70, DW_AT_begin_line(0x88)
.dwattr DW$70, DW_AT_end_line(0x8d)
DW$71 .dwtag DW_TAG_loop_range
.dwattr DW$71, DW_AT_low_pc(DW$L$_freq_set$4$B)
.dwattr DW$71, DW_AT_high_pc(DW$L$_freq_set$4$E)
DW$72 .dwtag DW_TAG_loop_range
.dwattr DW$72, DW_AT_low_pc(DW$L$_freq_set$5$B)
.dwattr DW$72, DW_AT_high_pc(DW$L$_freq_set$5$E)
DW$73 .dwtag DW_TAG_loop_range
.dwattr DW$73, DW_AT_low_pc(DW$L$_freq_set$6$B)
.dwattr DW$73, DW_AT_high_pc(DW$L$_freq_set$6$E)
.dwendtag DW$70
.dwattr DW$63, DW_AT_end_file("FM_TEA5760.c")
.dwattr DW$63, DW_AT_end_line(0x95)
.dwattr DW$63, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$63
.sect ".text"
.align 4
.clink
.armfunc _delay_ms
.state32
.global _delay_ms
DW$74 .dwtag DW_TAG_subprogram, DW_AT_name("delay_ms"), DW_AT_symbol_name("_delay_ms")
.dwattr DW$74, DW_AT_low_pc(_delay_ms)
.dwattr DW$74, DW_AT_high_pc(0x00)
.dwattr DW$74, DW_AT_begin_file("FM_TEA5760.c")
.dwattr DW$74, DW_AT_begin_line(0xa4)
.dwattr DW$74, DW_AT_begin_column(0x06)
.dwpsn "FM_TEA5760.c",165,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: delay_ms *
;* *
;* Regs Modified : A1,V9,SP,SR *
;* Regs Used : A1,V9,SP,SR *
;* Local Frame Size : 0 Args + 12 Auto + 0 Save = 12 byte *
;*****************************************************************************
_delay_ms:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
SUB SP, SP, #12
.dwcfa 0x0e, 12
;* A1 assigned to _milisec
DW$75 .dwtag DW_TAG_formal_parameter, DW_AT_name("milisec"), DW_AT_symbol_name("_milisec")
.dwattr DW$75, DW_AT_type(*DW$T$23)
.dwattr DW$75, DW_AT_location[DW_OP_reg0]
DW$76 .dwtag DW_TAG_variable, DW_AT_name("milisec"), DW_AT_symbol_name("_milisec")
.dwattr DW$76, DW_AT_type(*DW$T$23)
.dwattr DW$76, DW_AT_location[DW_OP_breg13 0]
DW$77 .dwtag DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
.dwattr DW$77, DW_AT_type(*DW$T$10)
.dwattr DW$77, DW_AT_location[DW_OP_breg13 4]
DW$78 .dwtag DW_TAG_variable, DW_AT_name("j"), DW_AT_symbol_name("_j")
.dwattr DW$78, DW_AT_type(*DW$T$10)
.dwattr DW$78, DW_AT_location[DW_OP_breg13 8]
STRB A1, [SP, #0] ; |165|
.dwpsn "FM_TEA5760.c",167,9
MOV V9, #0 ; |167|
STR V9, [SP, #4] ; |167|
.dwpsn "FM_TEA5760.c",167,13
LDR A1, [SP, #4] ; |167|
LDRB V9, [SP, #0] ; |167|
CMP A1, V9 ; |167|
BGE L17 ; |167|
; |167|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L14
;*
;* Loop source line : 167
;* Loop closing brace source line : 171
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L14:
DW$L$_delay_ms$2$B:
.dwpsn "FM_TEA5760.c",169,9
MOV V9, #0 ; |169|
STR V9, [SP, #8] ; |169|
.dwpsn "FM_TEA5760.c",169,13
LDR V9, [SP, #8] ; |169|
CMP V9, #100 ; |169|
BGE L16 ; |169|
; |169|
DW$L$_delay_ms$2$E:
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L15
;*
;* Loop source line : 169
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L15:
DW$L$_delay_ms$3$B:
.dwpsn "FM_TEA5760.c",169,19
LDR V9, [SP, #8] ; |169|
ADD V9, V9, #1 ; |169|
STR V9, [SP, #8] ; |169|
.dwpsn "FM_TEA5760.c",169,13
LDR V9, [SP, #8] ; |169|
CMP V9, #100 ; |169|
BLT L15 ; |169|
; |169|
DW$L$_delay_ms$3$E:
;* --------------------------------------------------------------------------*
L16:
DW$L$_delay_ms$4$B:
.dwpsn "FM_TEA5760.c",167,23
LDR V9, [SP, #4] ; |167|
ADD V9, V9, #1 ; |167|
STR V9, [SP, #4] ; |167|
.dwpsn "FM_TEA5760.c",167,13
LDR A1, [SP, #4] ; |167|
LDRB V9, [SP, #0] ; |167|
CMP A1, V9 ; |167|
BLT L14 ; |167|
; |167|
DW$L$_delay_ms$4$E:
;* --------------------------------------------------------------------------*
L17:
.dwpsn "FM_TEA5760.c",172,1
ADD SP, SP, #12
.dwcfa 0x0e, 0
BX LR
DW$79 .dwtag DW_TAG_loop
.dwattr DW$79, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\FM_TEA5760.asm:L14:1:1214374288")
.dwattr DW$79, DW_AT_begin_file("FM_TEA5760.c")
.dwattr DW$79, DW_AT_begin_line(0xa7)
.dwattr DW$79, DW_AT_end_line(0xab)
DW$80 .dwtag DW_TAG_loop_range
.dwattr DW$80, DW_AT_low_pc(DW$L$_delay_ms$2$B)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -