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

📄 main.asm

📁 USB for TMS320C5402
💻 ASM
字号:
;***************************************************************
;* TMS320C54x C/C++ Codegen                  PC Version 3.831  *
;* Date/Time created: Tue Feb 26 00:02:10 2008                 *
;***************************************************************
	.mmregs
FP	.set	AR7
	.c_mode
	.file	"main.c"
	.global	_ms
	.bss	_ms,1,0,0
	.sym	_ms,_ms, 4, 2, 16
	.global	_f
	.bss	_f,1,0,0
	.sym	_f,_f, 4, 2, 16
	.global	_mybuf1
	.bss	_mybuf1,1,0,0
	.sym	_mybuf1,_mybuf1, 4, 2, 16
	.global	_mybuf2
	.bss	_mybuf2,1,0,0
	.sym	_mybuf2,_mybuf2, 4, 2, 16
	.global	_mybuf3
	.bss	_mybuf3,1,0,0
	.sym	_mybuf3,_mybuf3, 4, 2, 16
	.global	_i
	.bss	_i,1,0,0
	.sym	_i,_i, 4, 2, 16
	.global	_mytime
	.bss	_mytime,2,0,2
	.sym	_mytime,_mytime, 5, 2, 32
	.global	_mysecond
	.bss	_mysecond,2,0,2
	.sym	_mysecond,_mysecond, 5, 2, 32
	.global	_Timer_Count
	.bss	_Timer_Count,1,0,0
	.sym	_Timer_Count,_Timer_Count, 2, 2, 16
	.global	_myflag
	.bss	_myflag,1,0,0
	.sym	_myflag,_myflag, 3, 2, 16
	.global	_myflag2
	.bss	_myflag2,1,0,0
	.sym	_myflag2,_myflag2, 3, 2, 16
	.global	_bFlags
	.bss	_bFlags,11,0,0
	.sym	_bFlags,_bFlags, 9, 2, 176, ___FLAGS
	.global	_mytemp11
	.bss	_mytemp11,1,0,0
	.sym	_mytemp11,_mytemp11, 14, 2, 16
	.global	_mytemp22
	.bss	_mytemp22,1,0,0
	.sym	_mytemp22,_mytemp22, 14, 2, 16
	.global	_mydbf
	.bss	_mydbf,239,0,0
	.sym	_mydbf,_mydbf, 60, 2, 3824,, 239
	.global	_mydbf2
	.bss	_mydbf2,239,0,0
	.sym	_mydbf2,_mydbf2, 60, 2, 3824,, 239
;	c:\ti\c5400\cgtools\bin\acp500.exe -@C:\DOCUME~1\amateur\LOCALS~1\Temp\TI2376_4 

	.sect	".text"
	.global	_main
	.sym	_main,_main, 32, 2, 0
	.func	21

