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

📄 protecttpo_reclosing.asm

📁 电力系统中的保护装置全部代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.line	20
;----------------------------------------------------------------------
;  45 | *Charge_Flag = 0;                                                      
;----------------------------------------------------------------------
        ldiu      *+fp(6),ar0           ; |45| 
        sti       r0,*ar0               ; |45| 
	.line	21
;----------------------------------------------------------------------
;  46 | *Reclose_Flag = 1;                                                     
;----------------------------------------------------------------------
        ldiu      *+fp(5),ar0           ; |46| 
        ldiu      1,r0                  ; |46| 
        sti       r0,*ar0               ; |46| 
	.line	22
;----------------------------------------------------------------------
;  47 | ptr->pro_startup_flag = 0;                                             
;  49 | //////报告                                                             
;  50 | // ----------------------------------------------------- //            
;----------------------------------------------------------------------
        ldiu      *-fp(2),ar0           ; |47| 
        ldiu      0,r0                  ; |47| 
        sti       r0,*+ar0(77)          ; |47| 
	.line	26
;----------------------------------------------------------------------
;  51 | pReport = &REC_Report;                                                 
;----------------------------------------------------------------------
        ldp       @CL2,DP
        ldiu      @CL2,r0               ; |51| 
        sti       r0,*+fp(4)            ; |51| 
	.line	27
;----------------------------------------------------------------------
;  52 | pReport->pro_report_flag = 2;                                          
;  53 | //SOE                                                                  
;----------------------------------------------------------------------
        ldiu      r0,ar0
        ldiu      2,r0                  ; |52| 
        sti       r0,*ar0               ; |52| 
	.line	29
;----------------------------------------------------------------------
;  54 | pSoe = &pReport->pro_report_soe;                                       
;  55 | //------------------------------------------------//                   
;----------------------------------------------------------------------
        ldiu      1,r0                  ; |54| 
        addi      *+fp(4),r0            ; |54| Unsigned
        sti       r0,*+fp(2)            ; |54| 
	.line	31
;----------------------------------------------------------------------
;  56 | pSoe->Relative_Time = pProtect->pro_reserve5;                          
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar1           ; |56| 
        ldiu      r0,ar0                ; |56| 
        ldiu      *+ar1(86),r0          ; |56| 
        sti       r0,*+ar0(23)          ; |56| 
	.line	32
;----------------------------------------------------------------------
;  57 | READ_DEC_TIME(&pSoe->Year);                                            
;  58 | //    pSoe->Fault_Number = SOENumber++;                                
;  60 | //动作值                                                               
;----------------------------------------------------------------------
        ldiu      25,r0                 ; |57| 
        ldp       @CL3,DP
        addi      *+fp(2),r0            ; |57| Unsigned
        ldiu      @CL3,r1               ; |57| 
        push      r0                    ; |57| 
        callu     r1                    ; far call to _READ_DEC_TIME	; |57| 
                                        ; |57| Far Call Occurs
        subi      1,sp                  ; |57| 
	.line	36
;----------------------------------------------------------------------
;  61 | pReport->pro_report_data = Reclose_reportdata;                         
;----------------------------------------------------------------------
        ldp       @CL4,DP
        ldiu      *+fp(4),ar0           ; |61| 
        ldiu      @CL4,r0               ; |61| 
        sti       r0,*+ar0(34)          ; |61| 
	.line	37
;----------------------------------------------------------------------
;  62 | pValue = pReport->pro_report_data;                                     
;  63 | //------------------------------------------------//                   
;  64 | //母线电压                                                             
;----------------------------------------------------------------------
        ldiu      *+fp(4),ar0           ; |62| 
        ldiu      *+ar0(34),r0          ; |62| 
        sti       r0,*+fp(3)            ; |62| 
	.line	40
;----------------------------------------------------------------------
;  65 | pValue->value_measure    =    Um;                                      
;----------------------------------------------------------------------
        ldiu      r0,ar0
        ldfu      *-fp(4),f0            ; |65| 
        stf       f0,*+ar0(26)          ; |65| 
	.line	41
;----------------------------------------------------------------------
;  66 | pValue++;                                                              
;  67 | // 线路电压                                                            
;----------------------------------------------------------------------
        ldiu      29,r0                 ; |66| 
        addi      *+fp(3),r0            ; |66| Unsigned
        sti       r0,*+fp(3)            ; |66| 
	.line	43
;----------------------------------------------------------------------
;  68 | pValue->value_measure    =    Ux;                                      
;----------------------------------------------------------------------
        ldiu      r0,ar0
        ldfu      *-fp(5),f0            ; |68| 
        stf       f0,*+ar0(26)          ; |68| 
	.line	44
;----------------------------------------------------------------------
;  69 | pValue++;                                                              
;  71 | //------------------------------------------------//                   
;----------------------------------------------------------------------
        ldiu      29,r0                 ; |69| 
        addi      *+fp(3),r0            ; |69| Unsigned
        sti       r0,*+fp(3)            ; |69| 
	.line	47
;----------------------------------------------------------------------
;  72 | pReport->mmi_flag = MMIDISPLAY + MMIPICKUP;                            
;----------------------------------------------------------------------
        ldiu      *+fp(4),ar0           ; |72| 
        ldiu      3,r0                  ; |72| 
        sti       r0,*+ar0(36)          ; |72| 
	.line	48
;----------------------------------------------------------------------
;  73 | Fill_Report(pReport);                                                  
;----------------------------------------------------------------------
        ldp       @CL5,DP
        ldiu      *+fp(4),r1            ; |73| 
        ldiu      @CL5,r0               ; |73| 
        push      r1                    ; |73| 
        callu     r0                    ; far call to _Fill_Report	; |73| 
                                        ; |73| Far Call Occurs
        subi      1,sp                  ; |73| 
	.line	50
                                        ; Begin Epilog Code
        ldiu      *-fp(1),r1
        ldiu      *fp,fp
                                        ; Unallocate the Frame
        subi      8,sp
        bu        r1
;*      Branch Occurs to r1 
	.endfunc	75,000000000h,6


	.sect	 ".text"

	.global	_Once_Reclose_Initialize
	.sym	_Once_Reclose_Initialize,_Once_Reclose_Initialize,32,2,0
	.func	81
;******************************************************************************
;* FUNCTION NAME: _Once_Reclose_Initialize                                    *
;*                                                                            *
;*   Architecture       : TMS320C32                                           *
;*   Calling Convention : Stack Parameter Convention                          *
;*   Function Uses Regs : f0,r0,f1,r1,ar0,ar1,fp,sp,st                        *
;*   Regs Saved         :                                                     *
;*   Stack Frame        : Full (w/ debug)                                     *
;*   Total Frame Size   : 2 Call + 1 Parm + 7 Auto + 0 SOE = 10 words         *
;******************************************************************************
_Once_Reclose_Initialize:
	.sym	_ptr,-2,24,9,32,_PROTECT_STRUCT
	.sym	_pProtect,1,24,1,32,_PROTECT_STRUCT
	.sym	_pSets,2,24,1,32,_SETTING_STRUCT
	.sym	_pSoe,3,24,1,32,_SOE_STRUCT
	.sym	_pValue,4,24,1,32,_VALUE_STRUCT
	.sym	_pJumper,5,24,1,32,_JUMPER_STRUCT
	.sym	_pReport,6,24,1,32,_PROTECT_REPORT
	.sym	_i,7,4,1,32
	.line	1
;----------------------------------------------------------------------
;  81 | void   Once_Reclose_Initialize(PROTECT *ptr)                           
;----------------------------------------------------------------------
        push      fp
        ldiu      sp,fp
        addi      7,sp
	.line	2
