📄 hgq.asm
字号:
*******************************************************
* TMS320C2x/C2xx/C5x ANSI C Codegen Version 7.00
*******************************************************
; C:\TDS-EMU2XX\C2000\CGTOOLS\BIN\DSPAC.EXE -v2xx -x0 hgq.c C:\WINDOWS\TEMP\hgq.if
; dspopt NOT RUN
; C:\TDS-EMU2XX\C2000\CGTOOLS\BIN\DSPCG.EXE -o -v2xx -o C:\WINDOWS\TEMP\hgq.if C:\WINDOWS\TEMP\hgq.asm C:\WINDOWS\TEMP\hgq.tmp
.port
.bss _VA_int,1,1
.bss _err_no,1
.bss _err10_n,1
.bss _VA_point,1
.bss _sample_prd,1
.bss _VA_jdq,1
.bss _jdqa,1
.bss _jdqb,1
.bss _admit_ctr_pga,1
.bss _N,1
.bss _CT_jx,1
.bss _mea_flag,1
.bss _ua_set,1
.bss _ub_set,1
.bss _reg_p,1
.bss _err10_Zl,2,1
.bss _BH_SVA,2,1
.bss _ua_xs,2,1
.bss _ub_xs,2,1
.bss _out_fre,2,1
.bss _pga_u,2
.bss _uk,2,1
.bss _ik,2,1
.bss _angle1,2,1
.bss _R_caiyang,2,1
.bss _z,2,1
.bss _r,2,1
.bss _x,2,1
.bss _ukr,2,1
.bss _uki,2,1
.bss _ikr,2,1
.bss _iki,2,1
.bss _angle2,2,1
.bss _n_Zl2,4
.bss _pga_xs,4
.bss _cd_flag,5
.bss _PT_arr,14
.bss _ukr1,20
.bss _bak_uk,20
.bss _bak_ik,20
.bss _ang1,20
.bss _VA_wave,204
.bss _n_Zl,204
.bss _sa,261
.bss _sb,261
.bss _pr,512
.bss _pi,512
.bss _fr,512
.bss _fi,512
.bss _VA_arr,1024
.bss _err10_arr,1024
.file "hgq.c"
.file "d:\lhybak\tyclh.h"
.sym _Boolean,0,14,13,16
.stag _StructKeyNode,112
.member _nkey,0,14,8,16
.member _nPageType,16,14,8,16
.member _nCs,32,14,8,16
.member _nPage,48,14,8,16
.member _nCursor,64,14,8,16
.member _nCursorPreLine,80,4,8,16
.member _nCursorOldLine,96,4,8,16
.eos
.globl _portffe4
.globl _portffe8
.globl _portffec
.globl _portfff0
.globl _portfff1
.globl _portfff4
.globl _portfff5
.globl _portfff6
.globl _portfff7
.globl _portfff8
.globl _portfff9
.globl _portfffa
.globl _portfffc
.globl _port4000
.file "c:\TDS-EMU2XX\c2000\cgtools\include\stdio.h"
.sym _size_t,0,14,13,16
.stag .fake0,112
.member _fd,0,4,8,16
.member _buf,16,28,8,16
.member _pos,32,28,8,16
.member _bufend,48,28,8,16
.member _buff_stop,64,28,8,16
.member _flags,80,14,8,16
.member _index,96,4,8,16
.eos
.sym _FILE,0,8,13,112,.fake0
.sym _fpos_t,0,5,13,32
.stag .fake1,272
.member _name,0,50,8,144,,9
.member _flags,144,13,8,16
.member _OPEN,160,148,8,16
.member _CLOSE,176,148,8,16
.member _READ,192,148,8,16
.member _WRITE,208,148,8,16
.member _LSEEK,224,149,8,16
.member _UNLINK,240,148,8,16
.member _RENAME,256,148,8,16
.eos
.sym __DEVICE,0,8,13,272,.fake1
.globl __ftable
.globl __tmpnams
.globl _remove
.globl _rename
.globl _tmpfile
.globl _tmpnam
.globl _fclose
.globl _fopen
.globl _freopen
.globl _setbuf
.globl _setvbuf
.globl _fflush
.globl _fprintf
.globl _fscanf
.globl _printf
.globl _scanf
.globl _sprintf
.globl _sscanf
.globl _vfprintf
.globl _vprintf
.globl _vsprintf
.globl _fgetc
.globl _fgets
.globl _fputc
.globl _fputs
.globl _getc
.globl _getchar
.globl _gets
.globl _putc
.globl _putchar
.globl _puts
.globl _ungetc
.globl _fread
.globl _fwrite
.globl _fgetpos
.globl _fseek
.globl _fsetpos
.globl _ftell
.globl _rewind
.globl _clearerr
.globl _feof
.globl _ferror
.globl _perror
.globl _getenv
.globl _add_device
.file "c:\TDS-EMU2XX\c2000\cgtools\include\math.h"
.globl _asin
.globl _acos
.globl _atan
.globl _atan2
.globl _ceil
.globl _cos
.globl _cosh
.globl _exp
.globl _fabs
.globl _floor
.globl _fmod
.globl _frexp
.globl _ldexp
.globl _log
.globl _log10
.globl _modf
.globl _pow
.globl _sin
.globl _sinh
.globl _sqrt
.globl _tan
.globl _tanh
.file "c:\TDS-EMU2XX\c2000\cgtools\include\stdlib.h"
.sym _wchar_t,0,2,13,16
.globl _atoi
.globl _atol
.globl _atof
.globl _strtod
.globl _strtol
.globl _strtoul
.stag __div_t,32
.member _quot,0,4,8,16
.member _rem,16,4,8,16
.eos
.sym _div_t,0,8,13,32,__div_t
.stag __ldiv_t,64
.member _quot,0,5,8,32
.member _rem,32,5,8,32
.eos
.sym _ldiv_t,0,8,13,64,__ldiv_t
.globl _div
.globl _ldiv
.globl _rand
.globl _srand
.globl _calloc
.globl _free
.globl _malloc
.globl _minit
.globl _realloc
.globl _abort
.globl _exit
.globl _atexit
.globl _abs
.globl _labs
.globl _qsort
.globl _bsearch
.file "d:\lhybak\f206.h"
.globl _portE000
.globl _portE100
.globl _portE200
.globl _portE300
.globl _port200
.globl _port000
.globl _port100
.file "hgq.c"
.sect ".cinit"
.word 1,_N
.word 256
.sym _N,_N,4,2,16
.globl _N
.globl _pr
.globl _pi
.globl _fr
.globl _fi
.globl _PT_arr
.globl _PT_ctr
.globl _key_manage
.globl _CT_measure
.globl _PT_measure
.globl _admitbfb
.globl _errorbfb
.globl _init_dsp
.globl _bhd
.globl _VA_bhd
.globl _gain_ctr
.globl _bb_ctr
.globl _pga_set
.globl _kkfft
.globl _avg
.globl _av
.globl _jdq_ctr
.globl _DC_ctr
.globl _DC_R
.globl _bb_adjust
.globl _ratio
.globl _direct_ratio
.globl _ratio_lb
.globl _adjust_volt
.globl _admit
.globl _admit_pga
.globl _admit_ctr
.globl _admit_ctr2
.globl _error
.globl _sample
.globl _sample_ctr
.globl _CT_burden
.globl _PT_burden
.globl _avg_U
.globl _max_I
.globl _pow_p
.globl _VA_measure
.globl _VA_ctr
.globl _VA_ctr1
.globl _init_dis
.globl _ua_xs
.globl _ub_xs
.globl _ua_set
.globl _ub_set
.globl _reg_p
.globl _sa
.globl _sb
.globl _pga_xs
.globl _pga_u
.globl _ukr
.globl _uki
.globl _ikr
.globl _iki
.globl _uk
.globl _ik
.globl _angle1
.globl _angle2
.globl _G
.globl _B
.globl _Y
.globl _Y_ang
.globl _r
.globl _x
.globl _z
.globl _Rs
.globl _Z2
.globl _ferr
.globl _perr
.globl _ukr1
.globl _ang1
.globl _bak_uk
.globl _bak_ik
.globl _bb
.globl _err
.globl _Dc
.globl _SR
.globl _Zb
.globl _Zb_cos
.globl _SVA
.word 1,_CT_jx
.word -1
.sym _CT_jx,_CT_jx,4,2,16
.globl _CT_jx
.globl _CT1
.globl _CT_grade
.globl _CT2_mode
.globl _COS_mode
.globl _PT_mode
.globl _PT_bb
.globl _PT_bd
.globl _PT_VA
.globl _PT_cos
.globl _PT_SR
.globl _PT1_volt
.globl _PT2_volt
.globl _PT_error
.globl _PT_angle
.globl _PT_ang_err
.globl _PT_G
.globl _PT_B
.globl _PT1_mode
.globl _PT1_temp
.globl _CT_bd
.globl _CT_VA
.globl _CT_cos
.globl _CT_bfb
.globl _CT_R
.globl _CT_X
.globl _CT_ferr
.globl _CT_perr
.globl _R_caiyang
.globl _XS_cos
.globl _XS_sin
.globl _admit_ctr_pga
.globl _sample_prd
.globl _out_fre
.globl _cd_flag
.globl _VA_jdq
.word 1,_jdqa
.word 0
.sym _jdqa,_jdqa,4,2,16
.globl _jdqa
.word 1,_jdqb
.word 0
.sym _jdqb,_jdqb,4,2,16
.globl _jdqb
.globl _nTbSysTime
.globl _adt
.globl _KeyNode
.globl _Usav
.globl _Imax
.globl _Uav
.globl _Iav
.word 1,_VA_int
.word 1
.sym _VA_int,_VA_int,4,2,16
.globl _VA_int
.stag .fake2,64
.member _U_CT,0,6,8,32
.member _I_CT,32,6,8,32
.eos
.sym _VA_TX,0,8,13,64,.fake2
.globl _VA_arr
.globl _err10_arr
.globl _VA_point
.globl _n_Zl2
.globl _VA_wave
.globl _n_Zl
.globl _err10_n
.globl _err_no
.globl _err10_Zl
.globl _BH_SVA
.word 1,_mea_flag
.word 1
.sym _mea_flag,_mea_flag,4,2,16
.globl _mea_flag
.text
.sym _init_dis,_init_dis,32,2,0
.globl _init_dis
.func 114
;>>>> void init_dis(void)
;>>>> int i;
******************************************************
* FUNCTION DEF : _init_dis
******************************************************
_init_dis:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+,AR3
.sym _i,1,4,1,16
.line 4
;>>>> Rs=Dis_Max;
LALK FL0
LRLK AR3,_Rs+0
RPTK 1
TBLR *+
.line 5
;>>>> bb=Dis_Max;
LALK FL0
LRLK AR3,_bb+0
RPTK 1
TBLR *+
.line 6
;>>>> CT_ferr=Dis_Max;
LALK FL0
LRLK AR3,_CT_ferr+0
RPTK 1
TBLR *+
.line 7
;>>>> CT_perr=Dis_Max;
LALK FL0
LRLK AR3,_CT_perr+0
RPTK 1
TBLR *+
.line 8
;>>>> CT_R=Dis_Max;
LALK FL0
LRLK AR3,_CT_R+0
RPTK 1
TBLR *+
.line 9
;>>>> CT_X=Dis_Max;
LALK FL0
LRLK AR3,_CT_X+0
RPTK 1
TBLR *+
.line 10
;>>>> CT_bd=Dis_Max;
LALK FL0
LRLK AR3,_CT_bd+0
RPTK 1
TBLR *+
.line 11
;>>>> CT_VA=Dis_Max;
LALK FL0
LRLK AR3,_CT_VA+0
RPTK 1
TBLR *+
.line 12
;>>>> CT_cos=Dis_Max;
LALK FL0
LRLK AR3,_CT_cos+0
RPTK 1
TBLR *+
.line 13
;>>>> Usav=Dis_Max;
LALK FL0
LRLK AR3,_Usav+0
RPTK 1
TBLR *+
.line 14
;>>>> Imax=Dis_Max;
LALK FL0
LRLK AR3,_Imax+0
RPTK 1
TBLR *+
.line 15
;>>>> Uav=Dis_Max;
LALK FL0
LRLK AR3,_Uav+0
RPTK 1
TBLR *+
.line 16
;>>>> Iav=Dis_Max;
LALK FL0
LRLK AR3,_Iav+0
RPTK 1
TBLR *+
.line 17
;>>>> for(i=0;i<2;i++) n_Zl2[i]=Dis_Max;
LACK 0
MAR * ,AR2
LARK AR2,1
MAR *0+
SACL *
SSXM
LAC *
SUBK 2
BGEZ L2
L1:
LAC * ,1,AR0
ADLK _n_Zl2+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
RPTK 1
TBLR *+
MAR * ,AR2
LAC *
ADDK 1
SACL *
LAC *
SUBK 2
BLZ L1
L2:
.line 18
;>>>> for(i=0;i<7;i++) PT_arr[i]=Dis_Max;
LACK 0
SACL *
LAC *
SUBK 7
BGEZ L4
L3:
LAC * ,1,AR0
ADLK _PT_arr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
RPTK 1
TBLR *+
MAR * ,AR2
LAC *
ADDK 1
SACL *
LAC *
SUBK 7
BLZ L3
L4:
.line 19
;>>>> PT_G=Dis_Max;
LALK FL0
LRLK AR3,_PT_G+0
MAR * ,AR3
RPTK 1
TBLR *+
.line 20
;>>>> PT_B=Dis_Max;
LALK FL0
LRLK AR3,_PT_B+0
RPTK 1
TBLR *+
.line 21
;>>>> for(i=0;i<4;i++)
LACK 0
MAR * ,AR2
SACL *
LAC *
SUBK 4
BGEZ L6
L5:
.line 23
;>>>> ferr[i]=Dis_Max;
LAC * ,1,AR0
ADLK _ferr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
RPTK 1
TBLR *+
.line 24
;>>>> perr[i]=Dis_Max;
MAR * ,AR2
LAC * ,1,AR0
ADLK _perr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
RPTK 1
TBLR *+
.line 21
MAR * ,AR2
LAC *
ADDK 1
SACL *
LAC *
SUBK 4
BLZ L5
L6:
.line 26
;>>>> for(i=0;i<95;i++)
LACK 0
SACL *
LAC *
SUBK 95
BGEZ L8
L7:
.line 28
;>>>> VA_arr[i].I_CT=Dis_Max;
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
ADRK 2
RPTK 1
TBLR *+
.line 29
;>>>> VA_arr[i].U_CT=Dis_Max;
MAR * ,AR2
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
RPTK 1
TBLR *+
.line 30
;>>>> err10_arr[i].I_CT=Dis_Max;
MAR * ,AR2
LAC * ,2,AR0
ADLK _err10_arr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
ADRK 2
RPTK 1
TBLR *+
.line 31
;>>>> err10_arr[i].U_CT=Dis_Max;
MAR * ,AR2
LAC * ,2,AR0
ADLK _err10_arr+0,0
SACL *
LAR AR3,* ,AR3
LALK FL0
RPTK 1
TBLR *+
.line 26
MAR * ,AR2
LAC *
ADDK 1
SACL *
LAC *
SUBK 95
BLZ L7
L8:
EPI0_1:
.line 33
MAR * ,AR1
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 146,000000000H,2
.sym _VA_bhd,_VA_bhd,32,2,0
.globl _VA_bhd
.func 149
;>>>> void VA_bhd(void)
;>>>> int ii,jj,kk;
;>>>> float VA_MaxI,VA_MaxU;
;>>>> float tempI,tempU;
******************************************************
* FUNCTION DEF : _VA_bhd
******************************************************
_VA_bhd:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,12
LAR AR0,*0+,AR3
.sym _ii,1,4,1,16
.sym _jj,2,4,1,16
.sym _kk,3,4,1,16
.sym _VA_MaxI,4,6,1,32
.sym _VA_MaxU,6,6,1,32
.sym _tempI,8,6,1,32
.sym _tempU,10,6,1,32
.line 6
;>>>> VA_wave[0]=100;
LACK 100
LDPK _VA_wave
SACL _VA_wave
.line 7
;>>>> VA_wave[1]=100;
SACL _VA_wave+1
.line 8
;>>>> VA_wave[2]=VA_int+1;
LDPK _VA_int
LAC _VA_int
ADDK 1
LDPK _VA_wave+2
SACL _VA_wave+2
.line 9
;>>>> VA_wave[3]=0;
LACK 0
SACL _VA_wave+3
.line 10
;>>>> VA_wave[4]=7;
LACK 7
SACL _VA_wave+4
.line 11
;>>>> VA_wave[5]=0;
LACK 0
SACL _VA_wave+5
.line 12
;>>>> VA_MaxI=VA_arr[0].I_CT;
LRLK AR3,_VA_arr+2
ZALS *+
ADDH *-,AR2
LARK AR2,4
MAR *0+
SACL *+
SACH * ,AR3
.line 13
;>>>> VA_MaxU=VA_arr[0].U_CT;
SBRK 2
ZALS *+
ADDH *-,AR2
MAR *+
SACL *+
SACH *
.line 16
;>>>> for(ii=0;ii<(VA_int-1);ii++)
LACK 0
SBRK 6
SACL *
SSXM
LDPK _VA_int
LAC _VA_int
SUBK 1
SUB *
BLEZ L10
L9:
.line 18
;>>>> for(jj=ii+1;jj<VA_int;jj++)
LAC *+
ADDK 1
SACL *
LAC *
LDPK _VA_int
SUB _VA_int
BGEZ L12
L11:
.line 20
;>>>> if(VA_arr[ii].I_CT>VA_arr[jj].I_CT)
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
ADRK 2
LAC *+,AR1
SACL *+,AR3
LAC *-,AR1
SACL *+,AR2
MAR *-
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
ADRK 2
LAC *+,AR1
SACL *+,AR3
LAC *-,AR1
SACL *+
CALL F$$GT
BZ L13
.line 22
;>>>> tempI=VA_arr[ii].I_CT;
MAR * ,AR2
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
ADRK 2
ZALS *+
ADDH *-,AR2
ADRK 7
SACL *+
SACH *
.line 23
;>>>> VA_arr[ii].I_CT=VA_arr[jj].I_CT;
SBRK 7
LAC *-,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR2
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR4,* ,AR3
ADRK 2
ZALS *+
ADDH *-,AR4
ADRK 2
SACL *+
SACH *-,AR2
.line 24
;>>>> VA_arr[jj].I_CT=tempI;
MAR *+
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR2
ADRK 6
ZALS *+
ADDH * ,AR3
ADRK 2
SACL *+
SACH *-,AR2
.line 26
;>>>> tempI=VA_arr[ii].U_CT;
SBRK 8
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
ZALS *+
ADDH *-,AR2
ADRK 7
SACL *+
SACH *
.line 27
;>>>> VA_arr[ii].U_CT=VA_arr[jj].U_CT;
SBRK 7
LAC *-,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR2
LAC *+,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR4,* ,AR3
ZALS *+
ADDH *-,AR4
SACL *+
SACH *-,AR2
.line 28
;>>>> VA_arr[jj].U_CT=tempI;
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR2
ADRK 6
ZALS *+
ADDH * ,AR3
SACL *+
SACH *-
L13:
.line 18
MAR * ,AR2
LARK AR2,2
MAR *0+
LAC *
ADDK 1
SACL *
SSXM
LAC *
LDPK _VA_int
SUB _VA_int
BLZ L11
L12:
.line 16
MAR *-
LAC *
ADDK 1
SACL *
LAC _VA_int
SUBK 1
SUB *
BGZ L9
L10:
.line 33
;>>>> for(ii=0;ii<VA_int;ii++)
LACK 0
SACL *
LAC *
SUB _VA_int
BGEZ L15
ADRK 3
L14:
.line 35
;>>>> if(VA_arr[ii].I_CT>VA_MaxI) VA_MaxI=VA_arr[ii].I_CT;
LAC *+,AR1
SACL *+,AR2
LAC * ,AR1
SACL *+,AR2
SBRK 4
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
ADRK 2
LAC *+,AR1
SACL *+,AR3
LAC *-,AR1
SACL *+
CALL F$$GT
BZ L16
MAR * ,AR2
LAC * ,2,AR0
ADLK _VA_arr+0,0
SACL *
LAR AR3,* ,AR3
ADRK 2
ZALS *+
ADDH *-,AR2
ADRK 3
SACL *+
SACH *
L16:
.line 36
;>>>> if(VA_arr[ii].U_CT>VA_MaxU) VA_MaxU=VA_arr[ii].U_CT;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -