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

📄 common.asm

📁 电力系统中的保护装置全部代码
💻 ASM
📖 第 1 页 / 共 4 页
字号:
;----------------------------------------------------------------------
; 208 | char2[0] = **(ReceBuff.pOutBuffer);     /*read character*/             
;----------------------------------------------------------------------
        ldp       @CL10,DP
        ldiu      @CL10,ar0             ; |208| 
        ldiu      *ar0,ar0              ; |208| 
        ldiu      *ar0,ar0              ; |208| 
        ldiu      *-fp(2),ar1           ; |208| 
        ldiu      *ar0,r0               ; |208| 
        sti       r0,*ar1               ; |208| 
	.line	46
;----------------------------------------------------------------------
; 209 | *(ReceBuff.pOutBuffer) = *(ReceBuff.pOutBuffer)+1;                     
;----------------------------------------------------------------------
        ldiu      @CL10,ar0             ; |209| 
        ldiu      *ar0,ar1              ; |209| 
        ldiu      1,r0                  ; |209| 
        ldiu      @CL10,ar0             ; |209| 
        addi3     r0,*ar1,r0            ; |209| Unsigned
        ldiu      *ar0,ar0              ; |209| 
        sti       r0,*ar0               ; |209| 
	.line	47
;----------------------------------------------------------------------
; 210 | char2[1] = 0;                           /*receive char reliable*/      
;----------------------------------------------------------------------
        ldiu      *-fp(2),ar0           ; |210| 
        ldiu      0,r0                  ; |210| 
        sti       r0,*+ar0(1)           ; |210| 
	.line	49
;----------------------------------------------------------------------
; 212 | if(*(ReceBuff.pOutBuffer) >= (ReceBuff.Buffer+ReceBuff.Length-1))      
;----------------------------------------------------------------------
        ldp       @CL14,DP
        ldiu      @CL14,ar1             ; |212| 
        ldp       @CL12,DP
        ldiu      @CL12,ar0             ; |212| 
        ldp       @CL10,DP
        ldiu      @CL10,ar2             ; |212| 
        addi3     *ar1,*ar0,r0          ; |212| Unsigned
        ldiu      *ar2,ar0              ; |212| 
        ldiu      *ar0,r1               ; |212| 
        subi      1,r0                  ; |212| Unsigned
        cmpi3     r0,r1                 ; |212| 
        blo       L33                   ; |212| 
;*      Branch Occurs to L33            ; |212| 
	.line	51
;----------------------------------------------------------------------
; 214 | *(ReceBuff.pOutBuffer)  = ReceBuff.Buffer; /*reset output pointer*/    
;----------------------------------------------------------------------
        ldp       @CL12,DP
        ldiu      @CL12,ar0             ; |214| 
        ldp       @CL10,DP
        ldiu      @CL10,ar1             ; |214| 
        ldiu      *ar0,r0               ; |214| 
        ldiu      *ar1,ar0              ; |214| 
        sti       r0,*ar0               ; |214| 
L33:        
	.line	53
;----------------------------------------------------------------------
; 216 | return(1);                                                             
; 218 | //   NU_Relinquish();                                                  
;----------------------------------------------------------------------
        bud       L35                   ; |216| 
	nop
	nop
        ldiu      1,r0                  ; |216| 
;*      Branch Occurs to L35            ; |216| 
	.line	56
L35:        
	.line	58
                                        ; Begin Epilog Code
        ldiu      *-fp(1),r1            ; |221| 
        ldiu      *fp,fp                ; |221| 
                                        ; Unallocate the Frame
        subi      4,sp                  ; |221| 
        bu        r1
;*      Branch Occurs to r1 
	.endfunc	221,000000000h,2


	.sect	 ".text"

	.global	_Tchar16c554JK1
	.sym	_Tchar16c554JK1,_Tchar16c554JK1,32,2,0
	.func	235
;******************************************************************************
;* FUNCTION NAME: _Tchar16c554JK1                                             *
;*                                                                            *
;*   Architecture       : TMS320C32                                           *
;*   Calling Convention : Stack Parameter Convention                          *
;*   Function Uses Regs : r0,ar0,st                                           *
;*   Regs Saved         :                                                     *
;*   Stack Frame        : Full (w/ debug)                                     *
;*   Total Frame Size   : 2 Call + 2 Parm + 4 Auto + 0 SOE = 8 words          *
;******************************************************************************
_Tchar16c554JK1:
	.sym	_COM_PORT,-2,28,9,32
	.sym	_char1,-3,12,9,32
	.sym	_address1,1,28,1,32
	.sym	_address2,2,28,1,32
	.sym	_flag,3,4,1,32
	.sym	_timecount,4,4,1,32
	.line	1
;----------------------------------------------------------------------
; 235 | void   Tchar16c554JK1(unsigned char *COM_PORT,unsigned char char1)     
;----------------------------------------------------------------------
        push      fp
        ldiu      sp,fp
        addi      4,sp
	.line	2
;----------------------------------------------------------------------
; 237 | unsigned char *address1,*address2;                                     
; 238 | int  flag;                                                             
; 239 | int  timecount;                                                        
; 240 | //----------------------------------------------------------------
;     |                                                                        
;----------------------------------------------------------------------
	.line	7
;----------------------------------------------------------------------
; 241 | address1 = COM_PORT+5;              /* LineSR */                       
;----------------------------------------------------------------------
        ldiu      5,r0                  ; |241| 
        addi      *-fp(2),r0            ; |241| Unsigned
        sti       r0,*+fp(1)            ; |241| 
	.line	8
;----------------------------------------------------------------------
; 242 | address2 = COM_PORT+0;              /* TransmitBR */                   
;----------------------------------------------------------------------
        ldiu      *-fp(2),r0            ; |242| 
        sti       r0,*+fp(2)            ; |242| 
	.line	10
;----------------------------------------------------------------------
; 244 | timecount = TMD_System_Clock;                                          
;----------------------------------------------------------------------
        ldp       @CL28,DP
        ldiu      @CL28,ar0             ; |244| 
        ldiu      *ar0,r0               ; |244| 
        sti       r0,*+fp(4)            ; |244| 
	.line	11
;----------------------------------------------------------------------
; 245 | flag = *address1;                                                      
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |245| 
        ldiu      *ar0,r0               ; |245| 
        sti       r0,*+fp(3)            ; |245| 
	.line	12
;----------------------------------------------------------------------
; 246 | TimeCount2 = 0;                                                        
;----------------------------------------------------------------------
        ldp       @CL34,DP
        ldiu      @CL34,ar0             ; |246| 
        ldiu      0,r0                  ; |246| 
        sti       r0,*ar0               ; |246| 
	.line	13
;----------------------------------------------------------------------
; 247 | while(!((flag&TransReady_)&&(HoldRegEmpty_&flag)))                     
;----------------------------------------------------------------------
        ldiu      64,r0                 ; |247| 
        tstb      *+fp(3),r0            ; |247| 
        beq       L39                   ; |247| 
;*      Branch Occurs to L39            ; |247| 
        ldiu      32,r0                 ; |247| 
        tstb      *+fp(3),r0            ; |247| 
        bne       L41                   ; |247| 
;*      Branch Occurs to L41            ; |247| 
L39:        
	.line	15
;----------------------------------------------------------------------
; 249 | flag = *address1;                 /* TransmitBR empty */               
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |249| 
        ldiu      *ar0,r0               ; |249| 
        sti       r0,*+fp(3)            ; |249| 
	.line	13
        ldiu      64,r0                 ; |247| 
        tstb      *+fp(3),r0            ; |247| 
        beq       L39                   ; |247| 
;*      Branch Occurs to L39            ; |247| 
        ldiu      32,r0                 ; |247| 
        tstb      *+fp(3),r0            ; |247| 
        beq       L39                   ; |247| 
;*      Branch Occurs to L39            ; |247| 
L41:        
	.line	29
;----------------------------------------------------------------------
; 263 | CommunStatusJK1 &= (~_Txd_Error);                                      
;----------------------------------------------------------------------
        ldp       @CL31,DP
        ldiu      @CL31,ar0             ; |263| 
        ldiu      *ar0,r0               ; |263| 
        andn      32,r0                 ; |263| 
        sti       r0,*ar0               ; |263| 
	.line	30
;----------------------------------------------------------------------
; 264 | *address2 = char1;                    /* transmit char */              
;----------------------------------------------------------------------
        ldiu      *+fp(2),ar0           ; |264| 
        ldiu      *-fp(3),r0            ; |264| 
        sti       r0,*ar0               ; |264| 
	.line	31
                                        ; Begin Epilog Code
        ldiu      *-fp(1),r1
        ldiu      *fp,fp
                                        ; Unallocate the Frame
        subi      6,sp
        bu        r1
;*      Branch Occurs to r1 
	.endfunc	265,000000000h,4



	.global	_ReceBuff
	.bss	_ReceBuff,4
	.sym	_ReceBuff,_ReceBuff,8,2,128,_Buffer_Struct
;******************************************************************************
;* CONSTANT TABLE                                                             *
;******************************************************************************
	.sect	".const"
	.bss	CL1,1
	.bss	CL2,1
	.bss	CL3,1
	.bss	CL4,1
	.bss	CL5,1
	.bss	CL6,1
	.bss	CL7,1
	.bss	CL8,1
	.bss	CL9,1
	.bss	CL10,1
	.bss	CL11,1
	.bss	CL12,1
	.bss	CL13,1
	.bss	CL14,1
	.bss	CL15,1
	.bss	CL16,1
	.bss	CL17,1
	.bss	CL18,1
	.bss	CL19,1
	.bss	CL20,1
	.bss	CL21,1
	.bss	CL22,1
	.bss	CL23,1
	.bss	CL24,1
	.bss	CL25,1
	.bss	CL26,1
	.bss	CL27,1
	.bss	CL28,1
	.bss	CL29,1
	.bss	CL30,1
	.bss	CL31,1
	.bss	CL32,1
	.bss	CL33,1
	.bss	CL34,1

	.sect	".cinit"
	.field  	34,32
	.field  	CL1+0,32
	.field  	_Com_Port1,32
	.field  	_Init_16c554A,32
	.field  	_Com_Port2,32
	.field  	_Init_16c554B,32
	.field  	_Com_Port3,32
	.field  	_Init_16c554C,32
	.field  	_Init_16c554D,32
	.field  	_ReceBuff,32
	.field  	_pInReceBuffA,32
	.field  	_ReceBuff+1,32
	.field  	_pOutReceBuffA,32
	.field  	_ReceBuff+2,32
	.field  	_ReceiveBuffA,32
	.field  	_ReceBuff+3,32
	.field  	_ReceBuffALen_,32
	.field  	_pInReceBuffB,32
	.field  	_pOutReceBuffB,32
	.field  	_ReceiveBuffB,32
	.field  	_ReceBuffBLen_,32
	.field  	_pInReceBuffC,32
	.field  	_pOutReceBuffC,32
	.field  	_ReceiveBuffC,32
	.field  	_ReceBuffCLen_,32
	.field  	_pInReceBuffD,32
	.field  	_pOutReceBuffD,32
	.field  	_ReceiveBuffD,32
	.field  	_ReceBuffDLen_,32
	.field  	_TMD_System_Clock,32
	.field  	_TimeCount1,32
	.field  	_Initial_16c554JK1,32
	.field  	_CommunStatusJK1,32
	.field  	_TCSE_Change_Preemption,32
	.field  	_Com_Port4,32
	.field  	_TimeCount2,32

	.sect	".text"
;******************************************************************************
;* UNDEFINED EXTERNAL REFERENCES                                              *
;******************************************************************************

	.global	_TCSE_Change_Preemption

	.global	_ReceBuffALen_

	.global	_ReceBuffBLen_

	.global	_ReceBuffCLen_

	.global	_ReceBuffDLen_

	.global	_Com_Port1

	.global	_Com_Port2

	.global	_Com_Port3

	.global	_Com_Port4

	.global	_pInReceBuffA

	.global	_pOutReceBuffA

	.global	_ReceiveBuffA

	.global	_pInReceBuffB

	.global	_pOutReceBuffB

	.global	_ReceiveBuffB

	.global	_pInReceBuffC

	.global	_pOutReceBuffC

	.global	_ReceiveBuffC

	.global	_pInReceBuffD

	.global	_pOutReceBuffD

	.global	_ReceiveBuffD

	.global	_Init_16c554A

	.global	_Init_16c554B

	.global	_Init_16c554C

	.global	_Init_16c554D

	.global	_TMD_System_Clock
	.global	_Ctrl_Output_on

⌨️ 快捷键说明

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