📄 i2c_gpio.asm
字号:
;******************************************************************************
;* 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 + -