;----------------------------------------------------------------------
;  83 | PROTECT         *pProtect;                                             
;  84 | SETTING         *pSets;                                                
;  85 | SOE             *pSoe;                                                 
;  86 | VALUE           *pValue;                                               
;  87 | JUMPER          *pJumper;                                              
;  88 | REPORT          *pReport;                                              
;  89 | int i;                                                                 
;  91 | // ----------------------------------------------------- //            
;  92 | //保护结构体指针赋值                                                   
;----------------------------------------------------------------------
	.line	13
;----------------------------------------------------------------------
;  93 | pProtect = ptr;                                                        
;  94 | //保护缓冲区指针赋值                                                   
;----------------------------------------------------------------------
        ldiu      *-fp(2),r0            ; |93| 
        sti       r0,*+fp(1)            ; |93| 
	.line	15
;----------------------------------------------------------------------
;  95 | pProtect->pro_jumper        = Reclose_jumper;                          
;----------------------------------------------------------------------
        ldp       @CL6,DP
        ldiu      r0,ar0
        ldiu      @CL6,r0               ; |95| 
        sti       r0,*+ar0(74)          ; |95| 
	.line	16
;----------------------------------------------------------------------
;  96 | pProtect->pro_setting       = Reclose_setting;                         
;----------------------------------------------------------------------
        ldp       @CL7,DP
        ldiu      *+fp(1),ar0           ; |96| 
        ldiu      @CL7,r0               ; |96| 
        sti       r0,*+ar0(72)          ; |96| 
	.line	17
;----------------------------------------------------------------------
;  97 | pProtect->pro_run_data      = Reclose_rundata;                         
;  98 | //保护ID号                                                             
;----------------------------------------------------------------------
        ldp       @CL8,DP
        ldiu      *+fp(1),ar0           ; |97| 
        ldiu      @CL8,r0               ; |97| 
        sti       r0,*+ar0(76)          ; |97| 
	.line	19
;----------------------------------------------------------------------
;  99 | pProtect->pro_id = PRO_Total_Protect;                                  
; 100 | //保护装置名                                                           
;----------------------------------------------------------------------
        ldp       @CL9,DP
        ldiu      @CL9,ar0              ; |99| 
        ldiu      *+fp(1),ar1           ; |99| 
        ldiu      *ar0,r0               ; |99| 
        sti       r0,*+ar1(3)           ; |99| 
	.line	21
;----------------------------------------------------------------------
; 101 | pProtect->ppro_device_name = "WXH-821";                                
; 102 | //保护名                                                               
;----------------------------------------------------------------------
        ldp       @CL10,DP
        ldiu      *+fp(1),ar0           ; |101| 
        ldiu      @CL10,r0              ; |101| 
        sti       r0,*+ar0(4)           ; |101| 
	.line	23
;----------------------------------------------------------------------
; 103 | pProtect->ppro_name = "重合闸保护";                                    
; 105 | //////模拟通道                                                         
; 106 | // ----------------------------------------------------- //            
; 107 | //电压                                                                 
;----------------------------------------------------------------------
        ldp       @CL11,DP
        ldiu      *+fp(1),ar0           ; |103| 
        ldiu      @CL11,r0              ; |103| 
        sti       r0,*+ar0(15)          ; |103| 
	.line	28
;----------------------------------------------------------------------
; 108 | pProtect->pro_analog_channel[0]    =    Ua_Chn;                        
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |108| 
        ldiu      1,r0                  ; |108| 
        sti       r0,*+ar0(37)          ; |108| 
	.line	29
;----------------------------------------------------------------------
; 109 | pProtect->pro_analog_channel[1]    =    Ub_Chn;                        
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |109| 
        ldiu      3,r0                  ; |109| 
        sti       r0,*+ar0(38)          ; |109| 
	.line	30
;----------------------------------------------------------------------
; 110 | pProtect->pro_analog_channel[2]    =    Uc_Chn;                        
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |110| 
        ldiu      8,r0                  ; |110| 
        sti       r0,*+ar0(39)          ; |110| 
	.line	31
;----------------------------------------------------------------------
; 111 | pProtect->pro_analog_channel[3]    =    Ux_Chn;                        

⌨️ 快捷键说明

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