📄 timerctrl.asm
字号:
;******************************************************************************
;* TMS320C6x C/C++ Codegen PC Version 4.32 *
;* Date/Time created: Mon Oct 22 22:26:26 2007 *
;******************************************************************************
;******************************************************************************
;* GLOBAL FILE PARAMETERS *
;* *
;* Architecture : TMS320C671x *
;* Optimization : Enabled at level 3 *
;* Optimizing for : Speed 1st, size 2nd *
;* Based on options: -o3, -ms0 *
;* Endian : Little *
;* Interrupt Thrshld : Disabled *
;* Memory Model : Small *
;* Calls to RTS : Far *
;* Pipelining : Enabled *
;* Speculative Load : Disabled *
;* Memory Aliases : Presume not aliases (optimistic) *
;* Debug Info : COFF Debug *
;* *
;******************************************************************************
.asg A15, FP
.asg B14, DP
.asg B15, SP
.global $bss
.file "TimerCtrl.c"
.sect ".cinit:c"
.align 8
.field (CIR - $) - 8, 32
.field _hTimer+0,32
.field 0,32 ; _hTimer @ 0
.sect ".text"
.global _hTimer
_hTimer: .usect ".bss:c",4,4
.sym _hTimer,_hTimer, 24, 2, 32, $$fake0
; c:\ti6000\c6000\cgtools\bin\opt6x.exe -t -v6710 -q -O3 -Z0 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI1280_2 C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI1280_5 -w E:/work/tms6713 sell board data/DSPSRC/Audiocfg_IIR/Debug
.sect ".text"
.global _TIMER_Init
.sym _TIMER_Init,_TIMER_Init, 32, 2, 0
.func 75
;----------------------------------------------------------------------
; 75 | void TIMER_Init(void)
;----------------------------------------------------------------------
;******************************************************************************
;* FUNCTION NAME: _TIMER_Init *
;* *
;* Regs Modified : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,SP *
;* Regs Used : A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,B0,B1,B2,B3,B4,B5,B6, *
;* B7,B8,B9,DP,SP *
;* Local Frame Size : 0 Args + 0 Auto + 4 Save = 4 byte *
;******************************************************************************
;******************************************************************************
;* *
;* Using -g (debug) with optimization (-o3) may disable key optimizations! *
;* *
;******************************************************************************
_TIMER_Init:
;** --------------------------------------------------------------------------*
.line 2
;----------------------------------------------------------------------
; 78 | TIMER_Config myTimerConfig;
;----------------------------------------------------------------------
.sym _gie,20, 14, 4, 32
.sym _x0,5, 4, 4, 32
.sym _gie,20, 14, 4, 32
.sym _base,0, 30, 4, 32
STW .D2T2 B3,*SP--(8) ; |76|
.line 6
;----------------------------------------------------------------------
; 80 | hTimer = TIMER_open(TIMER_DEV0, TIMER_OPEN_RESET);
; 81 | TIMER_getConfig( hTimer, &myTimerConfig);
; 82 | myTimerConfig.ctl &= 0xff3f;
; 83 | myTimerConfig.ctl |= 0x3c0;
; 84 | myTimerConfig.prd = 0x200;
; 85 | myTimerConfig.cnt = 0x00000000;
; 86 | TIMER_config(hTimer, &myTimerConfig);
; 87 | IRQ_enable(TIMER_getEventId(hTimer));
; 91 |
;----------------------------------------------------------------------
MVKL .S1 _TIMER_open,A0 ; |80|
MVKH .S1 _TIMER_open,A0 ; |80|
CALL .S2X A0 ; |80|
MVKL .S2 RL0,B3 ; |80|
MVK .S2 0x1,B4 ; |80|
MVKH .S2 RL0,B3 ; |80|
ZERO .D1 A4 ; |80|
NOP 1
RL0: ; CALL OCCURS ; |80|
STW .D2T1 A4,*+DP(_hTimer) ; |80|
MVC .S2 CSR,B4 ; |270|
AND .S2 1,B4,B4 ; |270|
MVC .S2 CSR,B5 ; |271|
AND .S2 -2,B5,B5 ; |271|
MVC .S2 B5,CSR ; |271|
NOP 1
LDW .D1T1 *+A4(8),A0 ; |230|
NOP 4
LDW .D1T1 *A0,A5 ; |230|
LDW .D1T1 *+A0(4),A3 ; |231|
LDW .D1T1 *+A0(8),A3 ; |232|
MVC .S2 CSR,B5 ; |276|
AND .S2 -2,B5,B5 ; |276|
|| AND .L2 1,B4,B4 ; |276|
OR .S2 B4,B5,B4 ; |276|
MVC .S2 B4,CSR ; |276|
MVC .S2 CSR,B4 ; |270|
AND .S2 1,B4,B4 ; |270|
MVC .S2 CSR,B5 ; |271|
AND .S2 -2,B5,B5 ; |271|
MVC .S2 B5,CSR ; |271|
ZERO .D1 A3 ; |197|
STW .D1T1 A3,*A0 ; |197|
MVK .S1 512,A6 ; |198|
STW .D1T1 A6,*+A0(4) ; |198|
STW .D1T1 A3,*+A0(8) ; |199|
MVKL .S1 0xfc3f,A3 ; |200|
MVKH .S1 0xfc3f,A3 ; |200|
AND .S1 A3,A5,A3 ; |200|
SET .S1 A3,6,9,A3 ; |200|
STW .D1T1 A3,*A0 ; |200|
MVC .S2 CSR,B5 ; |276|
AND .S2 -2,B5,B5 ; |276|
|| AND .L2 1,B4,B4 ; |276|
OR .S2 B4,B5,B4 ; |276|
MVC .S2 B4,CSR ; |276|
LDW .D1T2 *+A4(4),B5 ; |236|
MVKL .S2 __IRQ_eventTable,B4 ; |236|
MVKH .S2 __IRQ_eventTable,B4 ; |236|
NOP 2
LDW .D2T2 *+B4[B5],B5 ; |236|
NOP 3
MVC .S2 IER,B4 ; |236|
OR .S2 B5,B4,B4 ; |236|
MVC .S2 B4,IER ; |236|
.line 13
.line 14
LDW .D2T2 *++SP(8),B3 ; |88|
NOP 4
RET .S2 B3 ; |88|
NOP 5
; BRANCH OCCURS ; |88|
.endfunc 88,000080000h,8
;******************************************************************************
;* MARK THE END OF THE SCALAR INIT RECORD IN CINIT:C *
;******************************************************************************
CIR: .sect ".cinit:c"
;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES *
;******************************************************************************
.global _TIMER_open
.global __IRQ_eventTable
;******************************************************************************
;* TYPE INFORMATION *
;******************************************************************************
.sym _Uint32, 0, 14, 13, 32
.sym _Uint32, 0, 14, 13, 32
.stag $$fake0, 96
.member _allocated, 0, 14, 8, 32
.member _eventId, 32, 14, 8, 32
.member _baseAddr, 64, 30, 8, 32
.eos
.sym _TIMER_Handle, 0, 24, 13, 32,$$fake0
.stag $$fake1, 96
.member _ctl, 0, 14, 8, 32
.member _prd, 32, 14, 8, 32
.member _cnt, 64, 14, 8, 32
.eos
.sym _TIMER_Config, 0, 8, 13, 96,$$fake1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -