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

📄 protecttpo_reclosing.asm

📁 电力系统中的保护装置全部代码
💻 ASM
📖 第 1 页 / 共 5 页
字号:
; 113 | //////压板                                                             
; 114 | // ----------------------------------------------------- //            
; 115 | //压板个数                                                             
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |111| 
        ldiu      2,r0                  ; |111| 
        sti       r0,*+ar0(40)          ; |111| 
	.line	36
;----------------------------------------------------------------------
; 116 | pProtect->pro_jumper_number    =    0;                                 
; 117 | //指针赋值                                                             
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |116| 
        ldiu      0,r0                  ; |116| 
        sti       r0,*+ar0(73)          ; |116| 
	.line	38
;----------------------------------------------------------------------
; 118 | pJumper = pProtect->pro_jumper;                                        
; 119 | //ID号                                                                 
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |118| 
        ldiu      *+ar0(74),r0          ; |118| 
        sti       r0,*+fp(5)            ; |118| 
	.line	40
;----------------------------------------------------------------------
; 120 | pJumper->pro_id     =    pProtect->pro_id;                             
; 121 | //序号                                                                 
;----------------------------------------------------------------------
        ldiu      r0,ar1
        ldiu      *+ar0(3),r0           ; |120| 
        sti       r0,*ar1               ; |120| 
	.line	42
;----------------------------------------------------------------------
; 122 | pJumper->jum_id     =    pProtect->pro_jumper_number;
;     |                                                                        
; 123 | //INF                                                                  
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar1           ; |122| 
        ldiu      *+fp(5),ar0           ; |122| 
        ldiu      *+ar1(73),r0          ; |122| 
        sti       r0,*+ar0(1)           ; |122| 
	.line	44
;----------------------------------------------------------------------
; 124 | pJumper->jum_inf    =    238;                                          
; 125 | //CONTROLINF                                                           
;----------------------------------------------------------------------
        ldiu      *+fp(5),ar0           ; |124| 
        ldiu      238,r0                ; |124| 
        sti       r0,*+ar0(2)           ; |124| 
	.line	46
;----------------------------------------------------------------------
; 126 | pJumper->jum_ctrl   =    16;
;     |                                                                        
; 127 | //压板名称                                                             
;----------------------------------------------------------------------
        ldiu      *+fp(5),ar0           ; |126| 
        ldiu      16,r0                 ; |126| 
        sti       r0,*+ar0(3)           ; |126| 
	.line	48
;----------------------------------------------------------------------
; 128 | pJumper->pjum_name     =    "重合闸投退";                              
;----------------------------------------------------------------------
        ldp       @CL12,DP
        ldiu      *+fp(5),ar0           ; |128| 
        ldiu      @CL12,r0              ; |128| 
        sti       r0,*+ar0(4)           ; |128| 
	.line	49
;----------------------------------------------------------------------
; 129 | pJumper->pjum_alias    =    "CHZ";                                     
; 130 | //压板状态                                                             
;----------------------------------------------------------------------
        ldp       @CL13,DP
        ldiu      *+fp(5),ar0           ; |129| 
        ldiu      @CL13,r0              ; |129| 
        sti       r0,*+ar0(25)          ; |129| 
	.line	51
;----------------------------------------------------------------------
; 131 | pJumper->jum_status    =    1;                                         
; 132 | //赋值增量                                                             
;----------------------------------------------------------------------
        ldiu      *+fp(5),ar0           ; |131| 
        ldiu      1,r0                  ; |131| 
        sti       r0,*+ar0(26)          ; |131| 
	.line	53
;----------------------------------------------------------------------
; 133 | pJumper++;                                                             
;----------------------------------------------------------------------
        ldiu      27,r0                 ; |133| 
        addi      *+fp(5),r0            ; |133| Unsigned
        sti       r0,*+fp(5)            ; |133| 
	.line	54
