Commit 870ef7be authored by 崔立宝's avatar 崔立宝

变更项3、增加AEBS指示灯

parent 7cc6189c
...@@ -1611,7 +1611,7 @@ void Telltales_Management(void) ...@@ -1611,7 +1611,7 @@ void Telltales_Management(void)
TelltaleLCDFlag.Sig.LCD09 = 1; TelltaleLCDFlag.Sig.LCD09 = 1;
else else
TelltaleLCDFlag.Sig.LCD09 = 0; TelltaleLCDFlag.Sig.LCD09 = 0;
#if 0
//AEB 锟斤拷 44 //AEB 锟斤拷 44
if (NVM_CONFIG_AEB == 0) if (NVM_CONFIG_AEB == 0)
{ {
...@@ -1658,7 +1658,42 @@ void Telltales_Management(void) ...@@ -1658,7 +1658,42 @@ void Telltales_Management(void)
} }
else else
TelltaleLCDFlag.Sig.LCD10 = 0; TelltaleLCDFlag.Sig.LCD10 = 0;
#endif
if ((AEBS_AdvancedEmergencyBrakingSysState != 0xE) && (AEBS_AdvancedEmergencyBrakingSysState != 0x2))
{
if ((AEBS_CollisionWarningLevel == 0x1) || (AEBS_CollisionWarningLevel == 0x4))
{
Sound_Request(SND_AEB_2Hz, 1);
Sound_Delete(SND_AEB_4Hz);
Sound_Delete(SND_AEB_8Hz);
}
else if ((AEBS_CollisionWarningLevel == 0x2) || (AEBS_CollisionWarningLevel == 0x5))
{
Sound_Request(SND_AEB_4Hz, 1);
Sound_Delete(SND_AEB_2Hz);
Sound_Delete(SND_AEB_8Hz);
}
else if ((AEBS_CollisionWarningLevel == 0x3) || (AEBS_CollisionWarningLevel == 0x6))
{
Sound_Request(SND_AEB_8Hz, 1);
Sound_Delete(SND_AEB_4Hz);
Sound_Delete(SND_AEB_2Hz);
}
else
{
Sound_Delete(SND_AEB_2Hz);
Sound_Delete(SND_AEB_4Hz);
Sound_Delete(SND_AEB_8Hz);
}
}
else
{
Sound_Delete(SND_AEB_2Hz);
Sound_Delete(SND_AEB_4Hz);
Sound_Delete(SND_AEB_8Hz);
}
//小锟斤拷 KL15锟斤拷KL30 48 //小锟斤拷 KL15锟斤拷KL30 48
if (PositionLightSts == 1) if (PositionLightSts == 1)
TelltaleLCDFlag.Sig.LCD11 = 1; TelltaleLCDFlag.Sig.LCD11 = 1;
...@@ -2389,7 +2424,9 @@ void Telltales_Management(void) ...@@ -2389,7 +2424,9 @@ void Telltales_Management(void)
Sound_Delete(SND_PTO); //PTO锟斤拷锟斤拷锟斤拷锟截憋拷 Sound_Delete(SND_PTO); //PTO锟斤拷锟斤拷锟斤拷锟截憋拷
Sound_Delete(SND_LOW_FUEL_SPEED); //燃锟斤拷液位锟酵憋拷锟斤拷锟斤拷锟截憋拷 Sound_Delete(SND_LOW_FUEL_SPEED); //燃锟斤拷液位锟酵憋拷锟斤拷锟斤拷锟截憋拷
Sound_Delete(SND_OVER_SPEED); //锟斤拷锟斤拷 Sound_Delete(SND_OVER_SPEED); //锟斤拷锟斤拷
Sound_Delete(SND_AEB); Sound_Delete(SND_AEB_2Hz);
Sound_Delete(SND_AEB_4Hz);
Sound_Delete(SND_AEB_8Hz);
Sound_Delete(SND_LOW_OIL_SPEED); Sound_Delete(SND_LOW_OIL_SPEED);
} }
else if (SYS_SELF_TEST_DISP_MODE) //锟皆硷拷 else if (SYS_SELF_TEST_DISP_MODE) //锟皆硷拷
......
...@@ -260,7 +260,67 @@ static const SndTrackStruct SndTracks[] = ...@@ -260,7 +260,67 @@ static const SndTrackStruct SndTracks[] =
/* 3 */ 0, 0, 0, 0, /* 3 */ 0, 0, 0, 0,
/* 4 */ 0, 0, 0, 0, /* 4 */ 0, 0, 0, 0,
/*============================================================*/ /*============================================================*/
}, },
/* 2Hz */
{
/*==============================================================
音轨编号 | 总长度 | 描述
----------+--------+--------------------------------------------
012 | 498ms | 1000Hz长鸣
----------------------------------------------------------------
总音符数 | 预充电时间(ms) |
--------------------------------------------------------------*/
1, 50,
/*--------------------------------------------------------------
音符编号 | 声音频率(Hz) | 占空比(%) | 时长(ms) | 淡出时间(ms)
--------------------------------------------------------------*/
/* 1 */ 2000, 50, 248, 200,
/* 2 */ 0, 0, 0, 0,
/* 3 */ 0, 0, 0, 0,
/* 4 */ 0, 0, 0, 0,
/*============================================================*/
},
/* 4Hz */
{
/*==============================================================
音轨编号 | 总长度 | 描述
----------+--------+--------------------------------------------
013 | 248ms | 1000Hz长鸣
----------------------------------------------------------------
总音符数 | 预充电时间(ms) |
--------------------------------------------------------------*/
1, 50,
/*--------------------------------------------------------------
音符编号 | 声音频率(Hz) | 占空比(%) | 时长(ms) | 淡出时间(ms)
--------------------------------------------------------------*/
/* 1 */ 2000, 50, 123, 75,
/* 2 */ 0, 0, 0, 0,
/* 3 */ 0, 0, 0, 0,
/* 4 */ 0, 0, 0, 0,
/*============================================================*/
},
/* 8Hz */
{
/*==============================================================
音轨编号 | 总长度 | 描述
----------+--------+--------------------------------------------
014 | 123ms | 1000Hz长鸣
----------------------------------------------------------------
总音符数 | 预充电时间(ms) |
--------------------------------------------------------------*/
1, 50,
/*--------------------------------------------------------------
音符编号 | 声音频率(Hz) | 占空比(%) | 时长(ms) | 淡出时间(ms)
--------------------------------------------------------------*/
/* 1 */ 2000, 50, 60, 13,
/* 2 */ 0, 0, 0, 0,
/* 3 */ 0, 0, 0, 0,
/* 4 */ 0, 0, 0, 0,
/*============================================================*/
},
}; };
/****************************************************************************** /******************************************************************************
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
#include "Sound_Source.h" #include "Sound_Source.h"
#define SND_TOTAL_NUMBER 32 #define SND_TOTAL_NUMBER 34
/****************************************************************************** /******************************************************************************
声音列表 声音列表
...@@ -40,9 +40,11 @@ enum SoundName ...@@ -40,9 +40,11 @@ enum SoundName
SND_LockWithKeyInCar , // 闭锁时钥匙在车内 SND_LockWithKeyInCar , // 闭锁时钥匙在车内
SND_BreakPressure , // 制动气压报警 SND_BreakPressure , // 制动气压报警
SND_OVER_SPEED , SND_OVER_SPEED ,
SND_AEB , SND_AEB_2Hz ,
SND_Break_down , SND_Break_down ,
SND_CNG_GasLeak , SND_CNG_GasLeak ,
SND_AEB_4Hz ,
SND_AEB_8Hz ,
}; };
/****************************************************************************** /******************************************************************************
...@@ -103,9 +105,11 @@ static const SoundAttributeStruct SoundList[] = ...@@ -103,9 +105,11 @@ static const SoundAttributeStruct SoundList[] =
{ /* SND_LockWithKeyInCar 26*/ SND_LockWithKeyInCar1 , SND_TYPE_NORMAL,}, { /* SND_LockWithKeyInCar 26*/ SND_LockWithKeyInCar1 , SND_TYPE_NORMAL,},
{ /* SND_BreakPressure 27*/ SND_BreakPressure1 , SND_TYPE_NORMAL,}, { /* SND_BreakPressure 27*/ SND_BreakPressure1 , SND_TYPE_NORMAL,},
{ /* SND_OVER_SPEED 28*/ SND_OVER_SPEED1 , SND_TYPE_NORMAL,}, { /* SND_OVER_SPEED 28*/ SND_OVER_SPEED1 , SND_TYPE_NORMAL,},
{ /* SND_OVER_SPEED 29*/ SND_SRC_AEB , SND_TYPE_NORMAL,}, { /* SND_AEB_2Hz 29*/ SND_SRC_AEB_2Hz , SND_TYPE_NORMAL,},
{ /* SND_Break_down 30*/ SND_SRC_Break_down , SND_TYPE_NORMAL,}, { /* SND_Break_down 30*/ SND_SRC_Break_down , SND_TYPE_NORMAL,},
{ /* SND_CNG_GasLeak 31*/ SND_SRC_CNG_GasLeak , SND_TYPE_NORMAL,}, { /* SND_CNG_GasLeak 31*/ SND_SRC_CNG_GasLeak , SND_TYPE_NORMAL,},
{ /* SND_AEB_4Hz 32*/ SND_SRC_AEB_4Hz , SND_TYPE_NORMAL,},
{ /* SND_AEB_8Hz 33*/ SND_SRC_AEB_8Hz , SND_TYPE_NORMAL,},
/*====================================================================================*/ /*====================================================================================*/
}; };
......
...@@ -860,11 +860,26 @@ void Telltale_LCD_Display(void) ...@@ -860,11 +860,26 @@ void Telltale_LCD_Display(void)
TFT_LCD_Clear_Layer(LAYER_LED09); TFT_LCD_Clear_Layer(LAYER_LED09);
#endif #endif
//AEB 灯 44 //AEB 灯 44
if (TelltaleLCDFlag.Sig.LCD10 == 1) /*if (TelltaleLCDFlag.Sig.LCD10 == 1)
TFT_LCD_Display_Sprite(LAYER_LED10, SN_zhishideng_10_png, 445, 9, 64); TFT_LCD_Display_Sprite(LAYER_LED10, SN_zhishideng_10_png, 445, 9, 64);
else else
TFT_LCD_Clear_Layer(LAYER_LED10); TFT_LCD_Clear_Layer(LAYER_LED10);
*/
if ((AEBS_AdvancedEmergencyBrakingSysState == 0xE) || (AEBS_CollisionWarningLevel == 2) || (AEBS1_STATUS & CAN_MSG_LOST) ||\
(AEBS_CollisionWarningLevel == 3) || (AEBS_CollisionWarningLevel == 5) || (AEBS_CollisionWarningLevel == 6))
{
TFT_LCD_Display_Sprite(LAYER_LED10, SN_zhishideng_10_png, 445, 9, 64);
}
else if ((AEBS_AdvancedEmergencyBrakingSysState == 0x2) ||\
(AEBS_CollisionWarningLevel == 1) || (AEBS_CollisionWarningLevel == 4))
{
TFT_LCD_Display_Sprite(LAYER_LED10, SN_zz_zhishideng_10_png, 445, 9, 64);
}
else
{
TFT_LCD_Clear_Layer(LAYER_LED10);
}
//小灯 KL15,KL30 48 //小灯 KL15,KL30 48
if (TelltaleLCDFlag.Sig.LCD11 == 1) if (TelltaleLCDFlag.Sig.LCD11 == 1)
TFT_LCD_Display_Sprite(LAYER_LED11, SN_zhishideng_11_png, 490, 9, 64); TFT_LCD_Display_Sprite(LAYER_LED11, SN_zhishideng_11_png, 490, 9, 64);
......
...@@ -38,9 +38,12 @@ ...@@ -38,9 +38,12 @@
#define SND_LockWithKeyInCar1 0x1A // #define SND_LockWithKeyInCar1 0x1A //
#define SND_BreakPressure1 0x1B // #define SND_BreakPressure1 0x1B //
#define SND_OVER_SPEED1 0x1C // #define SND_OVER_SPEED1 0x1C //
#define SND_SRC_AEB 0x1D //转向报警 #define SND_SRC_AEB_2Hz 0x1D //AEBS报警2Hz
#define SND_SRC_Break_down 0x1E // #define SND_SRC_Break_down 0x1E //
#define SND_SRC_CNG_GasLeak 0x1F // #define SND_SRC_CNG_GasLeak 0x1F //
#define SND_SRC_AEB_4Hz 0x20 //AEBS报警4Hz
#define SND_SRC_AEB_8Hz 0x21 //AEBS报警8Hz
/****************************************************************************** /******************************************************************************
伪音源名称列表 伪音源名称列表
******************************************************************************/ ******************************************************************************/
...@@ -107,9 +110,11 @@ static const SndAttributeStruct SndAttributeTable[] = ...@@ -107,9 +110,11 @@ static const SndAttributeStruct SndAttributeTable[] =
{/* SND_LockWithKeyInCar1 27 */ 0x01, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 1000,}, {/* SND_LockWithKeyInCar1 27 */ 0x01, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 1000,},
{/* SND_BreakPressure1 28 */ 0x01, 0, 90, SND_MODE_SINGLE , 1000,}, {/* SND_BreakPressure1 28 */ 0x01, 0, 90, SND_MODE_SINGLE , 1000,},
{/* SND_OVER_SPEED1 29 */ 0x01, 0, 3, SND_MODE_SINGLE , 1000,}, {/* SND_OVER_SPEED1 29 */ 0x01, 0, 3, SND_MODE_SINGLE , 1000,},
{/* SND_SRC_AEB 30 */ 0x01, 0, 30, SND_MODE_SINGLE , 1000,}, {/* SND_SRC_AEB_2Hz 30 */ 0x0C, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 500,},
{/* SND_SRC_Break_down 31 */ 0x01, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 1000,}, {/* SND_SRC_Break_down 31 */ 0x01, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 1000,},
{/* SND_SRC_CNG_GasLeak 32 */ 0x01, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 1000,}, {/* SND_SRC_CNG_GasLeak 32 */ 0x01, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 1000,},
{/* SND_SRC_AEB_4Hz 33 */ 0x0D, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 250,},
{/* SND_SRC_AEB_8Hz 34 */ 0x0E, 0, SND_CYCLE_NONSTOP, SND_MODE_SINGLE , 125,},
/*==============================================================================================*/ /*==============================================================================================*/
}; };
......
...@@ -1852,8 +1852,8 @@ typedef union ...@@ -1852,8 +1852,8 @@ typedef union
uint8_t Msg[8]; uint8_t Msg[8];
struct struct
{ {
uint8_t b00_03 : 4; // AEB_State uint8_t b00_03 : 4; // AEBS_AdvancedEmergencyBrakingSysState
uint8_t b04_07 : 4; // uint8_t b04_07 : 4; // AEBS_CollisionWarningLevel
uint8_t b10_17 : 8; // uint8_t b10_17 : 8; //
uint8_t b20_27 : 8; // uint8_t b20_27 : 8; //
uint8_t b30_37 : 8; // uint8_t b30_37 : 8; //
...@@ -1870,8 +1870,8 @@ extern volatile uint8_t CANMsg0CF02F2AStatus; ...@@ -1870,8 +1870,8 @@ extern volatile uint8_t CANMsg0CF02F2AStatus;
#define AEBS1 0x0CF02F2A #define AEBS1 0x0CF02F2A
#define AEBS1_STATUS CANMsg0CF02F2AStatus #define AEBS1_STATUS CANMsg0CF02F2AStatus
#define AEB_State CANMsg0CF02F2A.Sig.b00_03 // AEB状态 #define AEBS_AdvancedEmergencyBrakingSysState CANMsg0CF02F2A.Sig.b00_03
#define AEBS_CollisionWarningLevel CANMsg0CF02F2A.Sig.b04_07
static const uint8_t CANMsg0CF02F2AInit[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; static const uint8_t CANMsg0CF02F2AInit[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
static const uint8_t CANMsg0CF02F2ATimeout[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; static const uint8_t CANMsg0CF02F2ATimeout[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment