#include "light_driver.h" #include "speed_sensor.h" MC_LightDriver_IO_Struct_t HeadLightIO_Groups[3] = { {GPIOB, GPIO_PIN_4|GPIO_PIN_5}, //前灯6V {GPIOB, GPIO_PIN_6}, //前灯12V {GPIOB, GPIO_PIN_7}, //前灯随电池电压 }; MC_LightDriver_IO_Struct_t TailLightIO_Groups[3] = { {GPIOB, GPIO_PIN_2}, //尾灯6V {GPIOB, GPIO_PIN_0}, //尾灯12V {GPIOA, GPIO_PIN_6} //尾灯随电池电压 }; static void LightDriver_IO_Control(MC_LightDriver_IO_Struct_t* IO_Groups, uint8_t Len, uint8_t ID, MC_LightSwitch_Struct_t SwitchCode) { uint8_t i; if(SwitchCode == MC_LightSwitch_ON)//开灯时,仅打开配置的IO { for(i=0; i= MC_ConfigParam2.u16OverspeedWarnVal) { 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; } } }