|
@@ -1,4 +1,6 @@
|
|
|
#include "light_driver.h"
|
|
|
+#include "speed_sensor.h"
|
|
|
+
|
|
|
|
|
|
MC_LightDriver_IO_Struct_t HeadLightIO_Groups[3] =
|
|
|
{
|
|
@@ -117,8 +119,8 @@ void LightDriver_Process(MC_TailLight_Mode_Struct_t TailLight_Mode, MC_LightVolt
|
|
|
|
|
|
//控制尾灯
|
|
|
static uint16_t FlashTimeCnt = 0;
|
|
|
- uint16_t OnTime = 8;
|
|
|
- uint16_t Period = 15;
|
|
|
+// uint16_t OnTime = 8;
|
|
|
+// uint16_t Period = 15;
|
|
|
switch(TailLight_Mode)
|
|
|
{
|
|
|
case MC_TAIL_LIGHT_MODE1://连接尾灯,开灯时低亮,刹车时高亮
|
|
@@ -132,11 +134,11 @@ void LightDriver_Process(MC_TailLight_Mode_Struct_t TailLight_Mode, MC_LightVolt
|
|
|
{
|
|
|
if(LightSwitchCode == MC_LightSwitch_ON)
|
|
|
{
|
|
|
- if(FlashTimeCnt < OnTime)
|
|
|
+ if(FlashTimeCnt < MC_ConfigParam2.u16EffectVal)
|
|
|
{
|
|
|
LightDriver_IO_Control(TailLightIO_Groups, sizeof(TailLightIO_Groups)/sizeof(MC_LightDriver_IO_Struct_t), TailLightIO_Groups_ID, MC_LightSwitch_ON);
|
|
|
}
|
|
|
- else if(FlashTimeCnt < Period) //控制周期:15K / Period
|
|
|
+ else if(FlashTimeCnt < MC_ConfigParam2.u16Prediv) //控制周期:15K / Period
|
|
|
{
|
|
|
LightDriver_IO_Control(TailLightIO_Groups, sizeof(TailLightIO_Groups)/sizeof(MC_LightDriver_IO_Struct_t), TailLightIO_Groups_ID, MC_LightSwitch_OFF);
|
|
|
}
|
|
@@ -209,6 +211,36 @@ void LightDriver_Process(MC_TailLight_Mode_Struct_t TailLight_Mode, MC_LightVolt
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
|
+ case MC_TAIL_LIGHT_MODE5://模式5,常亮
|
|
|
+ {
|
|
|
+ LightDriver_IO_Control(TailLightIO_Groups, sizeof(TailLightIO_Groups)/sizeof(MC_LightDriver_IO_Struct_t), TailLightIO_Groups_ID, MC_LightSwitch_ON);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ case MC_TAIL_LIGHT_MODE6://超速报警
|
|
|
+ {
|
|
|
+ if(MC_SpeedSensorData.Speed_Data >= MC_ConfigParam2.u16OverspeedWarnVal)//速度超了 车速放了100倍 6S响1S:7500/45000
|
|
|
+ {
|
|
|
+ if(FlashTimeCnt < MC_ConfigParam2.u16EffectVal)//响声执行
|
|
|
+ {
|
|
|
+ LightDriver_IO_Control(TailLightIO_Groups, sizeof(TailLightIO_Groups)/sizeof(MC_LightDriver_IO_Struct_t), TailLightIO_Groups_ID, MC_LightSwitch_ON);
|
|
|
+ }
|
|
|
+ else if(FlashTimeCnt < MC_ConfigParam2.u16Prediv) // 响声周期
|
|
|
+ {
|
|
|
+ LightDriver_IO_Control(TailLightIO_Groups, sizeof(TailLightIO_Groups)/sizeof(MC_LightDriver_IO_Struct_t), TailLightIO_Groups_ID, MC_LightSwitch_OFF);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ FlashTimeCnt = 0;
|
|
|
+ }
|
|
|
+ FlashTimeCnt++;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ FlashTimeCnt = 0;
|
|
|
+ LightDriver_IO_Control(TailLightIO_Groups, sizeof(TailLightIO_Groups)/sizeof(MC_LightDriver_IO_Struct_t), TailLightIO_Groups_ID, MC_LightSwitch_OFF);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|