📄 framemodule.h
字号:
#ifndef FRAMEMODULE_H
#define FRAMEMODULE_H
#define PARALENGTH 107
#define MODULE20 0x05
xdata struct ChannelPara
{
unsigned int uiSampleRate, uiSamPeriod, uiMeasureType, uiMeasureUnit;
unsigned int uiSensorType, uiSensitive, uiSensorDirection, uiAlertType;
int iDangerHigh, iFallingDangerH,iDangerLow, iFallingDangerL;
int iAlertLow, iFallingAlertL, iAlertHigh, iFallingAlertH;
int iGapHigh, iGapLow, iGapFalling, iScaleHigh;
unsigned int uiAlertDelay, uiDangerDelay, uiLatch, uiChEnable;
unsigned int uiPhaseRef, uiChType;
int iScaleLow, iExponentValue, iZeroPosition, iHystersisVolt;
int iTriggerVolt;
unsigned int uiteeth, uiTriggerSelect, uiAngle, uiBarrier;
unsigned int uiLowCutoff, uiHighCutOff, uiChConfig;
}; //38 * 2
xdata struct FactoryInfo
{
unsigned int uiSoftwareVer;
unsigned long uiProductSN;
unsigned int uiCheckerNum, uiModuleType, uiHardwareVer;
}; // 6
xdata struct Calibration
{
//---------------------------------------------------------------------------------------------
//说明:为了兼容10程序,不改动变量的名称,振动对应20模块的积分通道,轴位置对应20模块的不积分通道
// 增加了小量程积分通道的标定变量,共4个
//---------------------------------------------------------------------------------------------
unsigned int uiVibADZero, uiVibADFull, uiDisADZero, uiDisADFull;
unsigned int uiLittleRangeZero, uiLittleRangeFull;
unsigned int uiGAPADZero, uiGAPADFull;
unsigned int uiDAZero, uiDAFull;
}; // 10*2
xdata struct System
{
struct ChannelPara Ch[2];
struct FactoryInfo Info;
struct Calibration Channel[2];
int iDataSpan;
unsigned int uiTripValue[2];
unsigned int uiBypassFlag[2];
unsigned int uiTemp;
};
xdata union para1
{
struct System Para;
unsigned int Array[PARALENGTH + 1];
} ;
xdata struct Status
{
unsigned char uchStartReportTimeFlag;
unsigned char uchSelfTestControlStatus;
unsigned char uchHWBypassStatus;
unsigned char uchSamplelCompleteStatus;
unsigned char uchChannelOK[2];
unsigned char uchLastChannelAlarm[2];
unsigned char uchChannelAlarm[2];
unsigned char uchPowerStatus;
unsigned char uchCalibrationStatus[2];
unsigned char uchModuleStatus;
unsigned char uchModuleFlag;
unsigned char uchSystemOKStatus;
unsigned char uchBypassStatus[2];
unsigned char uchBypassFlag[2];
unsigned char uchHWTripleStatus;
unsigned char uchChannelGapStatus[2];
unsigned char uchHWConfigStatus;
int iReportCurrentMeasureValue[2];
int iReportCurrentGAPValue[2];
// unsigned int uiReportAlarmEvenStatus[2];
// unsigned int uiReportSystemEventStatus;
unsigned char uchCPUAddressFlag; //0:表示上CPU 1:表示下CPU
float iCurrentMeasureValue[2];
int iGapVoltage[2];
float iPercentValue[2];
//-------------------------------系统事件变量-------------------------------
unsigned char uchPhaseLoseStatus;
unsigned char uchRAMLostStatus;
unsigned char uchFlashLostStatus;
unsigned char uchModuleNewConfigStatus;
unsigned char uchModuleConfigLostStatus;
unsigned char uchModuleChannelParaStatus;
// unsigned char uchSoftBypassTotalStatus;
// unsigned char uchSoftTripleTotalStatus; //tong
unsigned char uchTripleStatus[2];
unsigned char uchChannelOKBAK[2]; //默认通道状态OK
unsigned char uchChannelBypassStatus[2];
unsigned char uchModuleFlagBAK;
unsigned char uchPowerFlag;
unsigned char uchPhaseFlag;
unsigned char uchRAMLostFlag;
unsigned char uchFlashLostFlag;
unsigned char uchModuleNewConfigFlag;
unsigned char uchModuleConfigLostFlag;
unsigned char uchModuleStatusChange;
unsigned char uchModuleReportCount;
unsigned char uchHotResetReasonStatus;
unsigned char uchNotOKToOKStatus[2];
int iNOTOKGapVoltage[2];
unsigned char uchReportNumber;
unsigned char uchEnableStatus[2]; //&&&&
} ;
//-----------------------------定义报警事件------------------------------------------
#define ENTERLOWDANGERALARM 201
#define QUITLOWDANGERALARM 202
#define ENTERLOWALERTALARM 203
#define QUITLOWALERTALARM 204
#define ENTERHIGHALERTALARM 205
#define QUITHIGHALERTALARM 206
#define ENTERHIGHDANGERALARM 207
#define QUITHIGHDANGERALARM 208
//-----------------------------报警事件定义结束--------------------------------------
//-----------------------------定义系统事件------------------------------------------
#define RAMLAPSE 1001
#define EEPROMORFLASHLAPSE 1002
#define MODULEISNEWCONFIG 1006
#define CONFIGLAPSE 1007
#define MODULEENTERRUNMODE 1011
#define MODULEQUITRUNMODE 1012
#define MODULEENTERCONFIGMODE 1013
#define MODULEQUITCONFIGMODE 1014
#define MODULEENTERTESTMODE 1015
#define MODULEQUITTESTMODE 1016
#define MODULEENTERCALIBRATIONMODE 1017
#define MODULEQUITCALIBRATIONMODE 1018
#define XCHANNELENTERBYPASS 1209
#define XCHANNELQUITBYPASS 1210
#define PHASELOST 1211
#define XCHANNELENTERNOTOKSTATUS 1212
#define XCHANNELQUITNOTOKSTATUS 1213
#define SIGNALBOARDPOSITIVEFIVEVLAPSE 1214
#define SIGNALBOARDPOSITIVEFIFTEENVLAPSE 1215
#define SIGNALBOARDNEGATIVETWENTYFOURVLAPSE 1216
#define SIGNALBOARDPOSITIVEFOURPOINTFIVEVLAPSE 1217
#define SIGNALBOARDNEGATIVETWENTYTWOVLAPSE 1218
#define SIGNALBOARDPOSITIVETHREEPOINTTHREEVLAPSE 1219
#define SIGNALBOARDPOSITIVETHREEVLAPSE 1220
//-------------------------------------------------------------------------------------
//本模块函数的声明 由于本文件是框架文件所以用到函数都在包含的各个文件之中
//-------------------------------------------------------------------------------------
void SetSystemOkStatusMain(unsigned char uchOkStatus);
void SetChannelOkStatusMain(unsigned char uchChannel,unsigned char uchOkStatus);
void SetPowerStatusMain(unsigned char uchPowerStatus);
void SetAlarmStatusMain(unsigned char uchChannel, unsigned char uchAlarmStatus);
void SetCurrentMeasureValueMain(unsigned char uchChannel,float iValue);
void SetPercentValueMain(unsigned char uchChannel,float iValue);
void SetGapVoltageMain(unsigned char uchChannel,int iValue);
void SetHWTripleStatusMain(unsigned int uchHWTripleStatus) ;
void SetHWBypassStatusMain(unsigned char uchHWBypassStatus);
void SetModuleStatusMain(unsigned char uchModuleStatus);
void SetCalibrationStatusMain(unsigned char uchChannel, unsigned char uchCalibrationStatus);
void SetSampleCompleteStatusMain(unsigned char uchCompleteStatus);
void SetSystemStatusMain(void);
unsigned int SensitiveChange(unsigned int Sensitive,unsigned int uiUnit, unsigned int uiChannelType);
unsigned int UnifyUnit(int iValue, int iExponentValue, unsigned int uiUnit);
void InitAlarmPara(void);
void InitDAPara(void);
void InitChannelStatusPara(void);
void InitADPara(void);
void InitFramemoduleParameters(void);
void MainSignalProcess(void) ;
unsigned char ChannelStatus(unsigned char uchChannel);
void CaculateTripleStatus(unsigned char uchChannel);
unsigned char JudgeTripleStatus(unsigned char uchChannel);
void SetDAFullCountResultMain(unsigned char uchChannel, unsigned int uiDACountValue);
void SetDAZeroCountResultMain(unsigned char uchChannel, unsigned int uiDACountValue);
void SetVibADZeroCountResultMain(unsigned char uchChannel, unsigned int uiVibADCountValue);
void SetVibADFullCountResultMain(unsigned char uchChannel, unsigned int uiVibADCountValue);
void SetDisADZeroCountResultMain(unsigned char uchChannel, unsigned int uiDisADCountValue);
void SetDisADFullCountResultMain(unsigned char uchChannel, unsigned int uiDisADCountValue);
void JudgeBypassStatus(unsigned char uchChannel);
void CaculateReportMeasureValue(unsigned char uchChannel);
void CaculateReportGapValue(unsigned char uchChannel);
void JudgeAndReportAlertEvenStatus(unsigned char uchChannel);
void InitFramemoduleVariable(void);
void JudgeBypassFlag(unsigned char uchChannel);
void JudgeCPUSituationFlag(void);
void StopSelfLEDControl(void);
void StartSelfLEDControl(void);
void SetSelfTestControlStatusMain(unsigned char uchSelfTestStatus);
void CaculateStartReportTime(void);
void DelayTimeReportModuleType(void);
void RuningLEDControl(void);
void SetRAMLostStatusMain(unsigned char uchRAMLostFlag);
void SetFLASHLostStatusMain(unsigned char uchFLASHLostFlag);
void SetModuleNewConfigStatusMain(unsigned char uchModuleNewConfigFlag);
void JudgeChannelParaRight(unsigned char uchChannel);
void SetModuleChannelParaStatusMain(unsigned char uchModuleChannelParaFlag);
void RunChannelParaJudge(void);
void JudgeModuleStatus(void);
//void SetSoftBypassTotalStatus(unsigned char uchSoftBypassTotalFlag);
//void SetSoftTripleTotalStatus(unsigned char uchSoftTripleTotalFlag);
void JudgeAndReportSpecialSystemEvenStatus(unsigned char uchChannel);
void JudgeAndReportCommonSystemEvenStatus(void);
void LEDConfigControl(void);
void SetGAPZeroCountResultMain(unsigned char uchChannel, unsigned int uiGAPCountValue);
void SetGAPFullCountResultMain(unsigned char uchChannel, unsigned int uiGAPCountValue);
void SetFullScale(unsigned int uiFullScaleValue);
unsigned char ReadCANAddress(void);
void ClearSelfFlag(void);
void SetLittleADZeroCountResultMain(unsigned char uchChannel, unsigned int uiLittleADCountValue);
void SetLittleADFullCountResultMain(unsigned char uchChannel, unsigned int uiLittleADCountValue);
void CaculateHotResetStartReportTime(void);
void InitHotResetFramPara(void);
void SetHotResetFlag(unsigned char uchHotResetFlag);
void SetNotOKToOKFlag(unsigned char uchChannel,unsigned char uchNOTOKTOOKFlag);
void SetNOTOKGapVoltageMain(unsigned char uchChannel,int iValue);
void CaculateEnableStatus(unsigned char uchChannel); //&&&&
void ClearModuleNewConfigStatus(void); //20080514
void JudgeChannelPara(void); //20080528
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -