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

📄 ex1l.asm

📁 ucos 在F2812上的移置,内含三个任务,可以在F2812上跑起来,通过测试,在片外SRAM中运行,完整的工程
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;***************************************************************
;* TMS320C2000 C/C++ Codegen                         PC v4.1.3 *
;* Date/Time created: Wed May 20 15:08:41 2009                 *
;***************************************************************
	.compiler_opts --mem_model:code=flat --mem_model:data=large --quiet --silicon_version=28 
FP	.set	XAR2

DW$CU	.dwtag  DW_TAG_compile_unit
	.dwattr DW$CU, DW_AT_name("Ex1l.c")
	.dwattr DW$CU, DW_AT_producer("TMS320C2000 C/C++ Codegen PC v4.1.3 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("InitPieVectTable"), DW_AT_symbol_name("_InitPieVectTable")
	.dwattr DW$1, DW_AT_declaration(0x01)
	.dwattr DW$1, DW_AT_external(0x01)

DW$2	.dwtag  DW_TAG_subprogram, DW_AT_name("InitSysCtrl"), DW_AT_symbol_name("_InitSysCtrl")
	.dwattr DW$2, DW_AT_declaration(0x01)
	.dwattr DW$2, DW_AT_external(0x01)

DW$3	.dwtag  DW_TAG_subprogram, DW_AT_name("OSStart"), DW_AT_symbol_name("_OSStart")
	.dwattr DW$3, DW_AT_declaration(0x01)
	.dwattr DW$3, DW_AT_external(0x01)

DW$4	.dwtag  DW_TAG_subprogram, DW_AT_name("OSCtxSw"), DW_AT_symbol_name("_OSCtxSw")
	.dwattr DW$4, DW_AT_declaration(0x01)
	.dwattr DW$4, DW_AT_external(0x01)

DW$5	.dwtag  DW_TAG_subprogram, DW_AT_name("OSTimeDly"), DW_AT_symbol_name("_OSTimeDly")
	.dwattr DW$5, DW_AT_declaration(0x01)
	.dwattr DW$5, DW_AT_external(0x01)
DW$6	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$50)
	.dwendtag DW$5


DW$7	.dwtag  DW_TAG_subprogram, DW_AT_name("InitPieCtrl"), DW_AT_symbol_name("_InitPieCtrl")
	.dwattr DW$7, DW_AT_declaration(0x01)
	.dwattr DW$7, DW_AT_external(0x01)

DW$8	.dwtag  DW_TAG_subprogram, DW_AT_name("OSInit"), DW_AT_symbol_name("_OSInit")
	.dwattr DW$8, DW_AT_declaration(0x01)
	.dwattr DW$8, DW_AT_external(0x01)

DW$9	.dwtag  DW_TAG_subprogram, DW_AT_name("OSTickISR"), DW_AT_symbol_name("_OSTickISR")
	.dwattr DW$9, DW_AT_declaration(0x01)
	.dwattr DW$9, DW_AT_external(0x01)

DW$10	.dwtag  DW_TAG_subprogram, DW_AT_name("OSTaskCreate"), DW_AT_symbol_name("_OSTaskCreate")
	.dwattr DW$10, DW_AT_type(*DW$T$56)
	.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$49)
DW$12	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$3)
DW$13	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$58)
DW$14	.dwtag  DW_TAG_formal_parameter, DW_AT_type(*DW$T$56)
	.dwendtag DW$10

	.global	_CpuTimer0
_CpuTimer0:	.usect	".ebss",8,1,1
DW$15	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer0"), DW_AT_symbol_name("_CpuTimer0")
	.dwattr DW$15, DW_AT_location[DW_OP_addr _CpuTimer0]
	.dwattr DW$15, DW_AT_type(*DW$T$34)
	.dwattr DW$15, DW_AT_external(0x01)
DW$16	.dwtag  DW_TAG_variable, DW_AT_name("CpuTimer0Regs"), DW_AT_symbol_name("_CpuTimer0Regs")
	.dwattr DW$16, DW_AT_type(*DW$T$32)
	.dwattr DW$16, DW_AT_declaration(0x01)
	.dwattr DW$16, DW_AT_external(0x01)
DW$17	.dwtag  DW_TAG_variable, DW_AT_name("PieCtrlRegs"), DW_AT_symbol_name("_PieCtrlRegs")
	.dwattr DW$17, DW_AT_type(*DW$T$75)
	.dwattr DW$17, DW_AT_declaration(0x01)
	.dwattr DW$17, DW_AT_external(0x01)
DW$18	.dwtag  DW_TAG_variable, DW_AT_name("TaskStartStk"), DW_AT_symbol_name("_TaskStartStk")
	.dwattr DW$18, DW_AT_type(*DW$T$61)
	.dwattr DW$18, DW_AT_declaration(0x01)
	.dwattr DW$18, DW_AT_external(0x01)
DW$19	.dwtag  DW_TAG_variable, DW_AT_name("TaskStk"), DW_AT_symbol_name("_TaskStk")
	.dwattr DW$19, DW_AT_type(*DW$T$62)
	.dwattr DW$19, DW_AT_declaration(0x01)
	.dwattr DW$19, DW_AT_external(0x01)
DW$20	.dwtag  DW_TAG_variable, DW_AT_name("PieVectTable"), DW_AT_symbol_name("_PieVectTable")
	.dwattr DW$20, DW_AT_type(*DW$T$47)
	.dwattr DW$20, DW_AT_declaration(0x01)
	.dwattr DW$20, DW_AT_external(0x01)
;	C:\CCStudio_v3.3\C2000\cgtools\bin\ac2000.exe -@C:\DOCUME~1\CHENGX~1\LOCALS~1\Temp\TI47612 
	.sect	".text"
	.global	_main

DW$21	.dwtag  DW_TAG_subprogram, DW_AT_name("main"), DW_AT_symbol_name("_main")
	.dwattr DW$21, DW_AT_low_pc(_main)
	.dwattr DW$21, DW_AT_high_pc(0x00)
	.dwattr DW$21, DW_AT_begin_file("Ex1l.c")
	.dwattr DW$21, DW_AT_begin_line(0x34)
	.dwattr DW$21, DW_AT_begin_column(0x06)
	.dwpsn	"Ex1l.c",53,1

	.dwfde DW$CIE

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

_main:
	.dwcfa	0x1d, -2
	.dwcfa	0x1c, 26, 0
	.dwcfa	0x09, 40, 26
        ADDB      SP,#2
	.dwcfa	0x1d, -4
	.dwpsn	"Ex1l.c",56,5
 setc INTM
	.dwpsn	"Ex1l.c",57,5
 EALLOW
	.dwpsn	"Ex1l.c",58,5
        SPM       #0
        LCR       #_InitSysCtrl         ; |58| 
        ; call occurs [#_InitSysCtrl] ; |58| 
	.dwpsn	"Ex1l.c",59,5
        LCR       #_InitPieVectTable    ; |59| 
        ; call occurs [#_InitPieVectTable] ; |59| 
	.dwpsn	"Ex1l.c",60,5
        LCR       #_InitPieCtrl         ; |60| 
        ; call occurs [#_InitPieCtrl] ; |60| 
	.dwpsn	"Ex1l.c",61,5
 EDIS
	.dwpsn	"Ex1l.c",63,5
        SPM       #0
        LCR       #_OSInit              ; |63| 
        ; call occurs [#_OSInit] ; |63| 
	.dwpsn	"Ex1l.c",64,5
        MOVL      XAR4,#_TaskStartStk   ; |64| 
        MOVL      *-SP[2],XAR4          ; |64| 
        MOVB      XAR5,#0
        MOVB      AL,#3                 ; |64| 
        MOVL      XAR4,#_TaskStart      ; |64| 
        LCR       #_OSTaskCreate        ; |64| 
        ; call occurs [#_OSTaskCreate] ; |64| 
	.dwpsn	"Ex1l.c",65,5
        LCR       #_OSStart             ; |65| 
        ; call occurs [#_OSStart] ; |65| 
	.dwpsn	"Ex1l.c",66,1
        SUBB      SP,#2
	.dwcfa	0x1d, -2
        LRETR
        ; return occurs
	.dwattr DW$21, DW_AT_end_file("Ex1l.c")
	.dwattr DW$21, DW_AT_end_line(0x42)
	.dwattr DW$21, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$21

	.sect	".text"
	.global	_TaskStart

DW$22	.dwtag  DW_TAG_subprogram, DW_AT_name("TaskStart"), DW_AT_symbol_name("_TaskStart")
	.dwattr DW$22, DW_AT_low_pc(_TaskStart)
	.dwattr DW$22, DW_AT_high_pc(0x00)
	.dwattr DW$22, DW_AT_begin_file("Ex1l.c")
	.dwattr DW$22, DW_AT_begin_line(0x4a)
	.dwattr DW$22, DW_AT_begin_column(0x06)
	.dwpsn	"Ex1l.c",75,1

	.dwfde DW$CIE

;***************************************************************
;* FNAME: _TaskStart                    FR SIZE:   4           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            2 Parameter,  2 Auto,  0 SOE     *
;***************************************************************

_TaskStart:
	.dwcfa	0x1d, -2
	.dwcfa	0x1c, 26, 0
	.dwcfa	0x09, 40, 26
        ADDB      SP,#4
	.dwcfa	0x1d, -6
;* AR4   assigned to _data
DW$23	.dwtag  DW_TAG_formal_parameter, DW_AT_name("data"), DW_AT_symbol_name("_data")
	.dwattr DW$23, DW_AT_type(*DW$T$3)
	.dwattr DW$23, DW_AT_location[DW_OP_reg12]
DW$24	.dwtag  DW_TAG_variable, DW_AT_name("data"), DW_AT_symbol_name("_data")
	.dwattr DW$24, DW_AT_type(*DW$T$3)
	.dwattr DW$24, DW_AT_location[DW_OP_breg20 -4]
        MOVL      *-SP[4],XAR4          ; |75| 
	.dwpsn	"Ex1l.c",76,5
        MOVL      ACC,*-SP[4]           ; |76| 
        MOVL      *-SP[4],ACC           ; |76| 
	.dwpsn	"Ex1l.c",78,5
        LCR       #_InitCpuTimers       ; |78| 
        ; call occurs [#_InitCpuTimers] ; |78| 
	.dwpsn	"Ex1l.c",80,5
 EALLOW
	.dwpsn	"Ex1l.c",81,2
        OR        IER,#0x0001           ; |81| 
	.dwpsn	"Ex1l.c",82,5
        MOVW      DP,#_PieVectTable+62
        MOVL      XAR4,#_OSCtxSw        ; |82| 
        MOVL      @_PieVectTable+62,XAR4 ; |82| 
	.dwpsn	"Ex1l.c",83,2
        MOVW      DP,#_PieCtrlRegs+2
        OR        @_PieCtrlRegs+2,#0x0040 ; |83| 
	.dwpsn	"Ex1l.c",84,2
        MOVW      DP,#_PieVectTable+76
        MOVL      XAR4,#_OSTickISR      ; |84| 
        MOVL      @_PieVectTable+76,XAR4 ; |84| 
	.dwpsn	"Ex1l.c",85,2
 EDIS
	.dwpsn	"Ex1l.c",88,5
        MOV       AH,#17948
        MOV       AL,#16384
        MOVL      *-SP[2],ACC           ; |88| 
        MOV       AL,#0
        SPM       #0
        MOVL      XAR4,#_CpuTimer0      ; |88| 
        MOV       AH,#17136
        LCR       #_ConfigCpuTimer      ; |88| 
        ; call occurs [#_ConfigCpuTimer] ; |88| 
	.dwpsn	"Ex1l.c",89,5
        MOVL      XAR4,#_TaskStk        ; |89| 
        MOVL      *-SP[2],XAR4          ; |89| 
        MOVB      XAR5,#0
        MOVB      AL,#10                ; |89| 
        MOVL      XAR4,#_Task           ; |89| 
        LCR       #_OSTaskCreate        ; |89| 
        ; call occurs [#_OSTaskCreate] ; |89| 
	.dwpsn	"Ex1l.c",90,5
        MOVL      XAR4,#_TaskStk+30     ; |90| 
        MOVL      *-SP[2],XAR4          ; |90| 
        MOVB      XAR5,#0
        MOVB      AL,#12                ; |90| 
        MOVL      XAR4,#_Task1          ; |90| 
        LCR       #_OSTaskCreate        ; |90| 
        ; call occurs [#_OSTaskCreate] ; |90| 
	.dwpsn	"Ex1l.c",91,5
        MOVW      DP,#_CpuTimer0Regs+4
        AND       @_CpuTimer0Regs+4,#0xffef ; |91| 
	.dwpsn	"Ex1l.c",92,5
 clrc INTM
	.dwpsn	"Ex1l.c",93,2
 clrc DBGM
L1:    
DW$L$_TaskStart$2$B:
	.dwpsn	"Ex1l.c",97,6
        MOV       AL,*(0:0x4c00)        ; |97| 
        ORB       AL,#0x01              ; |97| 
        MOV       *(0:0x4c00),AL        ; |97| 
	.dwpsn	"Ex1l.c",98,9
        SPM       #0
        MOVB      AL,#25                ; |98| 
        LCR       #_OSTimeDly           ; |98| 
        ; call occurs [#_OSTimeDly] ; |98| 
	.dwpsn	"Ex1l.c",99,9
        MOV       AL,*(0:0x4c00)        ; |99| 
        ANDB      AL,#0xfe              ; |99| 
        MOV       *(0:0x4c00),AL        ; |99| 
	.dwpsn	"Ex1l.c",100,9
        MOVB      AL,#25                ; |100| 
        LCR       #_OSTimeDly           ; |100| 
        ; call occurs [#_OSTimeDly] ; |100| 
	.dwpsn	"Ex1l.c",102,8
        B         L1,UNC                ; |102| 
        ; branch occurs ; |102| 
DW$L$_TaskStart$2$E:

⌨️ 快捷键说明

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