📄 rtc.asm
字号:
;******************************************************************************
;* TMS470 C/C++ Codegen PC v4.1.4 *
;* Date/Time created: Wed Jun 25 14:11:58 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("RTC.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("UART_Printf"), DW_AT_symbol_name("_UART_Printf")
.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$10)
DW$10 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$26)
DW$11 .dwtag DW_TAG_unspecified_parameters
.dwendtag DW$8
DW$12 .dwtag DW_TAG_subprogram, DW_AT_name("UART_GetNum"), DW_AT_symbol_name("_UART_GetNum")
.dwattr DW$12, DW_AT_type(*DW$T$10)
.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$10)
.dwendtag DW$12
; C:\CCStudio_v3.3\tms470\cgtools\bin\acp470.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI09612
.sect ".text"
.align 4
.clink
.armfunc _SetRTC
.state32
.global _SetRTC
DW$14 .dwtag DW_TAG_subprogram, DW_AT_name("SetRTC"), DW_AT_symbol_name("_SetRTC")
.dwattr DW$14, DW_AT_low_pc(_SetRTC)
.dwattr DW$14, DW_AT_high_pc(0x00)
.dwattr DW$14, DW_AT_begin_file("RTC.c")
.dwattr DW$14, DW_AT_begin_line(0x12)
.dwattr DW$14, DW_AT_begin_column(0x07)
.dwpsn "RTC.c",19,2
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: SetRTC *
;* *
;* 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 *
;*****************************************************************************
_SetRTC:
;* --------------------------------------------------------------------------*
.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$15 .dwtag DW_TAG_variable, DW_AT_name("hour"), DW_AT_symbol_name("_hour")
.dwattr DW$15, DW_AT_type(*DW$T$10)
.dwattr DW$15, DW_AT_location[DW_OP_breg13 0]
DW$16 .dwtag DW_TAG_variable, DW_AT_name("minute"), DW_AT_symbol_name("_minute")
.dwattr DW$16, DW_AT_type(*DW$T$10)
.dwattr DW$16, DW_AT_location[DW_OP_breg13 4]
DW$17 .dwtag DW_TAG_variable, DW_AT_name("second"), DW_AT_symbol_name("_second")
.dwattr DW$17, DW_AT_type(*DW$T$10)
.dwattr DW$17, DW_AT_location[DW_OP_breg13 8]
DW$18 .dwtag DW_TAG_variable, DW_AT_name("temp1"), DW_AT_symbol_name("_temp1")
.dwattr DW$18, DW_AT_type(*DW$T$10)
.dwattr DW$18, DW_AT_location[DW_OP_breg13 12]
DW$19 .dwtag DW_TAG_variable, DW_AT_name("temp2"), DW_AT_symbol_name("_temp2")
.dwattr DW$19, DW_AT_type(*DW$T$10)
.dwattr DW$19, DW_AT_location[DW_OP_breg13 16]
.dwpsn "RTC.c",22,3
ADR A2, SL1 ; |22|
MOV A1, #1 ; |22|
BL _UART_Printf ; |22|
; |22|
.dwpsn "RTC.c",23,3
MOV A1, #1 ; |23|
BL _UART_GetNum ; |23|
; |23|
STR A1, [SP, #0] ; |23|
.dwpsn "RTC.c",24,3
MOV A1, #1 ; |24|
ADR A2, SL2 ; |24|
BL _UART_Printf ; |24|
; |24|
.dwpsn "RTC.c",25,3
MOV A1, #1 ; |25|
BL _UART_GetNum ; |25|
; |25|
STR A1, [SP, #4] ; |25|
.dwpsn "RTC.c",26,3
MOV A1, #1 ; |26|
ADR A2, SL3 ; |26|
BL _UART_Printf ; |26|
; |26|
.dwpsn "RTC.c",27,3
MOV A1, #1 ; |27|
BL _UART_GetNum ; |27|
; |27|
STR A1, [SP, #8] ; |27|
.dwpsn "RTC.c",29,3
MOV A1, #1 ; |29|
BL _MSI2C_AccessPage ; |29|
; |29|
.dwpsn "RTC.c",31,3
LDR A1, [SP, #0] ; |31|
MOV A2, #10 ; |31|
BL I_DIV ; |31|
; |31|
STR A2, [SP, #12] ; |31|
.dwpsn "RTC.c",32,3
LDR V9, [SP, #12] ; |32|
MOV A1, V9, LSL #3 ; |32|
ADD V9, A1, V9, LSL #1 ; |32|
LDR A1, [SP, #0] ; |32|
SUB V9, A1, V9 ; |32|
STR V9, [SP, #16] ; |32|
.dwpsn "RTC.c",33,3
LDR A1, [SP, #16] ; |33|
LDR V9, [SP, #12] ; |33|
ORR V9, A1, V9, LSL #4 ; |33|
MOV A1, #2 ; |33|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |33|
; |33|
.dwpsn "RTC.c",35,3
MOV A2, #10 ; |35|
LDR A1, [SP, #4] ; |35|
BL I_DIV ; |35|
; |35|
STR A2, [SP, #12] ; |35|
.dwpsn "RTC.c",36,3
LDR V9, [SP, #12] ; |36|
MOV A1, V9, LSL #3 ; |36|
ADD V9, A1, V9, LSL #1 ; |36|
LDR A1, [SP, #4] ; |36|
SUB V9, A1, V9 ; |36|
STR V9, [SP, #16] ; |36|
.dwpsn "RTC.c",37,3
LDR A1, [SP, #16] ; |37|
LDR V9, [SP, #12] ; |37|
ORR V9, A1, V9, LSL #4 ; |37|
MOV A1, #1 ; |37|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |37|
; |37|
;* --------------------------------------------------------------------------*
.dwpsn "RTC.c",40,3
LDR A1, [SP, #8] ; |40|
MOV A2, #10 ; |40|
BL I_DIV ; |40|
; |40|
STR A2, [SP, #12] ; |40|
.dwpsn "RTC.c",41,3
LDR V9, [SP, #12] ; |41|
MOV A1, V9, LSL #3 ; |41|
ADD V9, A1, V9, LSL #1 ; |41|
LDR A1, [SP, #8] ; |41|
SUB V9, A1, V9 ; |41|
STR V9, [SP, #16] ; |41|
.dwpsn "RTC.c",42,3
LDR A1, [SP, #16] ; |42|
LDR V9, [SP, #12] ; |42|
ORR V9, A1, V9, LSL #4 ; |42|
MOV A1, #0 ; |42|
AND A2, V9, #255
BL _MSI2C_MasterPollingSendAbb ; |42|
; |42|
.dwpsn "RTC.c",44,2
nop
.dwpsn "RTC.c",47,3
MOV A2, #7 ; |47|
MOV A1, #16 ; |47|
BL _MSI2C_MasterPollingSendAbb ; |47|
; |47|
.dwpsn "RTC.c",55,3
ADD SP, SP, #20
.dwcfa 0x0e, 4
LDMFD SP!, {PC}
.dwattr DW$14, DW_AT_end_file("RTC.c")
.dwattr DW$14, DW_AT_end_line(0x37)
.dwattr DW$14, DW_AT_end_column(0x03)
.dwendentry
.dwendtag DW$14
.sect ".text"
.align 4
.clink
.armfunc _ClearRTC
.state32
.global _ClearRTC
DW$20 .dwtag DW_TAG_subprogram, DW_AT_name("ClearRTC"), DW_AT_symbol_name("_ClearRTC")
.dwattr DW$20, DW_AT_low_pc(_ClearRTC)
.dwattr DW$20, DW_AT_high_pc(0x00)
.dwattr DW$20, DW_AT_begin_file("RTC.c")
.dwattr DW$20, DW_AT_begin_line(0x41)
.dwattr DW$20, DW_AT_begin_column(0x07)
.dwpsn "RTC.c",66,2
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: ClearRTC *
;* *
;* 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 *
;*****************************************************************************
_ClearRTC:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 4
.dwpsn "RTC.c",67,3
MOV A1, #1 ; |67|
BL _MSI2C_AccessPage ; |67|
; |67|
.dwpsn "RTC.c",68,3
MOV A2, #0 ; |68|
MOV A1, #16 ; |68|
BL _MSI2C_MasterPollingSendAbb ; |68|
; |68|
.dwpsn "RTC.c",69,3
MOV A2, #0 ; |69|
MOV A1, #2 ; |69|
BL _MSI2C_MasterPollingSendAbb ; |69|
; |69|
.dwpsn "RTC.c",70,3
MOV A2, #0 ; |70|
MOV A1, #1 ; |70|
BL _MSI2C_MasterPollingSendAbb ; |70|
; |70|
.dwpsn "RTC.c",71,3
MOV A2, #0 ; |71|
MOV A1, #0 ; |71|
BL _MSI2C_MasterPollingSendAbb ; |71|
; |71|
.dwpsn "RTC.c",72,3
.dwcfa 0x0e, 4
LDMFD SP!, {PC}
.dwattr DW$20, DW_AT_end_file("RTC.c")
.dwattr DW$20, DW_AT_end_line(0x48)
.dwattr DW$20, DW_AT_end_column(0x03)
.dwendentry
.dwendtag DW$20
.sect ".text"
.align 4
.clink
.armfunc _ReadRTC
.state32
.global _ReadRTC
DW$21 .dwtag DW_TAG_subprogram, DW_AT_name("ReadRTC"), DW_AT_symbol_name("_ReadRTC")
.dwattr DW$21, DW_AT_low_pc(_ReadRTC)
.dwattr DW$21, DW_AT_high_pc(0x00)
.dwattr DW$21, DW_AT_begin_file("RTC.c")
.dwattr DW$21, DW_AT_begin_line(0x55)
.dwattr DW$21, DW_AT_begin_column(0x07)
.dwpsn "RTC.c",86,2
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: ReadRTC *
;* *
;* Regs Modified : A1,A2,A3,A4,V9,SP,LR,SR *
;* Regs Used : A1,A2,A3,A4,V9,SP,LR,SR *
;* Local Frame Size : 4 Args + 16 Auto + 4 Save = 24 byte *
;*****************************************************************************
_ReadRTC:
;* --------------------------------------------------------------------------*
.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$22 .dwtag DW_TAG_variable, DW_AT_name("temp"), DW_AT_symbol_name("_temp")
.dwattr DW$22, DW_AT_type(*DW$T$10)
.dwattr DW$22, DW_AT_location[DW_OP_breg13 4]
DW$23 .dwtag DW_TAG_variable, DW_AT_name("hour"), DW_AT_symbol_name("_hour")
.dwattr DW$23, DW_AT_type(*DW$T$10)
.dwattr DW$23, DW_AT_location[DW_OP_breg13 8]
DW$24 .dwtag DW_TAG_variable, DW_AT_name("minute"), DW_AT_symbol_name("_minute")
.dwattr DW$24, DW_AT_type(*DW$T$10)
.dwattr DW$24, DW_AT_location[DW_OP_breg13 12]
DW$25 .dwtag DW_TAG_variable, DW_AT_name("second"), DW_AT_symbol_name("_second")
.dwattr DW$25, DW_AT_type(*DW$T$10)
.dwattr DW$25, DW_AT_location[DW_OP_breg13 16]
.dwpsn "RTC.c",89,3
MOV A1, #1 ; |89|
BL _MSI2C_AccessPage ; |89|
; |89|
.dwpsn "RTC.c",91,3
MOV A1, #2 ; |91|
BL _MSI2C_MasterPollingReceiveAbb ; |91|
; |91|
STR A1, [SP, #8] ; |91|
.dwpsn "RTC.c",92,3
MOV A1, #1 ; |92|
BL _MSI2C_MasterPollingReceiveAbb ; |92|
; |92|
STR A1, [SP, #12] ; |92|
.dwpsn "RTC.c",93,3
MOV A1, #0 ; |93|
BL _MSI2C_MasterPollingReceiveAbb ; |93|
; |93|
STR A1, [SP, #16] ; |93|
.dwpsn "RTC.c",98,3
LDR V9, [SP, #8] ; |98|
MOV V9, V9, ASR #4 ; |98|
AND V9, V9, #3 ; |98|
MOV A1, V9, LSL #3 ; |98|
ADD V9, A1, V9, LSL #1 ; |98|
LDR A1, [SP, #8] ; |98|
AND A1, A1, #15 ; |98|
ADD V9, A1, V9 ; |98|
STR V9, [SP, #8] ; |98|
.dwpsn "RTC.c",99,3
LDR V9, [SP, #12] ; |99|
MOV V9, V9, ASR #4 ; |99|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -