#ifndef _TELLTALES_H_
#define _TELLTALES_H_


#define FL3236_NUM   9

typedef enum 
{
	Channel_0 = 0,
	Channel_1 = 1,
		
}_LampChannel;


typedef enum 
{
	LampCh0_Rmtlock = 0,	  //Զ��������
	LampCh0_RightTurn,	      //��ת��
	LampCh0_Low_Beam,
	LampCh0_Low_DC_DC,           //��ѹDC-DC
	LampCh0_DriverSafeBelt, 

	LampCh0_EngOilPress,		//����ѹ����	
	LampCh0_BatChargeConnect ,	//�������
	LampCh0_Motor_Failure ,	//�������
	LampCh0_EPB,
	LampCh0_BatteryTempHigh,       //��������¶ȸ�

	LampCh0_Oillow_W,			//������
	LampCh0_Oillow,
	LampCh0_BatteryTempLow,       //��������¶ȵ�
	LampCh0_BatteryFault,     //������ع���
	LampCh0_Door_NotClosed,

	LampCh0_16,
	LampCh0_17,
	LampCh0_18,
	LampCh0_19,
	LampCh0_20,

	LampCh0_21,
	LampCh0_22,
	LampCh0_23,
	LampCh0_24,
	LampCh0_Ready,

	LampCh0_BatteryCutOff,    //��������ж�
	LampCh0_Brake_Fluid_Low,  //�ƶ�Һλ��
	LampCh0_EBS,
	LampCh0_ChargeBatterySta,
	LampCh0_BatteryLow_W,    //������ص����Ͱ�

	LampCh0_BatteryLow_Y,    //������ص����ͻ�
	LampCh0_AVAS,
	LampCh0_DriverNotClosed, //��ʻ��δ��
	LampCh0_TPMS,
	LampCh0_AirBag,

	LampCh0_36,
	LampCh0_MAX,
}_LampCh0;

typedef enum 
{
	LampCh1_0 = 0,
	LampCh1_1,
	LampCh1_AutoHold_G,
	LampCh1_Water_Pump_Fault,
    	LampCh1_CC_Cruise_Control,   //����Ѳ��

    	LampCh1_CC_Overtake, 
	LampCh1_Limit_Power_Lamp, 	//�޹���ָʾ��
	LampCh1_ESC_Active,     //ESC����
	LampCh1_ESC_Off,
	LampCh1_High_DC_DC,     //��ѹDC-DC

	LampCh1_Position,
	LampCh1_DayRunning,
	LampCh1_FrontFog,
	LampCh1_RearFog,
	LampCh1_HighBeam,

	LampCh1_EPS,
	LampCh1_LeftTurn,
	LampCh1_Tired_Sys_Closed,
	LampCh1_ABS,
	LampCh1_ACU,

	LampCh1_Insulation_Fault,//��Ե����
	LampCh1_Engine_System_Failt,   
    	LampCh1_Engine_Emission_Failt,//�������ŷŹ���
	LampCh1_Maint,//����
	LampCh1_CooltLiquid_High_W,
	
	LampCh1_CooltLiquid_High,
	LampCh1_AutoHold_R,
    	LampCh1_Electronic_parking,//����פ��
    	LampCh1_Brake_System_Failure,//�ƶ�ϵͳ����
	LampCh1_EHPS,

	LampCh1_ASR_Off,
	LampCh1_ASR_Lamp,
	LampCh1_Vehicle_Online_G,
	LampCh1_Vehicle_Online_Sta,
	LampCh1_System_Failt_Lamp,
	
	LampCh1_36,

	LampCh1_MAX,
}_LampCh1;



 /***************ָʾ��״̬****************/
#define Lamp_Off  0
#define Lamp_On  50
#define Lamp_FuelOn  25


/***************ָʾ���Լ�****************/
#define LED_SELF_CHECK_TIME  60
extern  INT8U g_u8SelfLampTimes;
extern INT8U Acu_Led;



//extern INT8U LockVeh_Sts;
//extern INT8U EMSLockVeh_Sts;
extern uint8_t  PopupDriSafeFlag;
extern uint8_t  PopupMidSafeFlag;
extern uint8_t Driver_SafeBelt_Flag;
extern uint8_t Middle_SafeBelt_Flag;

#define Lamp_AjustBlink_1Hz g_u8LampBlink_fuel_1HZ
#define Lamp_Blink_1Hz  g_u8LampBlink_1HZ
#define Lamp_Blink_2Hz  g_u8LampBlink_2HZ
#define Lamp_Blink_5Hz  g_u8LampBlink_5HZ
#define Lamp_Blink_0_5Hz  g_u8LampBlink_0_5HZ





typedef struct
{
      INT16U   StmFlt_timer1;
      INT16U     StmFlt_timer3;
      INT16U     StmFlt_timerlost;
}_Tire_Lamp;

EXTERN  _Tire_Lamp		Trye_Lamp ;



void Lamp_Init(void );
extern void RightTurn_Lamp(void);
extern void LeftTurn_Lamp(void);
void Close_All_Lamps(void);
extern void Lamp_Management_Service(void);
extern void Flash_3HZ_LampBlink_Time(void);
void Get_Airbag_Fault_Service(void);

#endif



