📄 bianliang.h
字号:
#define uint unsigned int
#define uchar unsigned char
#define xchar unsigned char
#define CLOSE 1
//IIC时钟相关变量
#define DEVSELWR 0xA0 /*I2C器件写操作命*/
#define DEVSELRD 0xA1 /*I2C器件读操作命令*/
#define DATAH 0x0004 /*数据线SDA=1 (IOPf2)*/
#define DATAL 0xFFFB /*SDA=0*/
#define CLOCKH 0x0002 /*时钟线SCL=1 (IOPF1)*/
#define CLOCKL 0xFFFD /*SCL=0*/
#define DATACLOCKH 0x0006 /*SDA=SCL=1*/
#define DATACLOCKL 0xFFF9 /*SDA=SCL=0*/
#define DATAINPUT 0xFBFF /*PFDATDIR.11=0,即IOPF2引脚作为输入*/
#define DATAOUTPUT 0x0400 /*PFDATDIR.11=1,即IOPF2引脚作为输出*/
//屏幕相关变量
#define CZP_linenum 6
unsigned int CZP_line,status,current_screen,CZP_display_flag,xianshi_display_flag;
unsigned int xianshi_line,dingzhi_display_flag,kouling_display_flag,canshu_display_flag;
unsigned int cursor_pw,dingzhi_set_flag,DZP_line,suduan_display_flag,guodianya_display_flag;
unsigned int kouling_set_flag,CS_line;
unsigned int bupingheng_display_flag,ziqidong_display_flag,tiaoya_display_flag,fenpin_display_flag;
unsigned int DZP_line;
unsigned int dingshijishu; /*系统定时计数器*/
unsigned int XiaFa_MINSEC,XiaFa_DAYHOUR,XiaFa_YEARMON; /*下发分秒、日时、年月*/
unsigned int RAM_MINSEC,RAM_DAYHOUR,RAM_YEARMON; /*备份分秒、日时、年月*/
unsigned int ms_data,sec_data,min_data,hour_data,
mon_data,yd_data; /*读iic变量:毫秒、秒、分、时、月、年日*/
unsigned int ms_data1,sec_data1,min_data1,hour_data1,
mon_data1,yd_data1;
unsigned int ms_ZhiHou; /*8583滞后系统毫秒数*/
unsigned int YEAR0; /*系统当前年份除4整数*/
unsigned int YEAR4; /*系统当前年份除4余数*/
unsigned int tmp_data,byte_addr,t_data,r_data,flag_iic,flag_data;
int ptrirbak,ptrirprebak; /*计算电压和电流幅值的指针*/
int ptrcs1=0;
int QDtimeflag=0;
int Iax[37],Ibx[37],Icx[37],Uax[37],Ubx[37],Ucx[37];
long int Iar[3],Iai[3],Ibr[3],Ibi[3],Icr[3],Ici[3];
long int Uar[3],Uai[3],Ubr[3],Ubi[3],Ucr[3],Uci[3];
unsigned int Iam,Ibm,Icm,Uam,Ubm,Ucm;
unsigned int Uabm,Ubcm,Ucam;
unsigned int Ipmax;
long int cs0[36]=
{
64540,61584,56756,50203,42126,32766,22415,11380,0,
-11380,-22415,-32766,-42126,-50203,-56756,-61584,-64540,-65536,
-64540,-61584,-56756,-50203,-42126,-32768,-22415,-11380,0,
11380,22415,32768,42126,50203,56756,61584,64540,65536,
};
long int cs1[36]=
{
-11380,-22415,-32766,-42126,-50203,-56756,-61584,-64540,-65536,
-64540,-61584,-56756,-50203,-42126,-32768,-22415,-11380,0,
11380,22415,32768,42126,50203,56756,61584,64540,65536,64540,
61584,56756,50203,42126,32768,22415,11380,0,
};
int acc=0,sampflag=0;
int ADRESULT[16];
int Kr_stat[12];
volatile unsigned int *j;
int i=0,cesi;
int Sam[6][108];
int samp=0,psamp=-1;
int ptrint=0,ptrpre=1,ptrcs=0,ptrir=0,ptrirpre=2,recordsamp=-1,recordsampbak=0;
int DingZhiXiuGaiflag=0;
int sam[6][108];
int qdb=0;
int dianshu=36;
int changeIa,changeIb,changeIc;
int ca,cb,cc;
int QDflag1a=0,QDflag1b=0,QDflag1c=0;
long int QDtimer1a=0,QDtimer1b=0,QDtimer1c=0;
int DuanXiang_flaga,DuanXiang_flagb,DuanXiang_flagc;
long int DuanXiang_ta,DuanXiang_tb,DuanXiang_tc;
int DuanXiangQD_flag,SdQiDong_flag,YsdQiDong_flag;
int QDSJJGQDflag,DZQDflag,DYQiDong_flag,GYQiDong_flag;
int fsxIaYsd_flag;
long int Iamfs1=0,Iamfs2=0,Iamfs3=0,Ibmfs1=0,Ibmfs2=0,Ibmfs3=0,Icmfs1=0,Icmfs2=0,Icmfs3=0;
//long int fsxacounter1=0,fsxacounter2=0,fsxacounter3=0,fsxbcounter1=0,fsxbcounter2=0,fsxbcounter3=0;
int IaSd_flag,IbSd_flag,IcSd_flag,IaYsd_flag, IbYsd_flag, IcYsd_flag;
int fsxIaYsd_flag,fsxIbYsd_flag,fsxIcYsd_flag,STDLdownflag;
int UabDy_flag, UbcDy_flag,UcaDy_flag,UabGy_flag,UbcGy_flag,UcaGy_flag;
long int fsxacounter1=0,fsxacounter2=0,fsxacounter3=0,fsxbcounter1=0,fsxbcounter2=0,fsxbcounter3=0;
long int fsxccounter1=0,fsxccounter2=0,fsxccounter3=0;
int runbz=0;
int SdTz_flag;
int YsdTz_flag;
int DZflag;
long int SdCKMaiKuan;
long int YsdCKMaiKuan;
long int QDtimer,start_timer;
unsigned long int SdYanShi_time;
unsigned long int SdYanShi_time;
unsigned long int DZYanShi_time;
unsigned long int DYYanShi_time;
unsigned long int GYYanShi_time;
unsigned long int QDtime_DingZhi;
/* 保护定值变量定义 */
unsigned long int XDLYXZQDDingZhi; /* 相电流有效值启动定值 */
unsigned long int DuanXiang_DingZhi;
unsigned long int DuanXiang_Time;
unsigned long int DLSDHDingZhi;
unsigned long int DLSDSDingZhi;
unsigned long int GLDLDingZhi;
unsigned long int QDSJJGDingZhi;
unsigned long int DZDLDingZhi;
unsigned long int DZHTDingZhi;
unsigned long int QYDYDingZhi;
unsigned long int QYSJDingZhi;
unsigned long int GYDYDingZhi;
unsigned long int GYSJDingZhi;
unsigned long int WuLiuDingZhi;
unsigned long int DLSDHFanHuiZhi;
unsigned long int GLDLFanHuiZhi;
unsigned long int DZDLFanHuiZhi;
unsigned long int QYDYFanHuiZhi;
unsigned long int GYDYFanHuiZhi;
int DuanXiang_YaBan;
int FSXLX_YaBan;
int GLSD_YaBan;
int FSXGL_YaBan;
int QDSJJG_YaBan;
int DZ_YaBan;
int DDY_YaBan;
int GDY_YaBan;
/* 反时限过流保护定值计算 */
unsigned int YBFSXGLDingZhi1; /* 一般反时限(Iset)^0.02 */
unsigned int YBFSXGLDingZhi2; /* 0.14(Tset)(Iset)^0.02 */
unsigned int FCFSXGLDingZhi1; /*非常反时限 Iset */
unsigned int FCFSXGLDingZhi2; /* 13.5TsetIset */
unsigned int SHFSXGLDingZhi1; /* 甚反时限(Iset)^2 */
unsigned int SHFSXGLDingZhi2; /* 80Tset(Iset)^2 */
void initial();
void ADSOC();
void wcom(unsigned int);
void wdata(unsigned int);
void initdsp(void);
void ADCINIT(void);
void initial(void);
void delays(void);
void KaiJiPing(void);
void ShouPing(void);
void CaoZuoPing(void);
void KouLingPing(void);
void DingzhipingKL(void);
void DingZhiPingI(void);
void DingZhiPingII(void);
void DingZhiPingIII(void);
void DingZhiPingDL(void);
void DingZhiPingDLI(void);
void DingZhiPingDLII(void);
void DingZhiPingDY(void);
void DingZhiPingPHD(void);
void DingZhiPingZQD(void);
void DingZhiPingTY(void);
void DingZhiPingFF(void);
void CanShuPingI(void);
void CanShuPingII(void);
void CanShuPingIII(void);
void DingZhiJiaoYan(void);
void WriteDingZhi(void);
//void dispzk(unsigned int, unsigned int, unsigned int, unsigned int );
void dispzkI(unsigned int, unsigned int, unsigned int );
void dispzkII(unsigned int, unsigned int, unsigned int );
void dispzkIII(unsigned int, unsigned int, unsigned int );
void dispzkIV(unsigned int, unsigned int, unsigned int );
void int_to_bcd(unsigned int,unsigned int,unsigned int);
void kick_dog(void);
//void BaoHu(void);
float jhsqrt(long int Val1,long int Val2); /* 简化的开平方运算 */
void XianShiJiSuan(void);
void BaoHuChuKouLJ(void);
void ex_logic( unsigned long int dingzhi, unsigned long int fbvalue, unsigned long int realdata,int *glbhflag );
void lack_logic( unsigned long int dingzhi, unsigned long int fbvalue, unsigned long int realdata, int *qlbhflag );
void logic_or( unsigned int bhqdflag1, unsigned int bhqdflag2, unsigned int bhqdflag3, unsigned long int dz_delay, int *bhqd_flag, unsigned long int *bh_delay);
void Baohu(void);
void stop_detect(void);
void CKlogic_or1( unsigned int bhqdflag1, unsigned int dz_delay, int *bhqd_flag, unsigned long *bh_delay );
unsigned int CZP_site[8]={0x81,0x82,0x85,0x86,0x89,0x8a,0x8d,0x8e};
unsigned CZP_hazi[16]={0xcf,0xd4,0xca,0xbe,0xb6,0xa8,0xd6,0xb5,0xbf,0xda,0xc1,0xee,0xb2,0xce,0xca,0xfd};
//显示 定值 口令 参数
unsigned int DZPKL_site1[5]={0x91,0x92,0x93,0x94,0x95};
unsigned DZPKL_hazi[10]={0xc7,0xeb,0xca,0xe4,0xc8,0xeb,0xbf,0xda,0xc1,0xee};
// 请 输 入 口 令
unsigned int DZPKL_site2[4]={0x89,0x8a,0x8b,0x8c};
unsigned DZPKL_data[4]={0x30,0x30,0x30,0x30};//0 0 0 0
unsigned int KLPJ_site1[6]={0x81,0x82,0x83,0x84,0x85,0x86};
unsigned KLPJ_hazi[12]={0xc7,0xeb,0xca,0xe4,0xc8,0xeb,0xbe,0xc9,0xbf,0xda,0xc1,0xee};
//请 输 入 旧 口 令
unsigned int KLPJ_site2[4]={0x91,0x92,0x93,0x94};
unsigned KLPJ_data[4]={0x30,0x30,0x30,0x30};//0 0 0 0
unsigned int KLPX_site1[6]={0x89,0x8a,0x8b,0x8c,0x8d,0x8e};
unsigned KLPX_hazi[12]={0xc7,0xeb,0xca,0xe4,0xc8,0xeb,0xd0,0xc2,0xbf,0xda,0xc1,0xee};
//请 输 入 新 口 令
unsigned int KLPX_site2[4]={0x99,0x9a,0x9b,0x9c};
unsigned KLPX_data[4]={0x30,0x30,0x30,0x30};//0 0 0 0
unsigned int DZP_site[10]={0x81,0x91,0x89,0x99,0x81,0x91,0x89,0x99,0x81,0x91};
void wr_cnchar(unsigned int linerow, unsigned int character1,unsigned int character2);
void wr_char(unsigned int linerow,unsigned int character1);
void CaoZuoPing1(void);
void up_key(void);
void down_key(void);
void enter_key(void);
void reset_key(void);
void delay(unsigned int);
void KouLingPingYX(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -