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

📄 triton_voice_loop.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.armfunc _McsiVoiceLoopBack
	.state32
	.global	_McsiVoiceLoopBack

DW$90	.dwtag  DW_TAG_subprogram, DW_AT_name("McsiVoiceLoopBack"), DW_AT_symbol_name("_McsiVoiceLoopBack")
	.dwattr DW$90, DW_AT_low_pc(_McsiVoiceLoopBack)
	.dwattr DW$90, DW_AT_high_pc(0x00)
	.dwattr DW$90, DW_AT_begin_file("Triton_voice_loop.c")
	.dwattr DW$90, DW_AT_begin_line(0x6c)
	.dwattr DW$90, DW_AT_begin_column(0x06)
	.dwpsn	"Triton_voice_loop.c",109,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: McsiVoiceLoopBack                                          *
;*                                                                           *
;*   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 + 20 Auto + 4 Save = 24 byte                 *
;*****************************************************************************
_McsiVoiceLoopBack:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {LR}
	.dwcfa	0x0e, 4
	.dwcfa	0x80, 14, 1
        SUB       SP, SP, #20
	.dwcfa	0x0e, 24
DW$91	.dwtag  DW_TAG_variable, DW_AT_name("val"), DW_AT_symbol_name("_val")
	.dwattr DW$91, DW_AT_type(*DW$T$9)
	.dwattr DW$91, DW_AT_location[DW_OP_breg13 0]
DW$92	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$92, DW_AT_type(*DW$T$10)
	.dwattr DW$92, DW_AT_location[DW_OP_breg13 4]
DW$93	.dwtag  DW_TAG_variable, DW_AT_name("end_of_dma"), DW_AT_symbol_name("_end_of_dma")
	.dwattr DW$93, DW_AT_type(*DW$T$10)
	.dwattr DW$93, DW_AT_location[DW_OP_breg13 8]
DW$94	.dwtag  DW_TAG_variable, DW_AT_name("temp"), DW_AT_symbol_name("_temp")
	.dwattr DW$94, DW_AT_type(*DW$T$10)
	.dwattr DW$94, DW_AT_location[DW_OP_breg13 12]
DW$95	.dwtag  DW_TAG_variable, DW_AT_name("reg_val"), DW_AT_symbol_name("_reg_val")
	.dwattr DW$95, DW_AT_type(*DW$T$22)
	.dwattr DW$95, DW_AT_location[DW_OP_breg13 16]
	.dwpsn	"Triton_voice_loop.c",112,7
        MOV       V9, #0                ; |112| 
        STR       V9, [SP, #8]          ; |112| 
	.dwpsn	"Triton_voice_loop.c",128,3
        LDR       A1, CON18             ; |128| 
        BL        _MCSI_disable         ; |128| 
        ; |128| 
	.dwpsn	"Triton_voice_loop.c",136,3
        MOV       V9, #0                ; |136| 
        LDR       A1, CON18             ; |136| 
        STRH      V9, [A1, #0]          ; |136| 
	.dwpsn	"Triton_voice_loop.c",138,2
        MOV       V9, #15               ; |138| 
        LDR       A1, CON19             ; |138| 
        STRH      V9, [A1, #0]          ; |138| 
	.dwpsn	"Triton_voice_loop.c",142,4
        MOV       V9, #1                ; |142| 
        LDR       A1, CON20             ; |142| 
        STRH      V9, [A1, #0]          ; |142| 
	.dwpsn	"Triton_voice_loop.c",143,3
        MOV       V9, #0                ; |143| 
        LDR       A1, CON21             ; |143| 
        STRH      V9, [A1, #0]          ; |143| 
	.dwpsn	"Triton_voice_loop.c",146,2
        MOV       V9, #13               ; |146| 
        LDR       A1, CON22             ; |146| 
        STRH      V9, [A1, #0]          ; |146| 
	.dwpsn	"Triton_voice_loop.c",147,3
        MOV       V9, #0                ; |147| 
        LDR       A1, CON23             ; |147| 
        STRH      V9, [A1, #0]          ; |147| 
	.dwpsn	"Triton_voice_loop.c",155,3
        BL        _triton_voice_loop_config ; |155| 
        ; |155| 
	.dwpsn	"Triton_voice_loop.c",160,2
        MOV       A1, #212              ; |160| 
        BL        _MSI2C_MasterPollingReceiveAbb ; |160| 
        ; |160| 
        STRB      A1, [SP, #16]         ; |160| 
	.dwpsn	"Triton_voice_loop.c",161,4
        MOV       V9, #129              ; |161| 
        STRB      V9, [SP, #16]         ; |161| 
	.dwpsn	"Triton_voice_loop.c",163,4
        MOV       A1, #212              ; |163| 
        LDRB      A2, [SP, #16]         ; |163| 
        BL        _MSI2C_MasterPollingSendAbb ; |163| 
        ; |163| 
	.dwpsn	"Triton_voice_loop.c",165,2
        MOV       A1, #1                ; |165| 
        BL        _Triton_Ear_Amp_Gain_Settings ; |165| 
        ; |165| 
	.dwpsn	"Triton_voice_loop.c",166,2
        MOV       A1, #223              ; |166| 
        MOV       A2, #1                ; |166| 
        BL        _MSI2C_MasterPollingSendAbb ; |166| 
        ; |166| 
	.dwpsn	"Triton_voice_loop.c",169,2
        MOV       A1, #214              ; |169| 
        BL        _MSI2C_MasterPollingReceiveAbb ; |169| 
        ; |169| 
        STRB      A1, [SP, #16]         ; |169| 
	.dwpsn	"Triton_voice_loop.c",170,4
        LDRB      V9, [SP, #16]         ; |170| 
        AND       V9, V9, #15           ; |170| 
        ORR       V9, V9, #48           ; |170| 
        STRB      V9, [SP, #16]         ; |170| 
	.dwpsn	"Triton_voice_loop.c",172,2
        MOV       A1, #214              ; |172| 
        LDRB      A2, [SP, #16]         ; |172| 
        BL        _MSI2C_MasterPollingSendAbb ; |172| 
        ; |172| 
	.dwpsn	"Triton_voice_loop.c",182,3
        MOV       A2, #16               ; |182| 
        MOV       A1, #219              ; |182| 
        BL        _MSI2C_MasterPollingSendAbb ; |182| 
        ; |182| 
	.dwpsn	"Triton_voice_loop.c",196,2
        MOV       A1, #210              ; |196| 
        BL        _MSI2C_MasterPollingReceiveAbb ; |196| 
        ; |196| 
        STRB      A1, [SP, #16]         ; |196| 
	.dwpsn	"Triton_voice_loop.c",198,2
        MOV       A1, #210              ; |198| 
        MOV       A2, #19               ; |198| 
        BL        _MSI2C_MasterPollingSendAbb ; |198| 
        ; |198| 
;* --------------------------------------------------------------------------*
	.dwpsn	"Triton_voice_loop.c",203,2
        ADR       A2, SL1               ; |203| 
        MOV       A1, #1                ; |203| 
        BL        _UART_Printf          ; |203| 
        ; |203| 
	.dwpsn	"Triton_voice_loop.c",204,2
        ADR       A2, SL2               ; |204| 
        MOV       A1, #1                ; |204| 
        BL        _UART_Printf          ; |204| 
        ; |204| 
	.dwpsn	"Triton_voice_loop.c",205,2
        ADR       A2, SL3               ; |205| 
        MOV       A1, #1                ; |205| 
        BL        _UART_Printf          ; |205| 
        ; |205| 
	.dwpsn	"Triton_voice_loop.c",206,3
        MOV       A1, #1                ; |206| 
        BL        _UART_GetNum          ; |206| 
        ; |206| 
        STRH      A1, [SP, #0]          ; |206| 
	.dwpsn	"Triton_voice_loop.c",207,6
        MOV       A1, #1                ; |207| 
        ADR       A2, SL4               ; |207| 
        BL        _UART_Printf          ; |207| 
        ; |207| 
	.dwpsn	"Triton_voice_loop.c",208,3
        MOV       A2, #0                ; |208| 
        LDR       A1, CON30             ; |208| 
        LDR       A3, CON32             ; |208| 
        BL        _memset               ; |208| 
        ; |208| 
	.dwpsn	"Triton_voice_loop.c",210,9
        B         L11                   ; |210| 
        ; |210| 
;* --------------------------------------------------------------------------*

DW$96	.dwtag  DW_TAG_lexical_block, DW_AT_low_pc(0x00), DW_AT_high_pc(0x00)
;* --------------------------------------------------------------------------*
L1:    
	.dwpsn	"Triton_voice_loop.c",215,7
        LDR       A1, CON18             ; |215| 
        BL        _MCSI_enable          ; |215| 
        ; |215| 
	.dwpsn	"Triton_voice_loop.c",217,12
        MOV       V9, #0                ; |217| 
        STR       V9, [SP, #4]          ; |217| 
	.dwpsn	"Triton_voice_loop.c",217,16
        LDR       V9, [SP, #4]          ; |217| 
        CMP       V9, #4096             ; |217| 
        BGE       L3                    ; |217| 
        ; |217| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L2
;*
;*   Loop source line                : 217
;*   Loop closing brace source line  : 220
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L2:    
DW$L$_McsiVoiceLoopBack$5$B:
	.dwpsn	"Triton_voice_loop.c",220,5
        LDR       V9, [SP, #4]          ; |220| 
        MOV       A1, V9, LSL #1        ; |220| 
        LDR       A2, CON30             ; |220| 
        LDR       V9, CON12             ; |220| 
        LDRH      V9, [V9, #0]          ; |220| 
        STRH      V9, [A2, +A1]         ; |220| 
	.dwpsn	"Triton_voice_loop.c",217,23
        LDR       V9, [SP, #4]          ; |217| 
        ADD       V9, V9, #1            ; |217| 
        STR       V9, [SP, #4]          ; |217| 
	.dwpsn	"Triton_voice_loop.c",217,16
        LDR       V9, [SP, #4]          ; |217| 
        CMP       V9, #4096             ; |217| 
        BLT       L2                    ; |217| 
        ; |217| 
DW$L$_McsiVoiceLoopBack$5$E:
;* --------------------------------------------------------------------------*
L3:    
	.dwpsn	"Triton_voice_loop.c",221,11
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L4
;*
;*   Loop source line                : 221
;*   Loop closing brace source line  : 228
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L4:    
DW$L$_McsiVoiceLoopBack$7$B:
	.dwpsn	"Triton_voice_loop.c",223,9
        MOV       V9, #0                ; |223| 
        STR       V9, [SP, #4]          ; |223| 
	.dwpsn	"Triton_voice_loop.c",223,13
        LDR       V9, [SP, #4]          ; |223| 
        CMP       V9, #4096             ; |223| 
        BGE       L4                    ; |223| 
        ; |223| 
DW$L$_McsiVoiceLoopBack$7$E:
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L5
;*
;*   Loop source line                : 223
;*   Loop closing brace source line  : 227
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L5:    
DW$L$_McsiVoiceLoopBack$8$B:
	.dwpsn	"Triton_voice_loop.c",225,5
        LDR       V9, [SP, #4]          ; |225| 
        LDR       A1, CON30             ; |225| 
        MOV       V9, V9, LSL #1        ; |225| 
        LDRH      V9, [A1, +V9]         ; |225| 
        LDR       A1, CON10             ; |225| 
        STRH      V9, [A1, #0]          ; |225| 
	.dwpsn	"Triton_voice_loop.c",223,20
        LDR       V9, [SP, #4]          ; |223| 
        ADD       V9, V9, #1            ; |223| 
        STR       V9, [SP, #4]          ; |223| 
	.dwpsn	"Triton_voice_loop.c",223,13
        LDR       V9, [SP, #4]          ; |223| 
        CMP       V9, #4096             ; |223| 
        BLT       L5                    ; |223| 
        ; |223| 
DW$L$_McsiVoiceLoopBack$8$E:
;* --------------------------------------------------------------------------*
DW$L$_McsiVoiceLoopBack$9$B:
	.dwpsn	"Triton_voice_loop.c",221,11
        B         L4                    ; |221| 
        ; |221| 
DW$L$_McsiVoiceLoopBack$9$E:
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L6:    
	.dwpsn	"Triton_voice_loop.c",233,7
        LDR       A1, CON18             ; |233| 
        BL        _MCSI_enable          ; |233| 
        ; |233| 
	.dwpsn	"Triton_voice_loop.c",234,11
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L7
;*
;*   Loop source line                : 234
;*   Loop closing brace source line  : 256
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L7:    
DW$L$_McsiVoiceLoopBack$12$B:
	.dwpsn	"Triton_voice_loop.c",240,6
        LDR       V9, [SP, #12]         ; |240| 
        ADD       V9, V9, #500          ; |240| 
        STR       V9, [SP, #12]         ; |240| 
	.dwpsn	"Triton_voice_loop.c",241,11
        MOV       V9, #0                ; |241| 
        STR       V9, [SP, #4]          ; |241| 
	.dwpsn	"Triton_voice_loop.c",241,17
        LDR       V9, [SP, #4]          ; |241| 
        CMP       V9, #500              ; |241| 
        BGE       L9                    ; |241| 
        ; |241| 
DW$L$_McsiVoiceLoopBack$12$E:
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L8
;*
;*   Loop source line                : 241
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1

⌨️ 快捷键说明

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