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

📄 i2c_gpio.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;******************************************************************************
;* TMS470 C/C++ Codegen                                             PC v4.1.4 *
;* Date/Time created: Wed Jun 25 14:11:32 2008                                *
;******************************************************************************
	.compiler_opts --abi=ti_arm9_abi --endian=little --float_support=fpalib --quiet --silicon_version=5e 
	.state32

DW$CU	.dwtag  DW_TAG_compile_unit
	.dwattr DW$CU, DW_AT_name("i2c_gpio.c")
	.dwattr DW$CU, DW_AT_producer("TMS470 C/C++ Codegen PC v4.1.4 Copyright (c) 1996-2006 Texas Instruments Incorporated")
	.dwattr DW$CU, DW_AT_stmt_list(0x00)
	.dwattr DW$CU, DW_AT_TI_VERSION(0x01)

DW$1	.dwtag  DW_TAG_subprogram, DW_AT_name("MSI2C_InitConnectionAbb"), DW_AT_symbol_name("_MSI2C_InitConnectionAbb")
	.dwattr DW$1, DW_AT_declaration(0x01)
	.dwattr DW$1, DW_AT_external(0x01)

DW$2	.dwtag  DW_TAG_subprogram, DW_AT_name("MSI2C_MasterPollingReceiveAbb"), DW_AT_symbol_name("_MSI2C_MasterPollingReceiveAbb")
	.dwattr DW$2, DW_AT_type(*DW$T$21)
	.dwattr DW$2, DW_AT_declaration(0x01)
	.dwattr DW$2, DW_AT_external(0x01)
DW$3	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$21)
	.dwendtag DW$2


DW$4	.dwtag  DW_TAG_subprogram, DW_AT_name("MSI2C_MasterPollingSendAbb"), DW_AT_symbol_name("_MSI2C_MasterPollingSendAbb")
	.dwattr DW$4, DW_AT_declaration(0x01)
	.dwattr DW$4, DW_AT_external(0x01)
DW$5	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$21)
DW$6	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$21)
	.dwendtag DW$4


DW$7	.dwtag  DW_TAG_subprogram, DW_AT_name("UART_Printf"), DW_AT_symbol_name("_UART_Printf")
	.dwattr DW$7, DW_AT_declaration(0x01)
	.dwattr DW$7, DW_AT_external(0x01)
DW$8	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
DW$9	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$25)
DW$10	.dwtag  DW_TAG_unspecified_parameters
	.dwendtag DW$7


DW$11	.dwtag  DW_TAG_subprogram, DW_AT_name("UART_GetNum"), DW_AT_symbol_name("_UART_GetNum")
	.dwattr DW$11, DW_AT_type(*DW$T$10)
	.dwattr DW$11, DW_AT_declaration(0x01)
	.dwattr DW$11, DW_AT_external(0x01)
DW$12	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
	.dwendtag DW$11


DW$13	.dwtag  DW_TAG_subprogram, DW_AT_name("MSI2C_InitConnectionGPIO"), DW_AT_symbol_name("_MSI2C_InitConnectionGPIO")
	.dwattr DW$13, DW_AT_type(*DW$T$10)
	.dwattr DW$13, DW_AT_declaration(0x01)
	.dwattr DW$13, DW_AT_external(0x01)

DW$14	.dwtag  DW_TAG_subprogram, DW_AT_name("MSI2C_MasterPollingReceive"), DW_AT_symbol_name("_MSI2C_MasterPollingReceive")
	.dwattr DW$14, DW_AT_type(*DW$T$10)
	.dwattr DW$14, DW_AT_declaration(0x01)
	.dwattr DW$14, DW_AT_external(0x01)

DW$15	.dwtag  DW_TAG_subprogram, DW_AT_name("MSI2C_MasterPollingSend"), DW_AT_symbol_name("_MSI2C_MasterPollingSend")
	.dwattr DW$15, DW_AT_type(*DW$T$10)
	.dwattr DW$15, DW_AT_declaration(0x01)
	.dwattr DW$15, DW_AT_external(0x01)
;	C:\CCStudio_v3.3\tms470\cgtools\bin\acp470.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI60812 
	.sect	".text"
	.align	4
	.clink
	.armfunc _I2C_GPIO
	.state32
	.global	_I2C_GPIO

DW$16	.dwtag  DW_TAG_subprogram, DW_AT_name("I2C_GPIO"), DW_AT_symbol_name("_I2C_GPIO")
	.dwattr DW$16, DW_AT_low_pc(_I2C_GPIO)
	.dwattr DW$16, DW_AT_high_pc(0x00)
	.dwattr DW$16, DW_AT_begin_file("i2c_gpio.c")
	.dwattr DW$16, DW_AT_begin_line(0x0f)
	.dwattr DW$16, DW_AT_begin_column(0x06)
	.dwpsn	"i2c_gpio.c",16,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: I2C_GPIO                                                   *
;*                                                                           *
;*   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                 *
;*****************************************************************************
_I2C_GPIO:
;* --------------------------------------------------------------------------*
	.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$17	.dwtag  DW_TAG_variable, DW_AT_name("Restult_Test"), DW_AT_symbol_name("_Restult_Test")
	.dwattr DW$17, DW_AT_type(*DW$T$33)
	.dwattr DW$17, DW_AT_location[DW_OP_breg13 0]
DW$18	.dwtag  DW_TAG_variable, DW_AT_name("option"), DW_AT_symbol_name("_option")
	.dwattr DW$18, DW_AT_type(*DW$T$10)
	.dwattr DW$18, DW_AT_location[DW_OP_breg13 4]
DW$19	.dwtag  DW_TAG_variable, DW_AT_name("gpio_e_num"), DW_AT_symbol_name("_gpio_e_num")
	.dwattr DW$19, DW_AT_type(*DW$T$10)
	.dwattr DW$19, DW_AT_location[DW_OP_breg13 8]
	.dwpsn	"i2c_gpio.c",20,10
        MOV       V9, #0                ; |20| 
        STRH      V9, [SP, #0]          ; |20| 
	.dwpsn	"i2c_gpio.c",23,3
        BL        _MSI2C_InitConnectionGPIO ; |23| 
        ; |23| 
	.dwpsn	"i2c_gpio.c",25,2
        LDR       V9, [SP, #4]          ; |25| 
        CMP       V9, #0                ; |25| 
        BEQ       L8                    ; |25| 
        ; |25| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L1
;*
;*   Loop source line                : 25
;*   Loop closing brace source line  : 72
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L1:    
DW$L$_I2C_GPIO$2$B:
	.dwpsn	"i2c_gpio.c",27,3
        ADR       A2, SL1               ; |27| 
        MOV       A1, #1                ; |27| 
        BL        _UART_Printf          ; |27| 
        ; |27| 
	.dwpsn	"i2c_gpio.c",28,5
        ADR       A2, SL2               ; |28| 
        MOV       A1, #1                ; |28| 
        BL        _UART_Printf          ; |28| 
        ; |28| 
	.dwpsn	"i2c_gpio.c",29,5
        ADR       A2, SL1               ; |29| 
        MOV       A1, #1                ; |29| 
        BL        _UART_Printf          ; |29| 
        ; |29| 
	.dwpsn	"i2c_gpio.c",31,6
        ADR       A2, SL3               ; |31| 
        MOV       A1, #1                ; |31| 
        BL        _UART_Printf          ; |31| 
        ; |31| 
	.dwpsn	"i2c_gpio.c",32,3
        ADR       A2, SL4               ; |32| 
        MOV       A1, #1                ; |32| 
        BL        _UART_Printf          ; |32| 
        ; |32| 
	.dwpsn	"i2c_gpio.c",33,3
        ADR       A2, SL5               ; |33| 
        MOV       A1, #1                ; |33| 
        BL        _UART_Printf          ; |33| 
        ; |33| 
	.dwpsn	"i2c_gpio.c",34,3
        ADR       A2, SL6               ; |34| 
        MOV       A1, #1                ; |34| 
        BL        _UART_Printf          ; |34| 
        ; |34| 
	.dwpsn	"i2c_gpio.c",35,3
        ADR       A2, SL7               ; |35| 
        MOV       A1, #1                ; |35| 
        BL        _UART_Printf          ; |35| 
        ; |35| 
	.dwpsn	"i2c_gpio.c",37,3
        ADR       A2, SL8               ; |37| 
        MOV       A1, #1                ; |37| 
        BL        _UART_Printf          ; |37| 
        ; |37| 
	.dwpsn	"i2c_gpio.c",39,10
        MOV       A1, #1                ; |39| 
        BL        _UART_GetNum          ; |39| 
        ; |39| 
        STR       A1, [SP, #4]          ; |39| 
	.dwpsn	"i2c_gpio.c",41,10
        B         L6                    ; |41| 
        ; |41| 
DW$L$_I2C_GPIO$2$E:
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L2:    
DW$L$_I2C_GPIO$4$B:
	.dwpsn	"i2c_gpio.c",47,5
        ADR       A2, SL9               ; |47| 
        MOV       A1, #1                ; |47| 
        BL        _UART_Printf          ; |47| 
        ; |47| 
	.dwpsn	"i2c_gpio.c",48,11
        MOV       A1, #1                ; |48| 
        BL        _UART_GetNum          ; |48| 
        ; |48| 
        STR       A1, [SP, #8]          ; |48| 
	.dwpsn	"i2c_gpio.c",49,14
        LDR       A1, [SP, #8]          ; |49| 
        BL        _GPIO_E_high_Tca6408  ; |49| 
        ; |49| 
	.dwpsn	"i2c_gpio.c",50,15
        B         L7                    ; |50| 
        ; |50| 
DW$L$_I2C_GPIO$4$E:
;* --------------------------------------------------------------------------*
L3:    
DW$L$_I2C_GPIO$5$B:
	.dwpsn	"i2c_gpio.c",53,5
        ADR       A2, SL9               ; |53| 
        MOV       A1, #1                ; |53| 
        BL        _UART_Printf          ; |53| 
        ; |53| 
	.dwpsn	"i2c_gpio.c",54,11
        MOV       A1, #1                ; |54| 
        BL        _UART_GetNum          ; |54| 
        ; |54| 
        STR       A1, [SP, #8]          ; |54| 
	.dwpsn	"i2c_gpio.c",55,14
        LDR       A1, [SP, #8]          ; |55| 
        BL        _GPIO_E_low_Tca6408   ; |55| 
        ; |55| 
	.dwpsn	"i2c_gpio.c",56,15
        B         L7                    ; |56| 
        ; |56| 
DW$L$_I2C_GPIO$5$E:
;* --------------------------------------------------------------------------*
L4:    
DW$L$_I2C_GPIO$6$B:
	.dwpsn	"i2c_gpio.c",59,5
        ADR       A2, SL9               ; |59| 
        MOV       A1, #1                ; |59| 
        BL        _UART_Printf          ; |59| 
        ; |59| 
	.dwpsn	"i2c_gpio.c",60,11
        MOV       A1, #1                ; |60| 
        BL        _UART_GetNum          ; |60| 
        ; |60| 
        STR       A1, [SP, #8]          ; |60| 
	.dwpsn	"i2c_gpio.c",61,12
        LDR       A1, [SP, #8]          ; |61| 
        BL        _GPIO_E_high          ; |61| 
        ; |61| 
	.dwpsn	"i2c_gpio.c",62,15
        B         L7                    ; |62| 
        ; |62| 
DW$L$_I2C_GPIO$6$E:
;* --------------------------------------------------------------------------*
L5:    
DW$L$_I2C_GPIO$7$B:
	.dwpsn	"i2c_gpio.c",65,5
        ADR       A2, SL9               ; |65| 
        MOV       A1, #1                ; |65| 
        BL        _UART_Printf          ; |65| 
        ; |65| 
	.dwpsn	"i2c_gpio.c",66,11
        MOV       A1, #1                ; |66| 
        BL        _UART_GetNum          ; |66| 
        ; |66| 
        STR       A1, [SP, #8]          ; |66| 
	.dwpsn	"i2c_gpio.c",67,12
        LDR       A1, [SP, #8]          ; |67| 
        BL        _GPIO_E_low           ; |67| 
        ; |67| 
	.dwpsn	"i2c_gpio.c",68,15
        B         L7                    ; |68| 
        ; |68| 
DW$L$_I2C_GPIO$7$E:
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L6:    
DW$L$_I2C_GPIO$9$B:
	.dwpsn	"i2c_gpio.c",41,10
        LDR       V9, [SP, #4]          ; |41| 
        CMP       V9, #0                ; |41| 
        BEQ       L7                    ; |41| 
        ; |41| 
DW$L$_I2C_GPIO$9$E:
;* --------------------------------------------------------------------------*
DW$L$_I2C_GPIO$10$B:
        SUBS      V9, V9, #1            ; |41| 
        BEQ       L2                    ; |41| 
        ; |41| 
DW$L$_I2C_GPIO$10$E:
;* --------------------------------------------------------------------------*
DW$L$_I2C_GPIO$11$B:
        SUBS      V9, V9, #1            ; |41| 
        BEQ       L3                    ; |41| 
        ; |41| 
DW$L$_I2C_GPIO$11$E:
;* --------------------------------------------------------------------------*
DW$L$_I2C_GPIO$12$B:
        SUBS      V9, V9, #1            ; |41| 
        BEQ       L4                    ; |41| 
        ; |41| 
DW$L$_I2C_GPIO$12$E:
;* --------------------------------------------------------------------------*
DW$L$_I2C_GPIO$13$B:
        SUBS      V9, V9, #1            ; |41| 
        BEQ       L5                    ; |41| 
        ; |41| 
DW$L$_I2C_GPIO$13$E:
;* --------------------------------------------------------------------------*
L7:    
DW$L$_I2C_GPIO$14$B:
	.dwpsn	"i2c_gpio.c",72,2
        LDR       V9, [SP, #4]          ; |72| 
        CMP       V9, #0                ; |72| 
        BNE       L1                    ; |72| 
        ; |72| 
DW$L$_I2C_GPIO$14$E:
;* --------------------------------------------------------------------------*
L8:    
	.dwpsn	"i2c_gpio.c",73,1
	.dwcfa	0x0e, 16
        LDMFD     SP!, {A2, A3, A4, PC}

DW$20	.dwtag  DW_TAG_loop
	.dwattr DW$20, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\i2c_gpio.asm:L1:1:1214374292")
	.dwattr DW$20, DW_AT_begin_file("i2c_gpio.c")
	.dwattr DW$20, DW_AT_begin_line(0x19)
	.dwattr DW$20, DW_AT_end_line(0x48)
DW$21	.dwtag  DW_TAG_loop_range
	.dwattr DW$21, DW_AT_low_pc(DW$L$_I2C_GPIO$2$B)
	.dwattr DW$21, DW_AT_high_pc(DW$L$_I2C_GPIO$2$E)
DW$22	.dwtag  DW_TAG_loop_range
	.dwattr DW$22, DW_AT_low_pc(DW$L$_I2C_GPIO$12$B)
	.dwattr DW$22, DW_AT_high_pc(DW$L$_I2C_GPIO$12$E)
DW$23	.dwtag  DW_TAG_loop_range
	.dwattr DW$23, DW_AT_low_pc(DW$L$_I2C_GPIO$11$B)
	.dwattr DW$23, DW_AT_high_pc(DW$L$_I2C_GPIO$11$E)
DW$24	.dwtag  DW_TAG_loop_range
	.dwattr DW$24, DW_AT_low_pc(DW$L$_I2C_GPIO$10$B)

⌨️ 快捷键说明

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