yzou_ua
Member level 5

After init etc., I calculate the speed in following way. Could someone help me find anything wrong here?? Buz the measured result varies time by time(when running the motor at constant speed).
while(1)
{
if(TMR3<23000)
{
if(POS1CNT=0)
{CntsRev=0;
CntsRev+=1;}
Cnts=POS1CNT+(CntsRev-1)*MaxCnt; // The total pulse number during above time period
Speed_rad=2*3.14159*Cnts/ppr/TMR3; // Speed in rad/s
}
}
while(1)
{
if(TMR3<23000)
{
if(POS1CNT=0)
{CntsRev=0;
CntsRev+=1;}
Cnts=POS1CNT+(CntsRev-1)*MaxCnt; // The total pulse number during above time period
Speed_rad=2*3.14159*Cnts/ppr/TMR3; // Speed in rad/s
}
}