This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

sensorless_BLDC控制中的com_tirg.h问题请教



如题,com_tirg.h中有三个函数,CMTN_TRIG_MACRO(v)、NOISE_WINDOW_CNT_MACRO(v)和DELAY_30DEG_MACRO(v),程序中有几个问题想请教一下:

1、NOISE_WINDOW_CNT_MACRO(v) 中这段是什么意思,v.CmtnDelay是什么作用? 

if (v.CmtnDelay >= v.NWDelayThres)                      /* noise window is fixed Value*/ \
v.NoiseWindowMax = v.NWDelayThres - v.NWDelta;                                                    \
else                                                                   /* noise window adjusted dynamically*/ \
v.NoiseWindowMax = v.CmtnDelay - v.NWDelta;

2、DELAY_30DEG_MACRO(v)为什只在v.CmtnPointer == 5中出现? 

else if (v.CmtnPointer == 5) 

v.DebugBemf = _IQmpy(_IQ(3),v.Va) - v.Neutral; 
if (v.DebugBemf < 0) 
v.NoiseWindowCounter = 0; 
else 
NOISE_WINDOW_CNT_MACRO(v); 
DELAY_30DEG_MACRO(v);