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

📄 commondefine.h

📁 基于16位单片机的符合osek标准的操作系统
💻 H
📖 第 1 页 / 共 4 页
字号:
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 + -