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.

BaseRpm calculation in BLDC_Sensored.c



From the code, BaseRpm = 120 * BaseFreq / Poles.

BaseFreq is set 200 as a constant.

If I set the Poles to be 8, I get the correct value of BaseRpm = 3000 RPM.

But if I set the Poles to be 12, I get BaseRpm = 1920 (it should be 2000 RPM). If Poles = 16, I get BaseRpm = 1440 (it should be 1500 RPM). 

Can somebody explain this? 

In DRV8312GUI_Main.c, the formula for BaseRpm is the same but there I see always the correct calculated BaseRpm.