⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fm_tea5761.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
DW$53	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$53, DW_AT_type(*DW$T$10)
	.dwattr DW$53, DW_AT_location[DW_OP_breg13 4]
	.dwpsn	"FM_TEA5761.c",53,4
        MOV       A1, #0                ; |53| 
        LDR       A2, CON5              ; |53| 
        STRB      A1, [A2, #0]          ; |53| 
	.dwpsn	"FM_TEA5761.c",56,5
        MOV       A1, #43               ; |56| 
        LDR       A2, CON6              ; |56| 
        STRB      A1, [A2, #0]          ; |56| 
	.dwpsn	"FM_TEA5761.c",60,5
        MOV       A1, #237              ; |60| 
        LDR       A2, CON7              ; |60| 
        STRB      A1, [A2, #0]          ; |60| 
	.dwpsn	"FM_TEA5761.c",65,5
        MOV       A1, #64               ; |65| 
        LDR       A2, CON8              ; |65| 
        STRB      A1, [A2, #0]          ; |65| 
	.dwpsn	"FM_TEA5761.c",68,2
        MOV       A1, #16               ; |68| 
        LDR       A2, CON9              ; |68| 
        STRB      A1, [A2, #0]          ; |68| 
	.dwpsn	"FM_TEA5761.c",71,2
        MOV       A1, #0                ; |71| 
        LDR       A2, CON10             ; |71| 
        STRB      A1, [A2, #0]          ; |71| 
	.dwpsn	"FM_TEA5761.c",74,5
        MOV       A1, #0                ; |74| 
        LDR       A2, CON11             ; |74| 
        STRB      A1, [A2, #0]          ; |74| 
	.dwpsn	"FM_TEA5761.c",78,5
        MOV       A1, #17               ; |78| 
        LDR       A2, CON5              ; |78| 
        MOV       A3, #7                ; |78| 
        BL        $MSI2C_MasterPollingSendFM ; |78| 
        ; |78| 
	.dwpsn	"FM_TEA5761.c",79,7
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L1
;*
;*   Loop source line                : 79
;*   Loop closing brace source line  : 97
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L1:    
DW$L$$Init_TEA5761$2$B:
	.dwpsn	"FM_TEA5761.c",81,2
        MOV       A1, #16               ; |81| 
        STR       A1, [SP, #0]          ; |81| 
	.dwpsn	"FM_TEA5761.c",83,4
        MOV       A1, SP
        LDRB      A2, [A1, #0]          ; |83| 
        MOV       A1, #17               ; |83| 
        BL        $MSI2C_MasterPollingReceiveFM ; |83| 
        ; |83| 
	.dwpsn	"FM_TEA5761.c",84,3
        MOV       A1, #1                ; |84| 
        ADR       A2, SL1               ; |84| 
        BL        $UART_Printf          ; |84| 
        ; |84| 
	.dwpsn	"FM_TEA5761.c",85,3
        MOV       A1, #1                ; |85| 
        ADR       A2, SL2               ; |85| 
        LDR       A3, [SP, #0]          ; |85| 
        BL        $UART_Printf          ; |85| 
        ; |85| 
	.dwpsn	"FM_TEA5761.c",86,7
        MOV       A1, #0                ; |86| 
        STR       A1, [SP, #4]          ; |86| 
	.dwpsn	"FM_TEA5761.c",86,11
        LDR       A1, [SP, #0]          ; |86| 
        LDR       A2, [SP, #4]          ; |86| 
        CMP       A2, A1                ; |86| 
        BGE       L4                    ; |86| 
        ; |86| 
DW$L$$Init_TEA5761$2$E:
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L2
;*
;*   Loop source line                : 86
;*   Loop closing brace source line  : 91
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L2:    
DW$L$$Init_TEA5761$3$B:
	.dwpsn	"FM_TEA5761.c",88,4
        LDR       A1, [SP, #4]          ; |88| 
        LDR       A2, CON14             ; |88| 
        LDRB      A4, [A2, A1]          ; |88| 
        MOV       A1, #1                ; |88| 
        ADR       A2, SL3               ; |88| 
        LDR       A3, [SP, #4]          ; |88| 
        BL        $UART_Printf          ; |88| 
        ; |88| 
	.dwpsn	"FM_TEA5761.c",89,4
        LDR       A1, [SP, #4]          ; |89| 
        MOV       A2, #5                ; |89| 
        BL        I$MOD                 ; |89| 
        ; |89| 
        CMP       A1, #0                ; |89| 
        BNE       L3                    ; |89| 
        ; |89| 
DW$L$$Init_TEA5761$3$E:
;* --------------------------------------------------------------------------*
DW$L$$Init_TEA5761$4$B:
	.dwpsn	"FM_TEA5761.c",90,4
        MOV       A1, #1                ; |90| 
        ADR       A2, SL1               ; |90| 
        BL        $UART_Printf          ; |90| 
        ; |90| 
DW$L$$Init_TEA5761$4$E:
;* --------------------------------------------------------------------------*
L3:    
DW$L$$Init_TEA5761$5$B:
	.dwpsn	"FM_TEA5761.c",86,20
        LDR       A1, [SP, #4]          ; |86| 
        ADD       A1, #1                ; |86| 
        STR       A1, [SP, #4]          ; |86| 
	.dwpsn	"FM_TEA5761.c",86,11
        LDR       A1, [SP, #0]          ; |86| 
        LDR       A2, [SP, #4]          ; |86| 
        CMP       A2, A1                ; |86| 
        BLT       L2                    ; |86| 
        ; |86| 
DW$L$$Init_TEA5761$5$E:
;* --------------------------------------------------------------------------*
L4:    
DW$L$$Init_TEA5761$6$B:
	.dwpsn	"FM_TEA5761.c",93,4
        LDR       A1, CON16             ; |93| 
        LDRB      A1, [A1, #0]          ; |93| 
        CMP       A1, #87               ; |93| 
        BNE       L5                    ; |93| 
        ; |93| 
DW$L$$Init_TEA5761$6$E:
;* --------------------------------------------------------------------------*
DW$L$$Init_TEA5761$7$B:
        LDR       A1, CON17             ; |93| 
        LDRB      A1, [A1, #0]          ; |93| 
        CMP       A1, #96               ; |93| 
        BNE       L5                    ; |93| 
        ; |93| 
DW$L$$Init_TEA5761$7$E:
;* --------------------------------------------------------------------------*
DW$L$$Init_TEA5761$8$B:
	.dwpsn	"FM_TEA5761.c",94,4
        MOV       A1, #1                ; |94| 
        ADR       A2, SL4               ; |94| 
        BL        $UART_Printf          ; |94| 
        ; |94| 
        B         L1                    ; |94| 
        ; |94| 
DW$L$$Init_TEA5761$8$E:
;* --------------------------------------------------------------------------*
L5:    
DW$L$$Init_TEA5761$9$B:
	.dwpsn	"FM_TEA5761.c",96,4
        MOV       A1, #1                ; |96| 
        ADR       A2, SL5               ; |96| 
        BL        $UART_Printf          ; |96| 
        ; |96| 
	.dwpsn	"FM_TEA5761.c",79,7
        B         L1                    ; |79| 
        ; |79| 
DW$L$$Init_TEA5761$9$E:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 12

DW$54	.dwtag  DW_TAG_loop
	.dwattr DW$54, DW_AT_name("E:\WLQUAN\testcode823\testcode\poseidon2.220061018\ARM\arm_src\FM_TEA5761.asm:L1:1:1161853054")
	.dwattr DW$54, DW_AT_begin_file("FM_TEA5761.c")
	.dwattr DW$54, DW_AT_begin_line(0x4f)
	.dwattr DW$54, DW_AT_end_line(0x61)
DW$55	.dwtag  DW_TAG_loop_range
	.dwattr DW$55, DW_AT_low_pc(DW$L$$Init_TEA5761$2$B)
	.dwattr DW$55, DW_AT_high_pc(DW$L$$Init_TEA5761$2$E)
DW$56	.dwtag  DW_TAG_loop_range
	.dwattr DW$56, DW_AT_low_pc(DW$L$$Init_TEA5761$6$B)
	.dwattr DW$56, DW_AT_high_pc(DW$L$$Init_TEA5761$6$E)
DW$57	.dwtag  DW_TAG_loop_range
	.dwattr DW$57, DW_AT_low_pc(DW$L$$Init_TEA5761$7$B)
	.dwattr DW$57, DW_AT_high_pc(DW$L$$Init_TEA5761$7$E)
DW$58	.dwtag  DW_TAG_loop_range
	.dwattr DW$58, DW_AT_low_pc(DW$L$$Init_TEA5761$9$B)
	.dwattr DW$58, DW_AT_high_pc(DW$L$$Init_TEA5761$9$E)
DW$59	.dwtag  DW_TAG_loop_range
	.dwattr DW$59, DW_AT_low_pc(DW$L$$Init_TEA5761$8$B)
	.dwattr DW$59, DW_AT_high_pc(DW$L$$Init_TEA5761$8$E)

DW$60	.dwtag  DW_TAG_loop
	.dwattr DW$60, DW_AT_name("E:\WLQUAN\testcode823\testcode\poseidon2.220061018\ARM\arm_src\FM_TEA5761.asm:L2:2:1161853054")
	.dwattr DW$60, DW_AT_begin_file("FM_TEA5761.c")
	.dwattr DW$60, DW_AT_begin_line(0x56)
	.dwattr DW$60, DW_AT_end_line(0x5b)
DW$61	.dwtag  DW_TAG_loop_range
	.dwattr DW$61, DW_AT_low_pc(DW$L$$Init_TEA5761$3$B)
	.dwattr DW$61, DW_AT_high_pc(DW$L$$Init_TEA5761$3$E)
DW$62	.dwtag  DW_TAG_loop_range
	.dwattr DW$62, DW_AT_low_pc(DW$L$$Init_TEA5761$4$B)
	.dwattr DW$62, DW_AT_high_pc(DW$L$$Init_TEA5761$4$E)
DW$63	.dwtag  DW_TAG_loop_range
	.dwattr DW$63, DW_AT_low_pc(DW$L$$Init_TEA5761$5$B)
	.dwattr DW$63, DW_AT_high_pc(DW$L$$Init_TEA5761$5$E)
	.dwendtag DW$60

	.dwendtag DW$54

	.dwattr DW$51, DW_AT_end_file("FM_TEA5761.c")
	.dwattr DW$51, DW_AT_end_line(0x63)
	.dwattr DW$51, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$51

	.sect	".text:v$2"
	.clink
	.global	_freq_set

DW$64	.dwtag  DW_TAG_subprogram, DW_AT_name("freq_set"), DW_AT_symbol_name("_freq_set")
	.dwattr DW$64, DW_AT_veneer(0x01)
	.dwattr DW$64, DW_AT_low_pc(_freq_set)
	.dwattr DW$64, DW_AT_high_pc(0x00)
	.dwattr DW$64, DW_AT_external(0x01)
	.state32

;*****************************************************************************
;* FUNCTION VENEER: _freq_set                                                *
;*****************************************************************************
_freq_set:
	 STMFD     sp!, {lr}
	 ADD       lr, pc, #1
	 BX        lr
	.state16
	 BL        $freq_set
	 BX        pc
	 NOP
	.state32
	 LDMFD     sp!, {pc}
	.state16
	.dwendtag DW$64


	.sect	".text"
	.clink
	.global	$freq_set

DW$65	.dwtag  DW_TAG_subprogram, DW_AT_name("freq_set"), DW_AT_symbol_name("$freq_set")
	.dwattr DW$65, DW_AT_low_pc($freq_set)
	.dwattr DW$65, DW_AT_high_pc(0x00)
	.dwattr DW$65, DW_AT_begin_file("FM_TEA5761.c")
	.dwattr DW$65, DW_AT_begin_line(0x65)
	.dwattr DW$65, DW_AT_begin_column(0x06)
	.dwpsn	"FM_TEA5761.c",102,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: freq_set                                                   *
;*                                                                           *
;*   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                 *
;*****************************************************************************
$freq_set:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        PUSH      {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
;* A1    assigned to _Freq
DW$66	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Freq"), DW_AT_symbol_name("_Freq")
	.dwattr DW$66, DW_AT_type(*DW$T$36)
	.dwattr DW$66, DW_AT_location[DW_OP_reg0]
DW$67	.dwtag  DW_TAG_variable, DW_AT_name("Freq"), DW_AT_symbol_name("_Freq")
	.dwattr DW$67, DW_AT_type(*DW$T$36)
	.dwattr DW$67, DW_AT_location[DW_OP_breg13 0]
DW$68	.dwtag  DW_TAG_variable, DW_AT_name("fi"), DW_AT_symbol_name("_fi")
	.dwattr DW$68, DW_AT_type(*DW$T$13)
	.dwattr DW$68, DW_AT_location[DW_OP_breg13 4]
DW$69	.dwtag  DW_TAG_variable, DW_AT_name("freq_pll_value"), DW_AT_symbol_name("_freq_pll_value")
	.dwattr DW$69, DW_AT_type(*DW$T$9)
	.dwattr DW$69, DW_AT_location[DW_OP_breg13 8]
        MOV       A2, SP
        STRH      A1, [A2, #0]          ; |102| 
	.dwpsn	"FM_TEA5761.c",105,1
        MOV       A1, SP
        LDRH      A1, [A1, #0]          ; |105| 
        LDR       A2, CON18             ; |105| 
        MUL       A2, A1
        STR       A2, [SP, #4]          ; |105| 
	.dwpsn	"FM_TEA5761.c",106,1
        LDR       A1, [SP, #4]          ; |106| 
        LDR       A2, CON19             ; |106| 
        ADD       A1, A2, A1            ; |106| 
        LSL       A1, A1, #2
        LSR       A1, A1, #15
        MOV       A2, SP
        STRH      A1, [A2, #8]          ; |106| 
	.dwpsn	"FM_TEA5761.c",107,1
        MOV       A1, SP
        LDRH      A1, [A1, #8]          ; |107| 
        LSR       A1, A1, #8            ; |107| 
        LDR       A2, CON6              ; |107| 
        STRB      A1, [A2, #0]          ; |107| 
	.dwpsn	"FM_TEA5761.c",108,1
        MOV       A1, SP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -