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

📄 ex1.asm

📁 该代码采用c5400dsp的汇编语言和c语言实现ucos操作系统
💻 ASM
字号:
;***************************************************************
;* TMS320C54x ANSI C Codegen                      Version 3.70 *
;* Date/Time created: Fri Sep 26 10:44:38 2003                 *
;***************************************************************
	.mmregs
FP	.set	AR7
	.c_mode
	.file	"ex1.c"
	.global	_AckMbox
	.bss	_AckMbox,1,0,0
	.sym	_AckMbox,_AckMbox, 24, 2, 16, $$fake0
	.global	_TxMbox
	.bss	_TxMbox,1,0,0
	.sym	_TxMbox,_TxMbox, 24, 2, 16, $$fake0
	.global	_TaskStk
	.bss	_TaskStk,768,0,0
	.sym	_TaskStk,_TaskStk, 254, 2, 12288,, 3, 256
	.global	_TaskStartStk
	.bss	_TaskStartStk,256,0,0
	.sym	_TaskStartStk,_TaskStartStk, 62, 2, 4096,, 256
	.global	_counter1
	.bss	_counter1,1,0,0
	.sym	_counter1,_counter1, 3, 2, 16
	.global	_counter2
	.bss	_counter2,1,0,0
	.sym	_counter2,_counter2, 3, 2, 16
	.global	_counter3
	.bss	_counter3,1,0,0
	.sym	_counter3,_counter3, 3, 2, 16
;	c:\ti\c5400\cgtools\bin\acp500.exe -Ic:/ti/c5400/bios/include -Ic:/ti/c5400/rtdx/include -Ic:/ti/c5400/cgtools/include --keep_unneeded_types -m --i_output_file C:\DOCUME~1\satysx2\LOCALS~1\Temp\TI2472_2 --template_info_file C:\DOCUME~1\satysx2\LOCALS~1\Temp\TI2472_3 --object_file .\ex1.obj --opt_shell 8 ex1.c -g -k -as -fr. -ic:/ti/c5400/bios/include -ic:/ti/c5400/rtdx/include -ic:/ti/c5400/cgtools/include ex1.c 
	.sect	".text"
	.global	_main
	.sym	_main,_main, 36, 2, 0
	.func	21

;***************************************************************
;* FUNCTION DEF: _main                                         *
;***************************************************************
_main:
	.line	2
        FRAME     #-5
	.line	4
        CALL      #_INIT_C54            ; |24| 
        ; call occurs [#_INIT_C54] ; |24| 
	.line	6
        LD        #0,A
        STL       A,*(_counter1)
        STL       A,*(_counter2)
        STL       A,*(_counter3)
	.line	8
        CALL      #_OSInit              ; |28| 
        ; call occurs [#_OSInit] ; |28| 
	.line	10
        ST        #_counter1,*SP(0)     ; |30| 
        ST        #_TaskStartStk+255,*SP(1) ; |30| 
        ST        #0,*SP(2)             ; |30| 
        CALLD     #_OSTaskCreate        ; |30| 
        LD        #_TaskStart,A
        ; call occurs [#_OSTaskCreate] ; |30| 
	.line	12
        CALL      #_OSStart             ; |32| 
        ; call occurs [#_OSStart] ; |32| 
        LD        #0,A
	.line	13
        FRAME     #5                    ; |32| 
        RET       ; |32| 
        ; return occurs ; |32| 
	.endfunc	33,000000000h,5


	.sect	".text"
	.global	_TaskStart
	.sym	_TaskStart,_TaskStart, 32, 2, 0
	.func	35

;***************************************************************
;* FUNCTION DEF: _TaskStart                                    *
;***************************************************************
_TaskStart:
	.line	2
;* A     assigned to _data
	.sym	_data,0, 16, 17, 16
	.sym	_data,4, 16, 1, 16
	.sym	_err,5, 14, 1, 16
        PSHM      AR1
        FRAME     #-6
        NOP
        STL       A,*SP(4)
	.line	7
 ssbx INTM
	.line	8
        CALL      #_StartTimer          ; |42| 
        ; call occurs [#_StartTimer] ; |42| 
	.line	9
 rsbx INTM
	.line	11
        ST        #_counter2,*SP(0)     ; |45| 
        ST        #_TaskStk+255,*SP(1)  ; |45| 
        ST        #1,*SP(2)             ; |45| 
        CALLD     #_OSTaskCreate        ; |45| 
        LD        #_Task1,A
        ; call occurs [#_OSTaskCreate] ; |45| 
	.line	12
        ST        #_counter3,*SP(0)     ; |46| 
        ST        #_TaskStk+511,*SP(1)  ; |46| 
        ST        #2,*SP(2)             ; |46| 
        CALLD     #_OSTaskCreate        ; |46| 
        LD        #_Task2,A
        ; call occurs [#_OSTaskCreate] ; |46| 
	.line	14
        CALLD     #_OSMboxCreate        ; |48| 
        NOP
        LD        #0,A
        ; call occurs [#_OSMboxCreate] ; |48| 
        STL       A,*(_AckMbox)
	.line	15
        CALLD     #_OSMboxCreate        ; |49| 
        NOP
        LD        #0,A
        ; call occurs [#_OSMboxCreate] ; |49| 
        STL       A,*(_TxMbox)
L1:    
	.line	18
        MVDK      *SP(4),*(AR1)
        ADDM      #1,*AR1               ; |52| 
	.line	19
        ADDM      #1,*SP(5)             ; |53| 
	.line	20
        CALLD     #_OSTimeDly           ; |54| 
        NOP
        LD        #100,A
        ; call occurs [#_OSTimeDly] ; |54| 
	.line	21
        B         L1                    ; |55| 
        ; branch occurs ; |55| 
	.endfunc	56,000000400h,7


	.sect	".text"
	.global	_Task1
	.sym	_Task1,_Task1, 32, 2, 0
	.func	59

;***************************************************************
;* FUNCTION DEF: _Task1                                        *
;***************************************************************
_Task1:
	.line	2
;* A     assigned to _data
	.sym	_data,0, 16, 17, 16
	.sym	_data,2, 16, 1, 16
	.sym	_err,3, 14, 1, 16
	.sym	_txmsg,4, 2, 1, 16
        PSHM      AR1
        FRAME     #-6
        NOP
        STL       A,*SP(2)
	.line	7
        ST        #65,*SP(4)            ; |65| 
L2:    
	.line	9
        SSBX      SXM
        LD        #90,A
        SUB       *SP(4),A              ; |67| 
        BC        L4,ALT                ; |67| 
        ; branch occurs ; |67| 
L3:    
	.line	11
        LDM       SP,A
        ADD       #4,A
        STL       A,*SP(0)
        LD        *(_TxMbox),A
        CALL      #_OSMboxPost          ; |69| 
        ; call occurs [#_OSMboxPost] ; |69| 
	.line	12
        LDM       SP,A
        ADD       #3,A
        ST        #0,*SP(0)             ; |70| 
        STL       A,*SP(1)
        LD        *(_AckMbox),A
        CALL      #_OSMboxPend          ; |70| 
        ; call occurs [#_OSMboxPend] ; |70| 
	.line	13
        ADDM      #1,*SP(4)             ; |71| 
	.line	14
        SSBX      SXM
        LD        #90,A
        SUB       *SP(4),A              ; |72| 
        BC        L3,AGEQ               ; |72| 
        ; branch occurs ; |72| 
L4:    
	.line	15
        ST        #65,*SP(4)            ; |73| 
	.line	16
        MVDK      *SP(2),*(AR1)
        ADDM      #1,*AR1               ; |74| 
	.line	17
        ADDM      #1,*SP(3)             ; |75| 
	.line	18
        B         L2                    ; |76| 
        ; branch occurs ; |76| 
	.endfunc	77,000000400h,7


	.sect	".text"
	.global	_Task2
	.sym	_Task2,_Task2, 32, 2, 0
	.func	79

;***************************************************************
;* FUNCTION DEF: _Task2                                        *
;***************************************************************
_Task2:
	.line	2
;* A     assigned to _data
	.sym	_data,0, 16, 17, 16
	.sym	_data,2, 16, 1, 16
	.sym	_rxmsg,3, 18, 1, 16
	.sym	_err,4, 14, 1, 16
        PSHM      AR1
        FRAME     #-6
        NOP
        STL       A,*SP(2)
L5:    
	.line	7
        LDM       SP,A
        ADD       #4,A
        ST        #0,*SP(0)             ; |85| 
        STL       A,*SP(1)
        LD        *(_TxMbox),A
        CALL      #_OSMboxPend          ; |85| 
        ; call occurs [#_OSMboxPend] ; |85| 
        STL       A,*SP(3)
	.line	8
        CALLD     #_OSTimeDly           ; |86| 
        NOP
        LD        #5,A
        ; call occurs [#_OSTimeDly] ; |86| 
	.line	9
        ST        #1,*SP(0)             ; |87| 
        LD        *(_AckMbox),A
        CALL      #_OSMboxPost          ; |87| 
        ; call occurs [#_OSMboxPost] ; |87| 
	.line	10
        MVDK      *SP(2),*(AR1)
        ADDM      #1,*AR1               ; |88| 
	.line	11
        B         L5                    ; |89| 
        ; branch occurs ; |89| 
	.endfunc	90,000000400h,7


;***************************************************************
;* UNDEFINED EXTERNAL REFERENCES                               *
;***************************************************************
	.global	_OSMboxCreate
	.global	_OSMboxPend
	.global	_OSMboxPost
	.global	_OSTaskCreate
	.global	_OSTimeDly
	.global	_OSInit
	.global	_OSStart
	.global	_StartTimer
	.global	_INIT_C54

;***************************************************************
;* TYPE INFORMATION                                            *
;***************************************************************
	.sym	_INT8U, 0, 14, 13, 16
	.sym	_INT16U, 0, 14, 13, 16
	.sym	_OS_STK, 0, 14, 13, 16
	.stag	$$fake0, 96
	.member	_OSEventPtr, 0, 16, 8, 16
	.member	_OSEventTbl, 16, 62, 8, 32, , 2
	.member	_OSEventCnt, 48, 14, 8, 16
	.member	_OSEventType, 64, 14, 8, 16
	.member	_OSEventGrp, 80, 14, 8, 16
	.eos
	.sym	_OS_EVENT, 0, 8, 13, 96,$$fake0

⌨️ 快捷键说明

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