📄 charger.asm
字号:
;******************************************************************************
;* TMS470 C/C++ Codegen PC v4.1.4 *
;* Date/Time created: Wed Jun 25 14:11:15 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("charger.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_MasterPollingReceiveAbb"), DW_AT_symbol_name("_MSI2C_MasterPollingReceiveAbb")
.dwattr DW$1, DW_AT_type(*DW$T$19)
.dwattr DW$1, DW_AT_declaration(0x01)
.dwattr DW$1, DW_AT_external(0x01)
DW$2 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
.dwendtag DW$1
DW$3 .dwtag DW_TAG_subprogram, DW_AT_name("MSI2C_MasterPollingSendAbb"), DW_AT_symbol_name("_MSI2C_MasterPollingSendAbb")
.dwattr DW$3, DW_AT_declaration(0x01)
.dwattr DW$3, DW_AT_external(0x01)
DW$4 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
DW$5 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
.dwendtag DW$3
DW$6 .dwtag DW_TAG_subprogram, DW_AT_name("MSI2C_AccessPage"), DW_AT_symbol_name("_MSI2C_AccessPage")
.dwattr DW$6, DW_AT_declaration(0x01)
.dwattr DW$6, DW_AT_external(0x01)
DW$7 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$22)
.dwendtag DW$6
DW$8 .dwtag DW_TAG_subprogram, DW_AT_name("TPU_LoadScenario"), DW_AT_symbol_name("_TPU_LoadScenario")
.dwattr DW$8, DW_AT_declaration(0x01)
.dwattr DW$8, DW_AT_external(0x01)
DW$9 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$27)
.dwendtag DW$8
DW$10 .dwtag DW_TAG_subprogram, DW_AT_name("TPU_Reset"), DW_AT_symbol_name("_TPU_Reset")
.dwattr DW$10, DW_AT_declaration(0x01)
.dwattr DW$10, DW_AT_external(0x01)
DW$11 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
.dwendtag DW$10
DW$12 .dwtag DW_TAG_subprogram, DW_AT_name("TPU_ClkEnable"), DW_AT_symbol_name("_TPU_ClkEnable")
.dwattr DW$12, DW_AT_declaration(0x01)
.dwattr DW$12, DW_AT_external(0x01)
DW$13 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
.dwendtag DW$12
DW$14 .dwtag DW_TAG_subprogram, DW_AT_name("TPU_Enable"), DW_AT_symbol_name("_TPU_Enable")
.dwattr DW$14, DW_AT_declaration(0x01)
.dwattr DW$14, DW_AT_external(0x01)
DW$15 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$19)
.dwendtag DW$14
DW$16 .dwtag DW_TAG_subprogram, DW_AT_name("UART_Printf"), DW_AT_symbol_name("_UART_Printf")
.dwattr DW$16, DW_AT_declaration(0x01)
.dwattr DW$16, DW_AT_external(0x01)
DW$17 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
DW$18 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$33)
DW$19 .dwtag DW_TAG_unspecified_parameters
.dwendtag DW$16
DW$20 .dwtag DW_TAG_subprogram, DW_AT_name("UART_GetNum"), DW_AT_symbol_name("_UART_GetNum")
.dwattr DW$20, DW_AT_type(*DW$T$10)
.dwattr DW$20, DW_AT_declaration(0x01)
.dwattr DW$20, DW_AT_external(0x01)
DW$21 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
.dwendtag DW$20
DW$22 .dwtag DW_TAG_subprogram, DW_AT_name("ULPD_GsmClockEn"), DW_AT_symbol_name("_ULPD_GsmClockEn")
.dwattr DW$22, DW_AT_type(*DW$T$10)
.dwattr DW$22, DW_AT_declaration(0x01)
.dwattr DW$22, DW_AT_external(0x01)
DW$23 .dwtag DW_TAG_subprogram, DW_AT_name("TIME_WaitMs"), DW_AT_symbol_name("_TIME_WaitMs")
.dwattr DW$23, DW_AT_type(*DW$T$10)
.dwattr DW$23, DW_AT_declaration(0x01)
.dwattr DW$23, DW_AT_external(0x01)
.global _startADC
.sect ".const"
.align 4
_startADC:
.field 25872,16 ; _startADC[0] @ 0
.field 8232,16 ; _startADC[1] @ 16
.field 32774,16 ; _startADC[2] @ 32
.field 32775,16 ; _startADC[3] @ 48
.field 8242,16 ; _startADC[4] @ 64
.field 32902,16 ; _startADC[5] @ 80
.field 8247,16 ; _startADC[6] @ 96
.field 32774,16 ; _startADC[7] @ 112
.field 40970,16 ; _startADC[8] @ 128
.field 0,16 ; _startADC[9] @ 144
DW$24 .dwtag DW_TAG_variable, DW_AT_name("startADC"), DW_AT_symbol_name("_startADC")
.dwattr DW$24, DW_AT_location[DW_OP_addr _startADC]
.dwattr DW$24, DW_AT_type(*DW$T$47)
.dwattr DW$24, DW_AT_external(0x01)
; C:\CCStudio_v3.3\tms470\cgtools\bin\acp470.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI36412
.sect ".text"
.align 4
.clink
.armfunc _precharge_off
.state32
.global _precharge_off
DW$25 .dwtag DW_TAG_subprogram, DW_AT_name("precharge_off"), DW_AT_symbol_name("_precharge_off")
.dwattr DW$25, DW_AT_low_pc(_precharge_off)
.dwattr DW$25, DW_AT_high_pc(0x00)
.dwattr DW$25, DW_AT_begin_file("charger.c")
.dwattr DW$25, DW_AT_begin_line(0x0f)
.dwattr DW$25, DW_AT_begin_column(0x06)
.dwpsn "charger.c",16,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: precharge_off *
;* *
;* 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 + 0 Auto + 4 Save = 4 byte *
;*****************************************************************************
_precharge_off:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 4
.dwpsn "charger.c",18,3
MOV A1, #0 ; |18|
BL _MSI2C_AccessPage ; |18|
; |18|
.dwpsn "charger.c",21,3
MOV A2, #192 ; |21|
MOV A1, #131 ; |21|
BL _MSI2C_MasterPollingSendAbb ; |21|
; |21|
.dwpsn "charger.c",25,3
ADR A2, SL1 ; |25|
MOV A1, #1 ; |25|
BL _UART_Printf ; |25|
; |25|
.dwpsn "charger.c",26,1
.dwcfa 0x0e, 4
LDMFD SP!, {PC}
.dwattr DW$25, DW_AT_end_file("charger.c")
.dwattr DW$25, DW_AT_end_line(0x1a)
.dwattr DW$25, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$25
.sect ".text"
.align 4
.clink
.armfunc _precharge_on
.state32
.global _precharge_on
DW$26 .dwtag DW_TAG_subprogram, DW_AT_name("precharge_on"), DW_AT_symbol_name("_precharge_on")
.dwattr DW$26, DW_AT_low_pc(_precharge_on)
.dwattr DW$26, DW_AT_high_pc(0x00)
.dwattr DW$26, DW_AT_begin_file("charger.c")
.dwattr DW$26, DW_AT_begin_line(0x27)
.dwattr DW$26, DW_AT_begin_column(0x06)
.dwpsn "charger.c",40,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: precharge_on *
;* *
;* 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 + 0 Auto + 4 Save = 4 byte *
;*****************************************************************************
_precharge_on:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 4
.dwpsn "charger.c",42,3
MOV A1, #0 ; |42|
BL _MSI2C_AccessPage ; |42|
; |42|
.dwpsn "charger.c",45,3
MOV A2, #0 ; |45|
MOV A1, #131 ; |45|
BL _MSI2C_MasterPollingSendAbb ; |45|
; |45|
.dwpsn "charger.c",49,3
ADR A2, SL2 ; |49|
MOV A1, #1 ; |49|
BL _UART_Printf ; |49|
; |49|
.dwpsn "charger.c",50,1
.dwcfa 0x0e, 4
LDMFD SP!, {PC}
.dwattr DW$26, DW_AT_end_file("charger.c")
.dwattr DW$26, DW_AT_end_line(0x32)
.dwattr DW$26, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$26
.sect ".text"
.align 4
.clink
.armfunc _MADC_RT_poll
.state32
.global _MADC_RT_poll
DW$27 .dwtag DW_TAG_subprogram, DW_AT_name("MADC_RT_poll"), DW_AT_symbol_name("_MADC_RT_poll")
.dwattr DW$27, DW_AT_low_pc(_MADC_RT_poll)
.dwattr DW$27, DW_AT_high_pc(0x00)
.dwattr DW$27, DW_AT_begin_file("charger.c")
.dwattr DW$27, DW_AT_begin_line(0x40)
.dwattr DW$27, DW_AT_begin_column(0x05)
.dwpsn "charger.c",65,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: MADC_RT_poll *
;* *
;* 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 *
;*****************************************************************************
_MADC_RT_poll:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
SUB SP, SP, #20
.dwcfa 0x0e, 24
;* A1 assigned to _list
DW$28 .dwtag DW_TAG_formal_parameter, DW_AT_name("list"), DW_AT_symbol_name("_list")
.dwattr DW$28, DW_AT_type(*DW$T$10)
.dwattr DW$28, DW_AT_location[DW_OP_reg0]
DW$29 .dwtag DW_TAG_variable, DW_AT_name("list"), DW_AT_symbol_name("_list")
.dwattr DW$29, DW_AT_type(*DW$T$10)
.dwattr DW$29, DW_AT_location[DW_OP_breg13 0]
DW$30 .dwtag DW_TAG_variable, DW_AT_name("madc_busy"), DW_AT_symbol_name("_madc_busy")
.dwattr DW$30, DW_AT_type(*DW$T$10)
.dwattr DW$30, DW_AT_location[DW_OP_breg13 4]
DW$31 .dwtag DW_TAG_variable, DW_AT_name("madc_eocrt"), DW_AT_symbol_name("_madc_eocrt")
.dwattr DW$31, DW_AT_type(*DW$T$10)
.dwattr DW$31, DW_AT_location[DW_OP_breg13 8]
DW$32 .dwtag DW_TAG_variable, DW_AT_name("tempo"), DW_AT_symbol_name("_tempo")
.dwattr DW$32, DW_AT_type(*DW$T$10)
.dwattr DW$32, DW_AT_location[DW_OP_breg13 12]
DW$33 .dwtag DW_TAG_variable, DW_AT_name("previous_content"), DW_AT_symbol_name("_previous_content")
.dwattr DW$33, DW_AT_type(*DW$T$10)
.dwattr DW$33, DW_AT_location[DW_OP_breg13 16]
STR A1, [SP, #0] ; |65|
.dwpsn "charger.c",66,7
MOV V9, #1 ; |66|
STR V9, [SP, #4] ; |66|
.dwpsn "charger.c",67,7
MOV V9, #0 ; |67|
STR V9, [SP, #8] ; |67|
.dwpsn "charger.c",73,3
MOV A1, #0 ; |73|
BL _MSI2C_AccessPage ; |73|
; |73|
.dwpsn "charger.c",76,3
MOV A1, #131 ; |76|
BL _MSI2C_MasterPollingReceiveAbb ; |76|
; |76|
AND V9, A1, #255 ; |76|
STR V9, [SP, #16] ; |76|
.dwpsn "charger.c",79,3
LDR V9, [SP, #16] ; |79|
ORR V9, V9, #48 ; |79|
MOV A1, #131 ; |79|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |79|
; |79|
.dwpsn "charger.c",82,3
MOV A1, #0 ; |82|
BL _MSI2C_AccessPage ; |82|
; |82|
.dwpsn "charger.c",85,3
MOV A1, #246 ; |85|
MOV A2, #8 ; |85|
BL _MSI2C_MasterPollingSendAbb ; |85|
; |85|
.dwpsn "charger.c",88,3
MOV A1, #0 ; |88|
BL _MSI2C_AccessPage ; |88|
; |88|
.dwpsn "charger.c",91,3
MOV A1, #104 ; |91|
MOV A2, #2 ; |91|
BL _MSI2C_MasterPollingSendAbb ; |91|
; |91|
.dwpsn "charger.c",94,3
LDR V9, [SP, #0] ; |94|
AND V9, V9, #255 ; |94|
MOV A1, #40 ; |94|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |94|
; |94|
.dwpsn "charger.c",97,3
LDR V9, [SP, #0] ; |97|
AND V9, V9, #1792 ; |97|
MOV V9, V9, ASR #8 ; |97|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -