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

📄 mototype.c

📁 基于c的电动机保护程序
💻 C
字号:
/*************************************************************************************
* Copyright  2006 National ASIC Center, All right Reserved			
*
* FILE NAME:			JDType.c										
* AUTHOR:				Steny.yz.X
* Date of Creation:		2006/07/25
*
* DESCRIPTION:			基本函数
*						
* NOTE:						 		
*
* FUNCTIONS LIST:       CovertTimeRemain			计算剩余时间
*                       GlobalVarInit				全局量初始化	
*                       TimeInitial					时间节点初始化函数
*
*
* -----------------------------------------------------------------------------------
*
* -----------------------------------------------------------------------------------
*
* MODIFICATION HISTORY
*     LastModify  2006/09/20
*************************************************************************************/
#include "MOTOType.h"
//#include "NUCLEUS.H"
#include "Applications/inlcudes/hardware_reg.h"


//TSampleInputs JDInputs;
TSampleInputs *JDInputs = (TSampleInputs *)0x1fff0000;
TSettingValues *JDSetting = (TSettingValues *)(0x1fff0000 + 0x200);
TStateVar	  *StateVar = (TStateVar *)(0x1fff0000 + 0x400);

//RTC_TIME		RrrTime[100];

void StateVarInit(void)
{
		
		     OverLoad = FALSE;                  //过负载
         Block_Break = FALSE;
         Block_Alarm = FALSE;                   //堵转
         Short_Circuit = FALSE;             //短路
         Current_Unbalance_Alarm = FALSE;   //不平衡报警
         Current_Unbalance_Break = FALSE;   //不平衡报警跳闸
         Line_Broken = FALSE;               //断相
         Grounding = FALSE;                 //接地
         Phase_Reversed = FALSE;            //逆向
         Voltage_Low = FALSE;               //欠电压
         Voltage_Shaking = FALSE;           //晃电
	       Voltage_shaking_Over = FALSE;      //晃电结束
	       PT_Broken = FALSE;                 //pt断线
	       Voltage_Over = FALSE;              //过压
	       Current_Low = FALSE;               //欠电流
         Running = FALSE;                   //运行中
         Start_TimeUp = FALSE;           //启动超时
         Starting = FALSE;                     //启动中
         Stop = FALSE; 
         Running = FALSE;                     //停机
         OverHeat_Alarm = FALSE;           //过热报警
         OverHeat_Break = FALSE;            //过热跳闸
         Restart_Permit = FALSE;            //允许重启
        // Reclose_Action = FALSE;          //合闸
        // Break_Action = FALSE;          //跳闸
        // Alarm_Action = FALSE;          //报警
}

		
		



void TimeInitial(TJDTimingNode * node , int delaytime ,int holdtime)
{
	node->delaytime = delaytime;
	node->holdtime = holdtime;
	node->holdtick = 0x0;
	node->delaytick = 0x0;
	node->level = 0x0;
	node->lastdelaytick = 0x0;
	node->lastholdtick = 0x0;
}

/*float CovertTimeRemain(float new_settingtime,TJDTimingNode * node)
{
	if (last_settingtime != 0)
	{
		float cur_remaintick = (1.0 - (node->delaytick / node->delaytime)) * new_settingtime;
		return cur_remaintick;
	}
	return new_settingtime;
}*/

⌨️ 快捷键说明

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