;***************************************************************
;* FUNCTION DEF: _main                                         *
;***************************************************************
_main:
	.line	2
        PSHM      AR1
        FRAME     #-2
	.line	3
        CALL      #_VC5402Init          ; |23| 
        ; call occurs [#_VC5402Init] ; |23| 
	.line	4
        CALL      #_LCD_INIT            ; |24| 
        ; call occurs [#_LCD_INIT] ; |24| 
	.line	5
        CALL      #_SL811_Init          ; |25| 
        ; call occurs [#_SL811_Init] ; |25| 
	.line	6
        ST        #2,*(_f)              ; |26| 
	.line	7
        LD        #0,A
        STL       A,*(_myflag)
        STL       A,*(_myflag2)
	.line	8
        LD        #0,A
        DST       A,*(_mytime)          ; |28| 
	.line	9
        LD        #0,A
        DST       A,*(_mysecond)        ; |29| 
	.line	10
        ST        #48,*(_mybuf1)        ; |30| 
	.line	11
        ST        #16,*(_mybuf3)        ; |31| 
	.line	13
        ST        #1,*SP(0)             ; |33| 
        ST        #SL1,*SP(1)           ; |33| 
        CALLD     #_LCD_WriteStr        ; |33| 
        NOP
        LD        #1,A
        ; call occurs [#_LCD_WriteStr] ; |33| 
	.line	14
        ST        #4,*SP(0)             ; |34| 
        ST        #SL2,*SP(1)           ; |34| 
        CALLD     #_LCD_WriteStr        ; |34| 
        NOP
        LD        #7,A
        ; call occurs [#_LCD_WriteStr] ; |34| 
	.line	15
        ST        #2,*SP(0)             ; |35| 
        ST        #SL3,*SP(1)           ; |35| 
        CALLD     #_LCD_WriteStr        ; |35| 
        NOP
        LD        #1,A
        ; call occurs [#_LCD_WriteStr] ; |35| 
	.line	16
        ST        #0,*(_i)              ; |36| 
        LD        #239,A
        SSBX      SXM
        SUB       *(_i),A               ; |36| 
        BC        L2,ALT                ; |36| 
        ; branch occurs ; |36| 
L1:    
	.line	18
        MVDM      *(_i),AR1
        NOP
        MVKD      *(_i),*AR1(_mydbf)    ; |38| 
	.line	19
        LD        #239,A
        ADDM      #1,*(_i)              ; |39| 
        SUB       *(_i),A               ; |39| 
        BC        L1,AGEQ               ; |39| 
        ; branch occurs ; |39| 
L2:    
	.line	20
        ST        #_mydbf,*SP(0)        ; |40| 
        ST        #239,*SP(1)           ; |40| 
        CALLD     #_SL811BufWrite       ; |40| 
        NOP
        LD        #16,A
        ; call occurs [#_SL811BufWrite] ; |40| 
	.line	21
        ST        #_mydbf2,*SP(0)       ; |41| 
        ST        #239,*SP(1)           ; |41| 
        CALLD     #_SL811BufRead        ; |41| 
        NOP
        LD        #16,A
        ; call occurs [#_SL811BufRead] ; |41| 
	.line	24
L3:    
	.line	36
        LD        *(_myflag),A          ; |56| 
        BC        L3,AEQ                ; |56| 
        ; branch occurs ; |56| 
L4:    
	.line	41
        CALLD     #_SL811Read           ; |61| 
        NOP
        LD        #13,A
        ; call occurs [#_SL811Read] ; |61| 
        STLM      A,AR1
        NOP
        NOP
        BANZ      L5,*AR1(-225)         ; |61| 
        ; branch occurs ; |61| 
	.line	43
        ST        #3,*SP(0)             ; |63| 
        ST        #SL4,*SP(1)           ; |63| 
        CALLD     #_LCD_WriteStr        ; |63| 
        NOP
        LD        #1,A
        ; call occurs [#_LCD_WriteStr] ; |63| 
	.line	44
        CALL      #_U_Disk_Test         ; |64| 
        ; call occurs [#_U_Disk_Test] ; |64| 
L5:    
	.line	48
        CALLD     #_SL811Read           ; |68| 
        NOP
        LD        #13,A
        ; call occurs [#_SL811Read] ; |68| 
        STLM      A,AR1
        NOP
        NOP
        BANZ      L6,*AR1(-97)          ; |68| 
        ; branch occurs ; |68| 
	.line	49
        ST        #3,*SP(0)             ; |69| 
        ST        #SL5,*SP(1)           ; |69| 
        CALLD     #_LCD_WriteStr        ; |69| 
        NOP
        LD        #1,A
        ; call occurs [#_LCD_WriteStr] ; |69| 
L6:    
	.line	50
        CALLD     #_SL811Read           ; |70| 
        NOP
        LD        #13,A
        ; call occurs [#_SL811Read] ; |70| 
        STLM      A,AR1
        NOP
        NOP
        BANZ      L7,*AR1(-128)         ; |70| 
        ; branch occurs ; |70| 
	.line	51
        ST        #3,*SP(0)             ; |71| 
        ST        #SL6,*SP(1)           ; |71| 
        CALLD     #_LCD_WriteStr        ; |71| 
        NOP
        LD        #1,A
        ; call occurs [#_LCD_WriteStr] ; |71| 
L7:    
	.line	53
        ST        #4,*SP(0)             ; |73| 
        MVKD      *(_mysecond+1),*SP(1) ; |73| 
        CALLD     #_LCD_DispDecData     ; |73| 
        NOP
        LD        #7,A
        ; call occurs [#_LCD_DispDecData] ; |73| 
	.line	55
        CALLD     #_SL811Read           ; |75| 
        NOP
        LD        #13,A
        ; call occurs [#_SL811Read] ; |75| 
        ST        #2,*SP(0)             ; |75| 
        STL       A,*SP(1)
        CALLD     #_LCD_DispHexData     ; |75| 
        NOP
        LD        #7,A
        ; call occurs [#_LCD_DispHexData] ; |75| 
	.line	56
        LD        *(_mybuf3),A
        CALL      #_SL811Read           ; |76| 
        ; call occurs [#_SL811Read] ; |76| 
        ST        #2,*SP(0)             ; |76| 
        STL       A,*SP(1)
        CALLD     #_LCD_DispHexData     ; |76| 
        NOP
        LD        #3,A
        ; call occurs [#_LCD_DispHexData] ; |76| 
	.line	57
        ST        #2,*SP(0)             ; |77| 
        MVKD      *(_mybuf3),*SP(1)     ; |77| 
        CALLD     #_LCD_DispHexData     ; |77| 
        NOP
        LD        #1,A
        ; call occurs [#_LCD_DispHexData] ; |77| 
	.line	58
        ST        #0,*(_myflag)         ; |78| 
	.line	59
        ST        #0,*(_myflag2)        ; |79| 
	.line	61
        LD        *(_myflag),A          ; |81| 
        BC        L4,ANEQ               ; |81| 
        ; branch occurs ; |81| 
	.line	63
        B         L3                    ; |83| 
        ; branch occurs ; |83| 
	.endfunc	85,000000400h,3



	.sect	".text"
	.global	_T0_Delay
	.sym	_T0_Delay,_T0_Delay, 32, 2, 0
	.func	91

;***************************************************************
;* FUNCTION DEF: _T0_Delay                                     *
;***************************************************************
_T0_Delay:
	.line	2
;* A     assigned to _dl
	.sym	_dl,0, 4, 17, 16
	.sym	_dl,0, 4, 1, 16
        FRAME     #-1
        NOP
        STL       A,*SP(0)
	.line	3
        ST        #0,*(_ms)             ; |93| 
	.line	4
        SSBX      SXM
        NOP
        LD        *SP(0),A              ; |94| 
        SUB       *(_ms),A              ; |94| 
        BC        L9,ALEQ               ; |94| 
        ; branch occurs ; |94| 
L8:    
        LD        *SP(0),A              ; |94| 
        SUB       *(_ms),A              ; |94| 
        BC        L8,AGT                ; |94| 
        ; branch occurs ; |94| 
L9:    
	.line	5
        FRAME     #1
        RET
        ; return occurs
	.endfunc	95,000000000h,1



	.sect	".text"
	.global	_Delay
	.sym	_Delay,_Delay, 32, 2, 0
	.func	97

;***************************************************************
;* FUNCTION DEF: _Delay                                        *
;***************************************************************
_Delay:
	.line	2
;* A     assigned to _num
	.sym	_num,0, 15, 17, 32
	.sym	_num,0, 15, 1, 32
	.sym	_i,2, 15, 1, 32
        FRAME     #-5
        NOP
        DST       A,*SP(0)              ; |98| 
	.line	4
        RSBX      SXM
        LD        #0,A
        DST       A,*SP(2)              ; |100| 
        DLD       *SP(0),A
        DSUB      *SP(2),A              ; |100| 
        BC        L11,ALEQ              ; |100| 
        ; branch occurs ; |100| 
L10:    
        DLD       *SP(2),A              ; |100| 
        ADD       #1,A                  ; |100| 
        DST       A,*SP(2)              ; |100| 
        DLD       *SP(0),A              ; |100| 
        DSUB      *SP(2),A              ; |100| 
        BC        L10,AGT               ; |100| 
        ; branch occurs ; |100| 
L11:    
	.line	5
        FRAME     #5
        RET
        ; return occurs
	.endfunc	101,000000000h,5



	.sect	".text"
	.global	_timer0
	.sym	_timer0,_timer0, 32, 2, 0
	.func	103

;***************************************************************
;* FUNCTION DEF: _timer0                                       *
;***************************************************************
_timer0:
	.line	2
        NOP
        PSHM      AL
        PSHM      AH
        PSHM      AG
        PSHM      ST0
        PSHM      ST1
        PSHM      PMST
        ANDM      #32063,*(ST1)
        ORM       #16384,*(ST1)
        ANDM      #-4,*(PMST)
        NOP
	.line	3
        ADDM      #1,*(_ms)             ; |105| 
	.line	4
        DLD       *(_mytime),A          ; |106| 
        ADD       #1,A                  ; |106| 
        DST       A,*(_mytime)          ; |106| 
	.line	5
        SSBX      SXM
        LD        #1000,A
        DSUB      *(_mytime),A          ; |107| 
        BC        L12,AGT               ; |107| 
        ; branch occurs ; |107| 
	.line	7
        DLD       *(_mysecond),A        ; |109| 
        ADD       #1,A                  ; |109| 
        DST       A,*(_mysecond)        ; |109| 
	.line	8
        LD        #0,A
        DST       A,*(_mytime)          ; |110| 
	.line	9
        ST        #1,*(_myflag)         ; |111| 
L12:    
	.line	11
        LD        #60,A
        DSUB      *(_mysecond),A        ; |113| 
        BC        L13,AGT               ; |113| 
        ; branch occurs ; |113| 
	.line	13
        LD        #0,A
        DST       A,*(_mysecond)        ; |115| 
	.line	14
L13:    
	.line	15
        POPM      PMST
        POPM      ST1
        POPM      ST0
        POPM      AG
        POPM      AH
        POPM      AL
        RETE
        ; branch occurs
	.endfunc	117,021800007h,6



	.sect	".text"
	.global	_int3
	.sym	_int3,_int3, 32, 2, 0
	.func	119

;***************************************************************
;* FUNCTION DEF: _int3                                         *
;***************************************************************
_int3:
	.line	2
        NOP
        PSHM      AL
        PSHM      AH
        PSHM      AG
        PSHM      ST0
        PSHM      ST1
        PSHM      PMST
        ANDM      #32063,*(ST1)
        ORM       #16384,*(ST1)
        ANDM      #-4,*(PMST)
        NOP
	.line	6
        LD        *(_myflag2),A         ; |124| 
        BC        L14,ANEQ              ; |124| 
        ; branch occurs ; |124| 
	.line	8
        ADDM      #1,*(_mybuf3)         ; |126| 
	.line	9
        ST        #1,*(_myflag2)        ; |127| 
	.line	10
L14:    
	.line	12
        POPM      PMST
        POPM      ST1
        POPM      ST0
        POPM      AG
        POPM      AH
        POPM      AL
        RETE
        ; branch occurs
	.endfunc	130,021800007h,6


;***************************************************************
;* STRINGS                                                     *
;***************************************************************
	.sect	".const"
SL1:	.string	210,212,207,194,202,199,"L811",188,196,180,230,198,247,0
SL2:	.string	"00",195,235,0
SL3:	.string	"  H=    0DH=",0
SL4:	.string	189,211,200,235,193,203,210,187,184,246,"USB!",0
SL5:	.string	210,198,179,246,193,203,210,187,184,246,"USB!",0
SL6:	.string	210,209,180,230,212,218,210,187,184,246,"USB!",0
;***************************************************************
;* UNDEFINED EXTERNAL REFERENCES                               *
;***************************************************************
	.global	_LCD_INIT
	.global	_LCD_WriteStr
	.global	_LCD_DispHexData
	.global	_LCD_DispDecData
	.global	_SL811_Init
	.global	_SL811Read
	.global	_SL811BufRead
	.global	_SL811BufWrite
	.global	_VC5402Init
	.global	_U_Disk_Test

;***************************************************************
;* TYPE INFORMATION                                            *
;***************************************************************
	.stag	__FLAGS, 176
	.member	_SLAVE_IS_ATTACHED, 0, 12, 8, 16
	.member	_SLAVE_REMOVED, 16, 12, 8, 16
	.member	_SLAVE_FOUND, 32, 12, 8, 16
	.member	_SLAVE_ENUMERATED, 48, 12, 8, 16
	.member	_SLAVE_ONLINE, 64, 12, 8, 16
	.member	_TIMEOUT_ERR, 80, 12, 8, 16
	.member	_DATA_STOP, 96, 12, 8, 16
	.member	_bData1, 112, 12, 8, 16
	.member	_bUartInDone, 128, 12, 8, 16
	.member	_bMassDevice, 144, 12, 8, 16
	.member	_FULL_SPEED, 160, 12, 8, 16
	.eos
	.utag	___FLAGS, 176
	.member	_bits, 0, 8, 11, 176, __FLAGS
	.eos
	.sym	_FLAGS, 0, 9, 13, 176,___FLAGS

⌨️ 快捷键说明

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