TI中文支持网
TI专业的中文技术问题搜集分享网站

关于28335EQEP模块状态寄存器QEPSTS复位的问题。

关于28335EQEP模块状态寄存器QEPSTS:UPEVNT复位的问题,手册中说将该位置1,便可复位。可是我的程序里面将QEPSTS:UPEVNT写入1后,并没有复位,一直显示为1,不知道是何缘故,还望指点,谢谢~

程序部分:

if(EQep2Regs.QEPSTS.bit.UPEVNT==1) 
{
      temp3=EQep2Regs.QCTMR;
      temp=EQep2Regs.QPOSCNT;
if(EQep2Regs.QEPSTS.bit.COEF==0) 
{
      temp1=(unsigned long)EQep2Regs.QCTMRLAT;      temp2=(unsigned long)EQep2Regs.QCPRDLAT; }
else 
      temp2=0xFFFF;

     EQep2Regs.QEPSTS.bit.UPEVNT=1;
     EQep2Regs.QEPSTS.bit.COEF=1;
}

EQEP设置:

void EQEPInit(void)
{
EQep2Regs.QUPRD=1500000; 
EQep2Regs.QDECCTL.bit.QSRC=00; 
EQep2Regs.QEPCTL.bit.FREE_SOFT=0;
EQep2Regs.QEPCTL.bit.PCRM=11; 
EQep2Regs.QEPCTL.bit.UTE=1; 
EQep2Regs.QEPCTL.bit.QCLM=0; 
EQep2Regs.QPOSMAX=0xffffffff;
EQep2Regs.QEPCTL.bit.QPEN=1; 
EQep2Regs.QCAPCTL.bit.UPPS=2; 
EQep2Regs.QCAPCTL.bit.CCPS=0;
EQep2Regs.QCAPCTL.bit.CEN=1; 
}

Jianguo Wang:

回复 Eric Ma:

谢谢,正如你所说,是刷新不及时的问题,实际已经被清除~

赞(0)
未经允许不得转载:TI中文支持网 » 关于28335EQEP模块状态寄存器QEPSTS复位的问题。
分享到: 更多 (0)