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

📄 dsp28_cputimers.asm

📁 单个表头的显示 运用了MAX7219驱动芯片
💻 ASM
📖 第 1 页 / 共 3 页
字号:
;***************************************************************
;* TMS320C2000 C/C++ Codegen                         PC v4.1.0 *
;* Date/Time created: Fri Oct 10 21:06:37 2008                 *
;***************************************************************
	.compiler_opts --mem_model:code=flat --mem_model:data=large --silicon_version=28 
FP	.set	XAR2

DW$CU	.dwtag  DW_TAG_compile_unit
	.dwattr DW$CU, DW_AT_name("DSP28_CpuTimers.c")
	.dwattr DW$CU, DW_AT_producer("TMS320C2000 C/C++ Codegen PC v4.1.0 Copyright (c) 1996-2005 Texas Instruments Incorporated")
	.dwattr DW$CU, DW_AT_stmt_list(0x00)
	.dwattr DW$CU, DW_AT_TI_VERSION(0x01)
	.global	_CpuTimer1
_CpuTimer1:	.usect	".ebss",8,1,1
DW$1	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer1"), DW_AT_symbol_name("_CpuTimer1")
	.dwattr DW$1, DW_AT_location[DW_OP_addr _CpuTimer1]
	.dwattr DW$1, DW_AT_type(*DW$T$34)
	.dwattr DW$1, DW_AT_external(0x01)
	.global	_CpuTimer2
_CpuTimer2:	.usect	".ebss",8,1,1
DW$2	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer2"), DW_AT_symbol_name("_CpuTimer2")
	.dwattr DW$2, DW_AT_location[DW_OP_addr _CpuTimer2]
	.dwattr DW$2, DW_AT_type(*DW$T$34)
	.dwattr DW$2, DW_AT_external(0x01)
	.global	_CpuTimer0
_CpuTimer0:	.usect	".ebss",8,1,1
DW$3	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer0"), DW_AT_symbol_name("_CpuTimer0")
	.dwattr DW$3, DW_AT_location[DW_OP_addr _CpuTimer0]
	.dwattr DW$3, DW_AT_type(*DW$T$34)
	.dwattr DW$3, DW_AT_external(0x01)
DW$4	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer1Regs"), DW_AT_symbol_name("_CpuTimer1Regs")
	.dwattr DW$4, DW_AT_type(*DW$T$32)
	.dwattr DW$4, DW_AT_declaration(0x01)
	.dwattr DW$4, DW_AT_external(0x01)
DW$5	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer2Regs"), DW_AT_symbol_name("_CpuTimer2Regs")
	.dwattr DW$5, DW_AT_type(*DW$T$32)
	.dwattr DW$5, DW_AT_declaration(0x01)
	.dwattr DW$5, DW_AT_external(0x01)
DW$6	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer0Regs"), DW_AT_symbol_name("_CpuTimer0Regs")
	.dwattr DW$6, DW_AT_type(*DW$T$32)
	.dwattr DW$6, DW_AT_declaration(0x01)
	.dwattr DW$6, DW_AT_external(0x01)
;	D:\Program Files\ccs\C2000\cgtools\bin\ac2000.exe -@C:\DOCUME~1\Owner\LOCALS~1\Temp\TI62012 
	.sect	".text"
	.global	_InitCpuTimers

DW$7	.dwtag  DW_TAG_subprogram, DW_AT_name("InitCpuTimers"), DW_AT_symbol_name("_InitCpuTimers")
	.dwattr DW$7, DW_AT_low_pc(_InitCpuTimers)
	.dwattr DW$7, DW_AT_high_pc(0x00)
	.dwattr DW$7, DW_AT_begin_file("DSP28_CpuTimers.c")
	.dwattr DW$7, DW_AT_begin_line(0x1f)
	.dwattr DW$7, DW_AT_begin_column(0x06)
	.dwpsn	"DSP28_CpuTimers.c",32,1

	.dwfde DW$CIE

;***************************************************************
;* FNAME: _InitCpuTimers                FR SIZE:   0           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  0 Auto,  0 SOE     *
;***************************************************************

_InitCpuTimers:
	.dwcfa	0x1d, -2
	.dwcfa	0x1c, 26, 0
	.dwcfa	0x09, 40, 26
	.dwpsn	"DSP28_CpuTimers.c",34,2
        MOVL      XAR4,#_CpuTimer0Regs  ; |34| 
        MOVW      DP,#_CpuTimer0
        MOVL      @_CpuTimer0,XAR4      ; |34| 
	.dwpsn	"DSP28_CpuTimers.c",35,2
        MOVL      XAR4,#_CpuTimer1Regs  ; |35| 
        MOVL      @_CpuTimer1,XAR4      ; |35| 
	.dwpsn	"DSP28_CpuTimers.c",36,2
        MOVL      XAR4,#_CpuTimer2Regs  ; |36| 
        MOVL      @_CpuTimer2,XAR4      ; |36| 
	.dwpsn	"DSP28_CpuTimers.c",39,2
        MOV       PH,#65535
        MOV       PL,#65535
        MOVW      DP,#_CpuTimer0Regs+2
        MOVL      @_CpuTimer0Regs+2,P   ; |39| 
	.dwpsn	"DSP28_CpuTimers.c",40,2
        MOVW      DP,#_CpuTimer1Regs+2
        MOVL      @_CpuTimer1Regs+2,P   ; |40| 
	.dwpsn	"DSP28_CpuTimers.c",41,2
        MOVW      DP,#_CpuTimer2Regs+2
        MOVL      @_CpuTimer2Regs+2,P   ; |41| 
	.dwpsn	"DSP28_CpuTimers.c",44,2
        MOVW      DP,#_CpuTimer0Regs+6
        MOV       @_CpuTimer0Regs+6,#0  ; |44| 
	.dwpsn	"DSP28_CpuTimers.c",45,2
        MOV       @_CpuTimer0Regs+7,#0  ; |45| 
	.dwpsn	"DSP28_CpuTimers.c",48,2
        OR        @_CpuTimer0Regs+4,#0x0010 ; |48| 
	.dwpsn	"DSP28_CpuTimers.c",49,2
        MOVW      DP,#_CpuTimer1Regs+4
        OR        @_CpuTimer1Regs+4,#0x0010 ; |49| 
	.dwpsn	"DSP28_CpuTimers.c",50,2
        MOVW      DP,#_CpuTimer2Regs+4
        OR        @_CpuTimer2Regs+4,#0x0010 ; |50| 
	.dwpsn	"DSP28_CpuTimers.c",53,2
        MOVW      DP,#_CpuTimer0Regs+4
        OR        @_CpuTimer0Regs+4,#0x0020 ; |53| 
	.dwpsn	"DSP28_CpuTimers.c",54,2
        MOVW      DP,#_CpuTimer1Regs+4
        OR        @_CpuTimer1Regs+4,#0x0020 ; |54| 
	.dwpsn	"DSP28_CpuTimers.c",55,2
        MOVW      DP,#_CpuTimer2Regs+4
        OR        @_CpuTimer2Regs+4,#0x0020 ; |55| 
	.dwpsn	"DSP28_CpuTimers.c",58,2
        MOVB      ACC,#0
        MOVW      DP,#_CpuTimer0+2
        MOVL      @_CpuTimer0+2,ACC     ; |58| 
	.dwpsn	"DSP28_CpuTimers.c",59,2
        MOVL      @_CpuTimer1+2,ACC     ; |59| 
	.dwpsn	"DSP28_CpuTimers.c",60,2
        MOVL      @_CpuTimer2+2,ACC     ; |60| 
	.dwpsn	"DSP28_CpuTimers.c",61,1
        LRETR
        ; return occurs
	.dwattr DW$7, DW_AT_end_file("DSP28_CpuTimers.c")
	.dwattr DW$7, DW_AT_end_line(0x3d)
	.dwattr DW$7, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$7

	.sect	".text"
	.global	_ConfigCpuTimer

DW$8	.dwtag  DW_TAG_subprogram, DW_AT_name("ConfigCpuTimer"), DW_AT_symbol_name("_ConfigCpuTimer")
	.dwattr DW$8, DW_AT_low_pc(_ConfigCpuTimer)
	.dwattr DW$8, DW_AT_high_pc(0x00)
	.dwattr DW$8, DW_AT_begin_file("DSP28_CpuTimers.c")
	.dwattr DW$8, DW_AT_begin_line(0x47)
	.dwattr DW$8, DW_AT_begin_column(0x06)
	.dwpsn	"DSP28_CpuTimers.c",72,1

	.dwfde DW$CIE

;***************************************************************
;* FNAME: _ConfigCpuTimer               FR SIZE:   8           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            2 Parameter,  6 Auto,  0 SOE     *
;***************************************************************

_ConfigCpuTimer:
	.dwcfa	0x1d, -2
	.dwcfa	0x1c, 26, 0
	.dwcfa	0x09, 40, 26
        ADDB      SP,#8
	.dwcfa	0x1d, -10
;* AR4   assigned to _Timer
DW$9	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Timer"), DW_AT_symbol_name("_Timer")
	.dwattr DW$9, DW_AT_type(*DW$T$36)
	.dwattr DW$9, DW_AT_location[DW_OP_reg12]
;* AL    assigned to _Freq
DW$10	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Freq"), DW_AT_symbol_name("_Freq")
	.dwattr DW$10, DW_AT_type(*DW$T$16)
	.dwattr DW$10, DW_AT_location[DW_OP_reg0]
DW$11	.dwtag  DW_TAG_formal_parameter, DW_AT_name("Period"), DW_AT_symbol_name("_Period")
	.dwattr DW$11, DW_AT_type(*DW$T$16)
	.dwattr DW$11, DW_AT_location[DW_OP_breg20 -12]
DW$12	.dwtag  DW_TAG_variable, DW_AT_name("Timer"), DW_AT_symbol_name("_Timer")
	.dwattr DW$12, DW_AT_type(*DW$T$36)
	.dwattr DW$12, DW_AT_location[DW_OP_breg20 -4]
DW$13	.dwtag  DW_TAG_variable, DW_AT_name("Freq"), DW_AT_symbol_name("_Freq")
	.dwattr DW$13, DW_AT_type(*DW$T$16)
	.dwattr DW$13, DW_AT_location[DW_OP_breg20 -6]
DW$14	.dwtag  DW_TAG_variable, DW_AT_name("temp"), DW_AT_symbol_name("_temp")
	.dwattr DW$14, DW_AT_type(*DW$T$21)
	.dwattr DW$14, DW_AT_location[DW_OP_breg20 -8]
        MOVL      *-SP[6],ACC           ; |72| 
        MOVL      *-SP[4],XAR4          ; |72| 
	.dwpsn	"DSP28_CpuTimers.c",76,2
        MOVL      XAR4,*-SP[4]          ; |76| 
        MOVL      ACC,*-SP[6]           ; |76| 
        MOVL      *+XAR4[4],ACC         ; |76| 
	.dwpsn	"DSP28_CpuTimers.c",77,2
        MOVL      XAR4,*-SP[4]          ; |77| 
        MOVL      ACC,*-SP[12]          ; |77| 
        MOVL      *+XAR4[6],ACC         ; |77| 
	.dwpsn	"DSP28_CpuTimers.c",78,2
        MOVL      ACC,*-SP[12]          ; |78| 
        MOVL      *-SP[2],ACC           ; |78| 
        MOVL      ACC,*-SP[6]           ; |78| 
        LCR       #FS$$MPY              ; |78| 
        ; call occurs [#FS$$MPY] ; |78| 
        LCR       #FS$$TOUL             ; |78| 
        ; call occurs [#FS$$TOUL] ; |78| 
        MOVL      *-SP[8],ACC           ; |78| 
	.dwpsn	"DSP28_CpuTimers.c",79,2
        MOVL      XAR4,*-SP[4]          ; |79| 
        MOVL      XAR4,*+XAR4[0]        ; |79| 
        MOVL      ACC,*-SP[8]           ; |79| 
        MOVL      *+XAR4[2],ACC         ; |79| 
	.dwpsn	"DSP28_CpuTimers.c",82,2
        MOVL      XAR4,*-SP[4]          ; |82| 
        MOVL      XAR4,*+XAR4[0]        ; |82| 
        MOV       *+XAR4[6],#0          ; |82| 
	.dwpsn	"DSP28_CpuTimers.c",83,2
        MOVL      XAR4,*-SP[4]          ; |83| 
        MOVL      XAR4,*+XAR4[0]        ; |83| 
        MOV       *+XAR4[7],#0          ; |83| 
	.dwpsn	"DSP28_CpuTimers.c",86,2
        MOVL      XAR4,*-SP[4]          ; |86| 
        MOVL      XAR4,*+XAR4[0]        ; |86| 
        AND       *+XAR4[4],#0xfffb     ; |86| 
	.dwpsn	"DSP28_CpuTimers.c",87,2
        MOVL      XAR4,*-SP[4]          ; |87| 
        MOVL      XAR4,*+XAR4[0]        ; |87| 
        AND       *+XAR4[4],#0xfff7     ; |87| 
	.dwpsn	"DSP28_CpuTimers.c",88,2
        MOVL      XAR4,*-SP[4]          ; |88| 
        MOVL      XAR4,*+XAR4[0]        ; |88| 
        OR        *+XAR4[4],#0x0010     ; |88| 
	.dwpsn	"DSP28_CpuTimers.c",89,2
        MOVL      XAR4,*-SP[4]          ; |89| 
        MOVL      XAR4,*+XAR4[0]        ; |89| 
        OR        *+XAR4[4],#0x0020     ; |89| 
	.dwpsn	"DSP28_CpuTimers.c",90,2
        MOVL      XAR4,*-SP[4]          ; |90| 
        MOVL      XAR4,*+XAR4[0]        ; |90| 
        AND       *+XAR4[4],#0xffbf     ; |90| 
	.dwpsn	"DSP28_CpuTimers.c",91,2
        MOVL      XAR4,*-SP[4]          ; |91| 
        MOVL      XAR4,*+XAR4[0]        ; |91| 
        OR        *+XAR4[4],#0x0380     ; |91| 

⌨️ 快捷键说明

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