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

📄 smart.h

📁 电动机保护测量程序,用的是DSP2407,
💻 H
📖 第 1 页 / 共 2 页
字号:
int baohu_flag=0;

/* 保护压板 */

unsigned int MSKG_YaBan=0;          /* 模式选择选择压板 */
unsigned int FBMSKG_YaBan=0;        /* 分布模式控制字 */
unsigned int FDLLXuanZe_YaBan=0;    /* 分段联络选择压板 */
unsigned int GLSD_YaBan=0;          /* 速断保护投退压板 */
unsigned int GLYSD_YaBan=0;         /* 延时速断保护投退压板 */
unsigned int GLDSD_YaBan=0;         /* 定时限过流保护投退压板 */
unsigned int JSIID_YaBan=0;         /* 加速II段投退压板 */
unsigned int JSIIID_YaBan=0;        /* 加速III段投退压板 */
unsigned int DLIIIDFYS_YaBan=0;     /* 电流三段定时限时间选择压板 */
unsigned int DLIIIFYS_YaBan=0;      /* 电流三段反时限时间选择压板 */
unsigned int LXSD_YaBan=0;          /* 零序速断保护投退压板 */
unsigned int LXYSD_YaBan=0;         /* 延时零序速断保护投退压板 */
unsigned int LXIIIDFYS_YaBan=0;     /* 零序三段定时限时间选择压板 */
unsigned int LXIIIFYS_YaBan=0;      /* 零序三段反时限时间选择压板 */
unsigned int PLZIY_YaBan=0;         /* 频率自适应选择压板 */
unsigned int ZDXSJZ_YaBan=0;        /* 自动校正选择压板 */
unsigned int Chzci_DingZhi=0;       /* 重合闸次数定值 */  
unsigned int ChzBDYQiDong_YaBan=0;  /* 不对应启动压板 */

/* 保护定值 */
unsigned int BHYanBan1;                /* 保护压板控制字1 */
unsigned int BHYanBanF1;
unsigned int BHYanBan2;                /* 保护压板控制字2 */
unsigned int BHYanBanF2;
unsigned long  int DLSDHDingZhi;       /* 速断保护电流定值 */
unsigned long  int DLYSDHDingZhi;      /* 延时速断保护电流定值 */
unsigned long  int DLDSDHDingZhi;      /* 定时限过流保护电流定值 */
unsigned long  int DLSDSDingZhi;       /* 速断保护时间定值 */
unsigned long  int DLYSDSDingZhi;      /* 延时速断保护时间定值 */
unsigned long  int DLDSDSDingZhi;      /* 定时限过流保护时间定值 */
unsigned long  int HJSYXSDingZhi;      /*后加速允许保持时间*/
unsigned long  int HJSTZSDingZhi;      /* 后加速跳闸时间定值 */
unsigned       int GLFSXCSDingZhi;     /* 反时限过流常数曲线选择 */
unsigned long  int LXSDHDingZhi;       /* 零序速断保护电流定值 */
unsigned long  int LXSDSDingZhi;       /* 零序速断保护时间定值 */
unsigned long  int LXYSDHDingZhi;      /* 延时零序速断保护电流定值 */
unsigned long  int LXYSDSDingZhi;      /* 延时零序速断保护时间定值 */
unsigned long  int LXGSDHDingZhi;      /* 定时限零序保护电流定值 */
unsigned long  int LXGSDSDingZhi;      /* 定时限零序保护时间定值 */
unsigned       int LXFSXCSDingZhi;     /* 反时限零序过流曲线选择 */

unsigned long  int ChzYanShi_DingZhi1; /* 重合闸定时时间1 */
unsigned long  int ChzYanShi_DingZhi2; /* 重合闸定时时间2 */
unsigned long  int ChzYanShi_DingZhi3; /* 重合闸定时时间3 */   
unsigned long  int FHZShuChu_MaiKuan;  /* 分合闸输出脉冲宽度时间定值 */
unsigned long  int XDLYXQDDingZhi;     /* 相电流有效值启动定值 */


unsigned long int ChzBiSuo_T;          /* 重合闸闭锁时间定值 */
unsigned long int GZGLDLDingZhi;       /* 故障隔离电流定值 */
unsigned long int GZGLWLDingZhi;       /* 故障隔离无流定值 */
unsigned long int GZGLYanShi_DingZhi1; /* 故障隔离时间定值1 */
unsigned long int GZGLYanShi_DingZhi2; /* 故障隔离时间定值2 */
unsigned long int GZGLYanShi_DingZhi3; /* 故障隔离时间定值3 */
/* 平方值 */
unsigned long int DLSDHDingZhi2;    /* 速断保护电流定值的平方 */
unsigned long int DLYSDHDingZhi2;   /* 延时速断保护电流定值的平方 */
unsigned long int DLDSDHDingZhi2;   /* 定时限过流保护电流定值的平方 */
unsigned long  int GLFSXJZDingZhi2;     /* 反时限过流基准值平方 */
unsigned long int LXSDHDingZhi2;    /* 零序速断保护电流定值的平方 */
unsigned long int LXYSDHDingZhi2;   /* 延时零序速断保护电流定值的平方 */
unsigned long int LXGSDHDingZhi2;   /* 定时限零序保护电流定值的平方 */ 
unsigned long int LXDLQDDingZhip2;  /* 零序反时限过流保护启动电流定值平方 */
unsigned long int LXGLFSXJZDingZhi2;/* 反时限零序过流基准值平方 */
unsigned long int XDLYXQDDingZhi2;  /* 相电流有效值启动定值 */ 
unsigned long int GZGLYYDingZhi2;   /* 故障隔离有压定值 */
unsigned long int GZGLWLDingZhi2;   /* 故障隔离无流定值 */
unsigned long int GZGLWYDingZhi2;   /* 故障隔离无压定值 */

/* 返回值 */
unsigned long int DLSDHFanHuiZhi;  /* 速断保护电流返回值 */
unsigned long int DLYSDHFanHuiZhi; /* 延时速断保护电流返回值 */
unsigned long int DLDSDHFanHuiZhi; /* 定时限过流保护电流返回值 */
unsigned long int LXSDHFanHuiZhi;  /* 零序速断保护电流返回值 */
unsigned long int LXYSDHFanHuiZhi; /* 延时零序速断保护电流返回值 */
unsigned long int LXGSDHFanHuiZhi; /* 定时限零序保护电流返回值 */ 
unsigned long int GLFSXMDingZhi1;        /* 反时限过电流中间定值1 */
unsigned long int GLFSXMDingZhi2;        /* 反时限过电流中间定值2 */
unsigned long int GLDLFHDingZhi;         /* 反时限过流保护返回电流定值1 */ 
unsigned long int GLDLFHDingZhi2;        /* 反时限过流保护返回电流定值2 */ 
unsigned long int LXFSXMDingZhi1;        /* 零序反时限过电流中间定值1 */
unsigned long int LXFSXMDingZhi2;        /* 零序反时限过电流中间定值2 */
unsigned long int LXDLFHDingZhi1;        /* 零序反时限过流保护返回电流定值1 */ 
unsigned long int LXDLFHDingZhi2;        /* 零序反时限过流保护返回电流定值2 */
unsigned long int GLDLQDDingZhip;        /* 反时限过流保护启动电流定值的平方 */
unsigned long int LXDLQDDingZhip;        /* 反时限零序过流保护启动电流定值的平方 */ 



unsigned long int FSdYanShi_time;   /* 反时限过流保护定时器lgc0507 */   
unsigned long int FSdYanShi_oldtime;
unsigned long int LXGSdYanShi_time; /* 定时限零序过流保护定时器lgc0507 */ 
unsigned long int YSdYanShi_time;   /* 延时速断保护定时器 */
unsigned long int DSdYanShi_time;   /* 定时限过流保护定时器 */
unsigned long int LXYSdYanShi_time; /* 延时零序速断保护定时器 */
unsigned long int LXGSdYanShi_time; /* 定时限零序过流保护定时器 */ 
unsigned long int LXFSdYanShi_time; /* 零序反时限过流保护定时器 */
unsigned long int GZGLShi_timer1;   /* 故障隔离时间定时器1 */
unsigned long int GZGLShi_timer2;   /* 故障隔离时间定时器2 */
unsigned long int GZGLShi_timer3;   /* 故障隔离时间定时器3 */ 
unsigned long int ChzYanShi_time;   /* 重合闸时间定时器*/
unsigned long int ChzBiSuo_time;    /* 重合闸闭锁定时器 */
unsigned long int HjsYouXiao_time;  /* 后加速允许时间定时器 */  
unsigned long int HjsYs_time;       /* 后加速延时时间定时器 */ 
unsigned long int MaiKuantimer=0;
unsigned long int CKMaiKuantimer=0;


/* 开入量 */
int FSXMflag=0;
int LXFSXMflag=0;
/* 函数定义 */
void HeFenCaoZuo(void);
void delaythree(void);
void DingZhiCRC(void);
void SCIInit();
void TimerInit();
void ADCInit();
void DSPInit(void);			
void delay(int);
void softwareinit();
unsigned long ex_feedbk(unsigned long int dingzhi);            /*计算过量返回值*/ 

void ReadBHDingZhip(void);
void WriteBHDingZhi(void);/*往EEPROM中写保护定值*/
void DingZhiXiuGai(); 
unsigned long int DingZhiP[38];
unsigned long int DingZhi[38];

    



  



//通讯模块定义
#define _REQUIRE        0x04
#define  _COMPLETE      0xa5
void (*FuncPtr)();
void made_resetlianlu();
void made_dingzhi();
void made_endrequire();
void made_execute();
void made_cancle();
void made_choise();
void made_reset();
void made_resetcu();
void made_time();
void made_soe();
void made_statuschange();
void made_signal1();
void made_signal2();
void made_dzchenggong();
void made_dzshibai();
void made_lubo(); 
void made_endlianlu();
void DingZhiLoad();
void dealdata();
unsigned int isrepeat();
unsigned int isreqiredata();
unsigned int dealcommand();
void resend(void);
void made_zongzhaocom();
void made_messure3();
void made_messure2();
void made_messure1();
void made_measurechange();
void made_nodata();
void made_netstatus();
unsigned int ADC; //控制域中ADC位
unsigned int DFC; 
unsigned int DCS;
unsigned int QUEST;
unsigned int ACT;
unsigned int len_flag=0;
unsigned int len=0;
unsigned int JS_counter=0;
unsigned int CSDian_flag=0;
unsigned int SOEFind_flag=0;
unsigned int TwoData_flag=0;
unsigned int DingZhiZhen_changdu,ZuHao;
unsigned int xfdzchenggong_flag;
unsigned int DingZhiXiuGai_flag[6];
unsigned int YCNum;
unsigned int cImVal[26],cImValp[26],cImValb[26];
unsigned int receive_data[256]; /* 接收缓冲区 */
unsigned int receive_datap[256];//临时接收缓冲
unsigned int senddata[256];     /* 发送缓冲区 */
unsigned int FCB;          /* 控制域 */
unsigned int BS=0;
unsigned int control_flag;     /* 控制状态 */
unsigned int flag_485;         /* 一个完整接收——发送过程的执行状态 */
unsigned int GUreset_flag=0;
unsigned int CPUreset_flag=0x5555;
unsigned int resetcu_flag=0x5555;
unsigned int dataIndex;
unsigned int XinXiADDr;
unsigned int channel;           /* 上位机遥控命令的通道号 */
unsigned int d_command_status;  /* 上位机遥控命令的双点信息 */
unsigned int YaoXin[3],YaoXinp[3];
unsigned int soe_xuhao[16];
unsigned int soe_value[16];
unsigned int soe_millisecond[16];
unsigned int soe_second[16];
unsigned int soe_minute[16];
unsigned int soe_no;
unsigned int send_length=1;
unsigned int senddata_length=0;
/*-----------------------------------------------------------------------------------
I2C子程序相关定义
-------------------------------------------------------------------------------------*/
/*I2C操作*/
#define SDA_1() {PEDATDIR = PEDATDIR|0x0200;PEDATDIR = PEDATDIR|0x0002;} /* SDA_1( ) */	
#define SDA_0() {PEDATDIR = PEDATDIR|0x0200;PEDATDIR = PEDATDIR&0xFFFD;} /* SDA_0( ) */
#define SCL_1() {PFDATDIR = PFDATDIR|0x0200;PFDATDIR = PFDATDIR|0x0002;} /* SCL_1( ) */
#define SCL_0() {PFDATDIR = PFDATDIR|0x0200;PFDATDIR = PFDATDIR&0xFFFD;} /* SCL_0( ) */
void writeI2C();
void readI2C();
void I2C_delay(void);
void I2CStart(void);
void I2CStop(void);
int WaitAck(void);
void SendAck(void);
void SendNotAck(void);
void I2CSendByte(int ch);
int I2CReceiveByte(void);
/*时钟*/
void SetPCF8583(); 
void GetPCF8583();
void PCF8583Init_time();
void SetTimeToPCF8583();
void GetTimeFromPCF8583();
unsigned int millisecond_set,millisecond_get;
unsigned int millisecond_gewei;
unsigned int millisecond_js=0;
unsigned int second_set,second_get;
unsigned int minute_set,minute_get;
unsigned int hour_set,hour_get;
unsigned int week_set,week_get;
unsigned int day_set,day_get;
unsigned int month_set,month_get;
unsigned int year_set,year_get; 
unsigned int yearflag=0;
unsigned int Time[32];
/*-----------------------------------------------------------------------------------
其它子程序相关定义
-------------------------------------------------------------------------------------*/
/*延时*/
void ys(unsigned int sum);




void YaoTiaoDingZhiP(void);
void YiaoTiaoIni(void);
float Fzhzold1,Fzhzold2;
unsigned int   repare_he=0x5555;  
unsigned int   repare_fen=0x5555;
/*-----------------------------------------------------------------------------------
测试程序相关定义
-------------------------------------------------------------------------------------*/
int qq;
void send_data(int num);
unsigned int senddata_over=0xaaaa;     

int cao[50];
int tempcao=0;
//int caobak[24]={30000,37765,45000,51213,55981,58978,60000,58978,55981,51213,45000,37765,30000,22235,15000,8787,4019,1022,0,1022,4019,8787,15000,22235};
//int caobak1[24]={30000,37765,45000,51213,55981,58978,60000,58978,55981,51213,45000,37765,30000,22235,15000,8787,4019,1022,0,1022,4019,8787,15000,22235};

//int caobak[24]={30000,30776,31500,32121,32598,32897,33000,32898,32598,32121,31500,30776,30000,29224,28500,27879,27402,27102,27000,27102,27401,27879,28500,29224};
//int caobak1[24]={30000,30776,31500,32121,32598,32897,33000,32898,32598,32121,31500,30776,30000,29224,28500,27879,27402,27102,27000,27102,27401,27879,28500,29224};
int caobak[24]={30000,30155,30300,30424,30520,30580,30600,30580,30520,30424,30300,30155,30000,29844,29700,29576,29480,29420,29400,29420,29480,29576,29700,29845};
int caobak1[24]={30000,30155,30300,30424,30520,30580,30600,30580,30520,30424,30300,30155,30000,29844,29700,29576,29480,29420,29400,29420,29480,29576,29700,29845};



int testlgc=0;
int ADjgpt_pt; 
int a,b;  
long int tempr,tempi;  
unsigned long int tempIr,tempIi;

⌨️ 快捷键说明

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