📄 commondefine.h
字号:
EXTERN unsigned char G_u8OS1Value; //氧传感器1电压
EXTERN unsigned char G_u8OS2Value; //氧传感器2电压
EXTERN unsigned int G_u16FireWaitAngle; //爆震控制点火推迟角
EXTERN unsigned int G_u16LambdaValue; //混合比λ值
EXTERN unsigned int G_u16OilValue; //喷油量
EXTERN unsigned int G_u16IdleControlValue; //怠速控制阀
EXTERN unsigned int G_u16CNSTValue; //碳罐清除阀
EXTERN StatusOfDriving G_StatusOfDriving;//发动机运行时间、行驶距离等参数
EXTERN unsigned int G_u16Steptimer;//系统状态量刷新间隔时间
EXTERN unsigned char Steptimerflag;
EXTERN StatusOfDriving EEPROM_StatusOfDriving;
EXTERN unsigned int EEPROM_DTCTable[94]; //The address of DTC Table in eeprom
EXTERN StatusOfDTC_Union EEPROM_StatusofDTC[84];
EXTERN FreezeFrame EEPROM_FreezeFrameData[24];
EXTERN DTCCounter_Union EEPROM_DTCACounter[40];
EXTERN DTCCounter_Union EEPROM_DTCBCounter[20];
EXTERN unsigned char OBDEnableflag; ////OBD系统使能标志
EXTERN unsigned char G_u8MissFireRate;//失火率
EXTERN unsigned char G_bMissFireFlag;//达到损坏催化器水平的失火标志
EXTERN unsigned int MissFireFickerOFF;//失火故障灯闪烁
EXTERN unsigned int MissFireFickerON;//
EXTERN FreezeFrame FreezeFrameData[24];
EXTERN DTCCounter_Union DTCACounter[40];//A类故障发生次数
EXTERN DTCCounter_Union DTCBCounter[20];//B类故障发生次数
EXTERN unsigned char FaultCounterC[24]; //C类故障发生次数
EXTERN StatusOfDTC_Union DTCA[40]; //A类故障码状态
EXTERN StatusOfDTC_Union DTCB[20]; //B类故障码状态
EXTERN StatusOfDTC_Union DTCC[24]; //C类故障码状态
EXTERN BIT_Union _DTCStatus;
#define DTCStatus _DTCStatus.Byte
EXTERN unsigned int DTC_Table[94];
EXTERN unsigned int DTC_TableA[40];//Array of storeing Diagnosis Test Code A
EXTERN unsigned int DTC_TableB[20];//Array of storeing Diagnosis Test Code B
EXTERN unsigned int DTC_TableC[24];//Array of storeing Diagnosis Test Code C
EXTERN unsigned int DTC_TableD[10];//Array of storeing Diagnosis Test Code D
/////////////////////////////////////////////////////////////////
/**************** diagnoses parameter****************************/
/////////////////////////////////////////////////////////////////
EXTERN unsigned int n16realtime; //Real time of running
EXTERN unsigned int n16RealTime; //Real time of running in minute
EXTERN unsigned char n8runtime; //Time Since Engine Start Counter
EXTERN unsigned int G_n16RunTime; //Time Since Engine Start in Second
EXTERN unsigned int G_n16MIL_Distance; //Distance Travelled While MIL is Activated
EXTERN unsigned int nDiag_Delay; //interval of patrol diagnosis
EXTERN unsigned char Diag_Delay_flag; //Interval flag for diagnosis
EXTERN unsigned char ProgEepromResult,EraseEepromResult;//
EXTERN unsigned int DATA,DIAG;
EXTERN unsigned char G_n8DTCNum;
//////////////////////////////////////
extern unsigned char ReadTable(const unsigned char *Value,unsigned int row,unsigned int column,unsigned char page);
extern unsigned char interp2p(const unsigned char *V,unsigned int xpos,unsigned int ypos,unsigned char xratio,unsigned char yratio,unsigned char page);
extern unsigned int interpTAB(const unsigned int *V,unsigned int xpos,unsigned int ypos,unsigned char xratio,unsigned char yratio,unsigned char page);
/************* Diagnoses parameter&& K Line Communication data*******************/
extern void DiagnoseTPIC2603(void);
typedef union { //Service1 PID 01 Data A ,MIL Status and the Number of DTC
unsigned char Byte;
struct {
unsigned char MILSatus :1;
unsigned char DTCNum :7;
} Bits;
} Service1PID01A_;
EXTERN Service1PID01A_ _Service1PID01A;
#define Service1PID01A _Service1PID01A.Byte
#define bMILSatus _Service1PID01A.Bits.MILSatus
#define b7StoredDTCNum _Service1PID01A.Bits.DTCNum
EXTERN BIT_Union _Service1PID01D; // 0=monitor complete,or not applicable;1=monitor not complete
#define Service1PID01D _Service1PID01D.Byte
#define bCAT_RDY _Service1PID01D.Bits.BIT0 //Catalyst monitoring ready
#define bHCAT_RDY _Service1PID01D.Bits.BIT1 //Heated catalyst monitoring ready
#define bEVAP_RDY _Service1PID01D.Bits.BIT2 //Evaporative system monitoring ready
#define bAIR_RDY _Service1PID01D.Bits.BIT3 //Secondary air system monitoring ready
#define bACRF_RDY _Service1PID01D.Bits.BIT4 //A/C system refrigerant monitoring ready
#define bO2S_RDY _Service1PID01D.Bits.BIT5 //Oxygen sensor monitoring ready
#define bHTR_RDY _Service1PID01D.Bits.BIT6 //Oxygen sensor heater monitoring ready
#define bEGR_RDY _Service1PID01D.Bits.BIT7 //EGR system monitoring ready
EXTERN BIT_Union _Service1PID03A; //
#define FUELSYS1 _Service1PID03A.Byte //Fuel system 1 status:
#define bOL _Service1PID03A.Bits.BIT0 //Open loop - has not yet satisfied conditions to go closed loop
#define bCL _Service1PID03A.Bits.BIT1 //Closed loop - using oxygen sensor(s) as feedback for fuel control
#define bOL_Drive _Service1PID03A.Bits.BIT2 //Open loop due to driving conditions (e.g. power enrichment, deceleration enleanment)
#define bOL_Fault _Service1PID03A.Bits.BIT3 //Open loop - due to detected system fault
#define bCL_Fault _Service1PID03A.Bits.BIT4 //Closed loop, but fault with at least one oxygen sensor - may be using single oxygen sensor for fuel control
//Diagnostic Flag Define
EXTERN BIT_Union _DiagFlag0 ; //Sensors
#define DiagFlag0 _DiagFlag0.Byte
#define bMAPFaultFlag _DiagFlag0.Bits.BIT0
#define bMAPShortFlag _DiagFlag0.Bits.BIT1
#define bMAPOpenFlag _DiagFlag0.Bits.BIT2
#define bInterMAPFlag _DiagFlag0.Bits.BIT3
#define bMATFaultFlag _DiagFlag0.Bits.BIT4
#define bMATShortFlag _DiagFlag0.Bits.BIT5
#define bMATOpenFlag _DiagFlag0.Bits.BIT6
#define bInterMATFlag _DiagFlag0.Bits.BIT7
EXTERN BIT_Union _DiagFlag1 ;
#define DiagFlag1 _DiagFlag1.Byte
#define bCWTFaultFlag _DiagFlag1.Bits.BIT0
#define bCWTShortFlag _DiagFlag1.Bits.BIT1
#define bCWTOpenFlag _DiagFlag1.Bits.BIT2
#define bInterCWTFlag _DiagFlag1.Bits.BIT3
#define bTPSFaultFlag _DiagFlag1.Bits.BIT4
#define bTPSShortFlag _DiagFlag1.Bits.BIT5
#define bTPSOpenFlag _DiagFlag1.Bits.BIT6
#define bInterTPSFlag _DiagFlag1.Bits.BIT7
EXTERN BIT_Union _DiagFlag2 ; //Sensors
#define DiagFlag2 _DiagFlag2.Byte
#define bOS1ShortFlag _DiagFlag2.Bits.BIT0
#define bOS1OpenFlag _DiagFlag2.Bits.BIT1
#define bOS1SlowFlag _DiagFlag2.Bits.BIT2
#define bOS1NoActFlag _DiagFlag2.Bits.BIT3
#define bOS2ShortFlag _DiagFlag2.Bits.BIT4
#define bOS2OpenFlag _DiagFlag2.Bits.BIT5
#define bOS2SlowFlag _DiagFlag2.Bits.BIT6
#define bOS2NoActFlag _DiagFlag2.Bits.BIT7
EXTERN BIT_Union _DiagFlag3 ;
#define DiagFlag3 _DiagFlag3.Byte
#define bEGRPFaultFlag _DiagFlag3.Bits.BIT0
#define bEGRPShortFlag _DiagFlag3.Bits.BIT1
#define bEGRPOpenFlag _DiagFlag3.Bits.BIT2
#define bInterEGRPFlag _DiagFlag3.Bits.BIT3
#define bKSFaultFlag _DiagFlag3.Bits.BIT4
#define bKSShortFlag _DiagFlag3.Bits.BIT5
#define bKSOpenFlag _DiagFlag3.Bits.BIT6
#define bInterKSFlag _DiagFlag3.Bits.BIT7
EXTERN BIT_Union _DiagFlag4 ; //Sensors
#define DiagFlag4 _DiagFlag4.Byte
#define bCRPFaultFlag _DiagFlag4.Bits.BIT0
#define bCRPShortFlag _DiagFlag4.Bits.BIT1
#define bCRPOpenFlag _DiagFlag4.Bits.BIT2
#define bInterCRPFlag _DiagFlag4.Bits.BIT3
#define bCMPFaultFlag _DiagFlag4.Bits.BIT4
#define bCMPShortFlag _DiagFlag4.Bits.BIT5
#define bCMPOpenFlag _DiagFlag4.Bits.BIT6
#define bInterCMPFlag _DiagFlag4.Bits.BIT7
EXTERN BIT_Union _DiagFlag5; //Sensors Module & IDLE Module
#define DiagFlag5 _DiagFlag5.Byte
#define bVESSFaultFlag _DiagFlag5.Bits.BIT0
#define bVESSShortFlag _DiagFlag5.Bits.BIT1
#define bVESSOpenFlag _DiagFlag5.Bits.BIT2
#define bInterVESSFlag _DiagFlag5.Bits.BIT3
#define bIDLEShortFlag _DiagFlag5.Bits.BIT4
#define bIDLEOpenFlag _DiagFlag5.Bits.BIT5
#define bIDLELowFlag _DiagFlag5.Bits.BIT6
#define bIDLEHighFlag _DiagFlag5.Bits.BIT7
EXTERN BIT_Union _DiagFlag6 ; //Voltage & 2603 Module
#define DiagFlag6 _DiagFlag6.Byte
#define bVMAINFaultFlag _DiagFlag6.Bits.BIT0
#define bVMAINUnderFlag _DiagFlag6.Bits.BIT1
#define bVMAINOverFlag _DiagFlag6.Bits.BIT2
#define bCNSTShortFlag _DiagFlag6.Bits.BIT3
#define bCNSTOpenFlag _DiagFlag6.Bits.BIT4
#define bMAINREShortFlag _DiagFlag6.Bits.BIT5
#define bMAINREOpenFlag _DiagFlag6.Bits.BIT6
#define bMILFlag _DiagFlag6.Bits.BIT7
EXTERN BIT_Union _DiagFlag7 ; //2603 & 4602 Module
#define DiagFlag7 _DiagFlag7.Byte
#define bFANHFlag _DiagFlag7.Bits.BIT0
#define bFANLFlag _DiagFlag7.Bits.BIT1
#define bPumpShortFlag _DiagFlag7.Bits.BIT2
#define bPumpOpenFlag _DiagFlag7.Bits.BIT3
#define bAcpRelayFalg _DiagFlag7.Bits.BIT4
#define bOS1HeaterFlag _DiagFlag7.Bits.BIT5
#define bOS2HeaterFlag _DiagFlag7.Bits.BIT6
#define bEGRFlag _DiagFlag7.Bits.BIT7
EXTERN BIT_Union _DiagFlag8; //4602Module
#define DiagFlag8 _DiagFlag8.Byte
#define bINJ1Flag _DiagFlag8.Bits.BIT0
#define bINJ2Flag _DiagFlag8.Bits.BIT1
#define bINJ3Flag _DiagFlag8.Bits.BIT2
#define bINJ4Flag _DiagFlag8.Bits.BIT3
#define bIGN1Flag _DiagFlag8.Bits.BIT4
#define bIGN2Flag _DiagFlag8.Bits.BIT5
#define bIGN3Flag _DiagFlag8.Bits.BIT6
#define bIGN4Flag _DiagFlag8.Bits.BIT7
EXTERN BIT_Union _DiagFlag9; // Miss Fire
#define DiagFlag9 _DiagFlag9.Byte
#define bACTFaultFlag _DiagFlag9.Bits.BIT0
#define bACTShortFlag _DiagFlag9.Bits.BIT1
#define bACTOpenFlag _DiagFlag9.Bits.BIT2
#define bMISSFIREFlag _DiagFlag9.Bits.BIT3
#define bMISSFIRE1Flag _DiagFlag9.Bits.BIT4
#define bMISSFIRE2Flag _DiagFlag9.Bits.BIT5
#define bMISSFIRE3Flag _DiagFlag9.Bits.BIT6
#define bMISSFIRE4Flag _DiagFlag9.Bits.BIT7
EXTERN BIT_Union _DiagFlag10 ;
#define DiagFlag10 _DiagFlag10.Byte
#define bLeanFlag _DiagFlag10.Bits.BIT0
#define bRichFlag _DiagFlag10.Bits.BIT1
#define bEOverTFlag _DiagFlag10.Bits.BIT2 //引擎过温 Engine Coolant Over Temperature Condition
#define bEOverSFlag _DiagFlag10.Bits.BIT3 //引擎超速 Engine Over Speed Condition
#define bCommuFaultFlag _DiagFlag10.Bits.BIT4 // P0600 Serial Communication Link
#define bCheckSumErrorFlag _DiagFlag10.Bits.BIT5 //P0601 Internal Control Module Memory Check Sum Error
#define bProgErrorFlag _DiagFlag10.Bits.BIT6 //P0602 Control Module Programming Error
#define bRAMErrorFlag _DiagFlag10.Bits.BIT7// P0604 Internal Control Module Random Access Memory (RAM) Error
EXTERN BIT_Union _DiagFlag11 ;
#define DiagFlag11 _DiagFlag11.Byte
#define bROMErrorFlag _DiagFlag11.Bits.BIT0 // P0605 Internal Control Module Read Only Memory (ROM) Error
#define bVSSOutputFlag _DiagFlag11.Bits.BIT1 // P0608 Control Module VSS Output
#define bVINErrorFlag _DiagFlag11.Bits.BIT2 // P0630 VIN Not Programmed or Mismatch - ECM/PCM
#define bRPMOutputFlag _DiagFlag11.Bits.BIT3 // P0654 Engine RPM Output Circuit
#define bCATFlag _DiagFlag11.Bits.BIT4 // P0420 Catalyst System Efficiency Below Threshold
EXTERN BIT_Union _DiagFlag12 ;
#define DiagFlag12 _DiagFlag12.Byte //Sensors Intermission Module
#define bMAFFaultFlag _DiagFlag12.Bits.BIT0
#define bMAFShortFlag _DiagFlag12.Bits.BIT1
#define bMAFOpenFlag _DiagFlag12.Bits.BIT2
#define bInterMAFFlag _DiagFlag12.Bits.BIT3
#define bEVAPFaultFlag _DiagFlag12.Bits.BIT4
#define bEVAPShortFlag _DiagFlag12.Bits.BIT5
#define bEVAPOpenFlag _DiagFlag12.Bits.BIT6
#define bInterEVAPFlag _DiagFlag12.Bits.BIT7
//////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -