📄 protecttpo_reclosing.asm
字号:
.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 + -