;----------------------------------------------------------------------
; 134 | pProtect->pro_jumper_number++;                                         
; 136 | //////定值                                                             
; 137 | // ----------------------------------------------------- //            
; 138 | //定值个数                                                             
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |134| 
        ldiu      1,r0                  ; |134| 
        addi      *+ar0(73),r0          ; |134| Unsigned
        sti       r0,*+ar0(73)          ; |134| 
	.line	59
;----------------------------------------------------------------------
; 139 | pProtect->pro_setting_number = 0;                                      
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |139| 
        ldiu      0,r0                  ; |139| 
        sti       r0,*+ar0(71)          ; |139| 
	.line	60
;----------------------------------------------------------------------
; 140 | pSets = pProtect->pro_setting;                                         
; 141 | //------------------------------------------------//                   
; 142 | //时限                                                                 
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |140| 
        ldiu      *+ar0(72),r0          ; |140| 
        sti       r0,*+fp(2)            ; |140| 
	.line	63
;----------------------------------------------------------------------
; 143 | pSets->pro_id    =    pProtect->pro_id;                                
;----------------------------------------------------------------------
        ldiu      r0,ar1
        ldiu      *+ar0(3),r0           ; |143| 
        sti       r0,*ar1               ; |143| 
	.line	64
;----------------------------------------------------------------------
; 144 | pSets->set_id    =    ++(pProtect->pro_setting_number);
;     |                                                                        
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |144| 
        ldiu      1,r0                  ; |144| 
        addi      *+ar0(71),r0          ; |144| Unsigned
        sti       r0,*+ar0(71)          ; |144| 
        ldiu      *+fp(2),ar0           ; |144| 
        sti       r0,*+ar0(1)           ; |144| 
	.line	65
;----------------------------------------------------------------------
; 145 | pSets->pset_name =    (CHAR *)strcpy(pSets->set_name,"重合闸时间");
;     |                                                                        
;----------------------------------------------------------------------
        ldp       @CL14,DP
        ldiu      3,r0                  ; |145| 
        ldiu      @CL14,r1              ; |145| 
        addi      *+fp(2),r0            ; |145| Unsigned
        push      r1                    ; |145| 
        push      r0                    ; |145| 
        call      _strcpy               ; |145| 
                                        ; |145| Call Occurs
        subi      2,sp                  ; |145| 
        ldiu      *+fp(2),ar0           ; |145| 
        sti       r0,*+ar0(2)           ; |145| 
	.line	66
;----------------------------------------------------------------------
; 146 | pSets->pset_alias          =    "Tch";
;     |                                                                        
;----------------------------------------------------------------------
        ldp       @CL15,DP
        ldiu      *+fp(2),ar0           ; |146| 
        ldiu      @CL15,r0              ; |146| 
        sti       r0,*+ar0(25)          ; |146| 
	.line	67
;----------------------------------------------------------------------
; 147 | pSets->pset_dimension      =    "S";                                   
;----------------------------------------------------------------------
        ldp       @CL16,DP
        ldiu      *+fp(2),ar0           ; |147| 
        ldiu      @CL16,r0              ; |147| 
        sti       r0,*+ar0(24)          ; |147| 
	.line	68
;----------------------------------------------------------------------
; 148 | pSets->set_lower_limit     =    0.30;                                  
;----------------------------------------------------------------------
        ldp       @CL17,DP
        ldiu      *+fp(2),ar0           ; |148| 
        ldfu      @CL17,f0              ; |148| 
        stf       f0,*+ar0(28)          ; |148| 
	.line	69
;----------------------------------------------------------------------
; 149 | pSets->set_high_limit      =    9.99;                                  
;----------------------------------------------------------------------
        ldp       @CL18,DP
        ldiu      *+fp(2),ar0           ; |149| 
        ldfu      @CL18,f0              ; |149| 
        stf       f0,*+ar0(29)          ; |149| 
	.line	70
;----------------------------------------------------------------------
; 150 | pSets->set_calculate_style =    CHL_MUL_;                              
;----------------------------------------------------------------------
        ldiu      *+fp(2),ar0           ; |150| 
        ldiu      1,r0                  ; |150| 
        sti       r0,*+ar0(23)          ; |150| 
	.line	71
;----------------------------------------------------------------------
; 151 | pSets->set_calculate_coefficient = CHL_CONSTANT_1;                     
;----------------------------------------------------------------------
        ldiu      *+fp(2),ar0           ; |151| 
        ldfu      1.0000000000e+00,f0   ; |151| 
        stf       f0,*+ar0(27)          ; |151| 
	.line	72
;----------------------------------------------------------------------
; 152 | for(i=0;i<SET_ZONE;i++)                                                
;----------------------------------------------------------------------
        ldiu      0,r0                  ; |152| 
        sti       r0,*+fp(7)            ; |152| 
        ldfu      1.0000000000e+00,f1   ; |153| 
        cmpi      8,r0                  ; |152| 
        bge       L6                    ; |152| 
;*      Branch Occurs to L6             ; |152| 
L5:        
	.line	73
;----------------------------------------------------------------------
; 153 | pSets->set_value_zone[i]   =    1.0*CHL_CONSTANT_1;                    
;----------------------------------------------------------------------
        ldiu      *+fp(7),ar0           ; |153| 
        addi      *+fp(2),ar0           ; |153| Unsigned
        stf       f1,*+ar0(30)          ; |153| 
	.line	72
        ldiu      1,r0                  ; |152| 
        addi      *+fp(7),r0            ; |152| 
        sti       r0,*+fp(7)            ; |152| 
        cmpi      8,r0                  ; |152| 
        blt       L5                    ; |152| 
;*      Branch Occurs to L5             ; |152| 
L6:        
	.line	74
;----------------------------------------------------------------------
; 154 | pSets++;                                                               
; 155 | //------------------------------------------------//                   
; 156 | //无压值                                                               
;----------------------------------------------------------------------
        ldiu      38,r0                 ; |154| 
        addi      *+fp(2),r0            ; |154| Unsigned
        sti       r0,*+fp(2)            ; |154| 
	.line	77
;----------------------------------------------------------------------
; 157 | pSets->pro_id    =    pProtect->pro_id;                                
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |157| 
        ldiu      r0,ar1                ; |157| 
        ldiu      *+ar0(3),r0           ; |157| 
        sti       r0,*ar1               ; |157| 
	.line	78
;----------------------------------------------------------------------
; 158 | pSets->set_id    =    ++(pProtect->pro_setting_number);
;     |                                                                        
;----------------------------------------------------------------------
        ldiu      *+fp(1),ar0           ; |158| 
        ldiu      1,r0                  ; |158| 
        addi      *+ar0(71),r0          ; |158| Unsigned
        sti       r0,*+ar0(71)          ; |158| 
        ldiu      *+fp(2),ar0           ; |158| 
        sti       r0,*+ar0(1)           ; |158| 
	.line	79
;----------------------------------------------------------------------
; 159 | pSets->pset_name =    (CHAR *)strcpy(pSets->set_name,"无压值");
;     |                                                                        
;----------------------------------------------------------------------
        ldp       @CL19,DP
        ldiu      @CL19,r1              ; |159| 
        ldiu      3,r0                  ; |159| 
        addi      *+fp(2),r0            ; |159| Unsigned
        push      r1                    ; |159| 
        push      r0                    ; |159| 
        call      _strcpy               ; |159| 
                                        ; |159| Call Occurs
        subi      2,sp                  ; |159| 
        ldiu      *+fp(2),ar0           ; |159| 
        sti       r0,*+ar0(2)           ; |159| 
	.line	80
;----------------------------------------------------------------------
; 160 | pSets->pset_alias          =    "Uch";
;     |                                                                        

⌨️ 快捷键说明

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