你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
我来回答
举报
zero99 发表于 2017-9-26 17:11 之前有个官方电机的培训,希望对楼主有帮助:https://www.stmcu.org.cn/module/forum/thread-612763-1-1.html ...
额,谢谢,不过这个好像都主要是针对PMSM的FOC算法的,不是针对BLDC
{
if(__HAL_TIM_DIRECTION_STATUS(&HF_TIMx))
{
HAL_GPIO_WritePin(GPIO_PORT_COMM,GPIO_CH_COMM,GPIO_PIN_SET);
/* UP-counting direction started */
/* GET the ADC value (PHASE CURRENT)*/
if(SIXSTEP_parameters.STATUS != START && SIXSTEP_parameters.STATUS != ALIGNMENT)
{
switch (SIXSTEP_parameters.step_position)
{
case 6:
{
if(SIXSTEP_parameters.demagn_counter >= SIXSTEP_parameters.demagn_value)
{
SIXSTEP_parameters.ADC_BUFFER[1] = HAL_ADC_GetValue(&ADCx);
if(PI_parameters.Reference>=0)
{
if(SIXSTEP_parameters.ADC_BUFFER[1]> SIXSTEP_parameters.ADC_BEMF_threshold_UP)
{
MC_SixStep_ARR_Bemf(1);
SIXSTEP_parameters.BEMF_Tdown_count = 0;
}
}
else
{
if(SIXSTEP_parameters.ADC_BUFFER[1]< SIXSTEP_parameters.ADC_BEMF_threshold_DOWN)
{
MC_SixStep_ARR_Bemf(0);
}
}
}
else SIXSTEP_parameters.demagn_counter++;
}
break;
这个库函数里面过零点检测的语句是 if(SIXSTEP_parameters.ADC_BUFFER[1]> SIXSTEP_parameters.ADC_BEMF_threshold_UP)这句吗??看不懂是什么意思啊?谁能解释下吗?