if ((*eQEP[m]).QFLG.bit.IEL == 1)
{
v.IndexSyncFlag = 0x00F0;
v.QepCountIndex = (*eQEP[m]).QPOSILAT;
(*eQEP[m]).QCLR.bit.IEL = 1; /* Clear interrupt flag
}
请问上段代码中是用来检测a相和z信号之间的偏差叫calibration的吗?
QFLG.bit.IEL的这一位是索引z信号的中断标志位,如果该位置1,则会将QPOSCNT的数据所存到QPOSILAT,程序中将QPOSILAT赋给了QepCountindex,然而这个值每当有z信号的时候,都会将QPOSCNT赋给QPOSILAT,这个值不明白是用来干什么的?请高手帮忙看一下,十分感谢.
Linda:
您好!
这段代码的作用是确认有Index信号产生,可以参考以下E2E论坛的说明:
http://e2e.ti.com/support/microcontrollers/c2000/f/171/p/50073/180065#180065