更新EW模块驱动

This commit is contained in:
ranchuan
2023-10-31 18:12:21 +08:00
parent 873029149d
commit a83444b3c8
17 changed files with 3483 additions and 355 deletions

View File

@@ -633,3 +633,54 @@ uint16_t AD_SampleCap(uint16_t delay)
Gpio_CAPSwitch(0);
return ul_ad;
}
/*
@brief 获取总线电流上升时间
@param0 采样判线AD值
@param1 采样超时 单位0.01ms
@rtv 等待时间
*/
uint16_t AD_GetBusCurUp(uint16_t ad_line ,uint16_t time_out)
{
uint16_t aus_adc_v[5];
uint16_t us_count = 0;
uint16_t us_index = 0;
uint8_t uc_start = 0;
Get10usCount();
ADC_ClearFlag(ADC_CURR_DE,ADC_FLAG_EOC);//清除转换结束标志
ADC_SoftwareStartConvCmd(ADC_CURR_DE, ENABLE); //启动转换
while(GetCountTimerCnt() < time_out)
{
time_out = 2000;
while((time_out > 0) && ( ADC_GetFlagStatus(ADC_CURR_DE,ADC_FLAG_EOC) == RESET))
{
time_out--;
}
aus_adc_v[us_count] = ADC_GetConversionValue(ADC_CURR_DE) & 0x0FFF;
ADC_ClearFlag(ADC_CURR_DE,ADC_FLAG_EOC);//清除转换结束标志
ADC_SoftwareStartConvCmd(ADC_CURR_DE, ENABLE); //启动转换
if(us_count == 4)
{
uc_start = 1;
}
us_count++;
us_count %= 5;
if(uc_start == 0)
{
continue;
}
for(us_index = 0; us_index < 5; us_index++)
{
if(ad_line < aus_adc_v[us_index])
{
break;
}
}
if(us_index == 5)
{
return GetCountTimerCnt();
}
}
return 0;
}