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

TMS320F28335: ECAP检测

Part Number:TMS320F28335

在引脚上通过信号源输入ECAP检测的方波,发现ECAP检测到的值是方波的毛刺所在的地方,而不是程序设置的方波下降沿。如果方波波形没有毛刺的话,ECAP就会检测不到数据。具体的配置如下:

ECap4Regs.ECCTL1.bit.CAP1POL = 1;// 0;//0 => Rising Edge; 1 => Falling Edge;ECap4Regs.ECCTL1.bit.CTRRST1 = 0;//0 => Do not reset counterECap4Regs.ECCTL1.bit.CAPLDEN = 1;//1 => Enable cap loadECap4Regs.ECCTL1.bit.PRESCALE = 0;//0 => Bypass the prescalerECap4Regs.ECCTL2.bit.CAP_APWM = 0;//0 => Capture mode; 1 => APWM modeECap4Regs.ECCTL2.bit.CONT_ONESHT = 1;//1 => One shoot modeECap4Regs.ECCTL2.bit.SYNCO_SEL = 3;//3 => Disable synchronous signal outECap4Regs.ECCTL2.bit.SYNCI_EN = 1;//1 => Enable synchronousECap4Regs.ECCTL2.bit.STOP_WRAP = 0;//n => Stop capture sequence after event n + 1ECap4Regs.ECCTL2.bit.TSCTRSTOP = 1;//1 => Allow TSCTR to runECap4Regs.CTRPHS = 0;//Synchronous PhaseECap4Regs.ECEINT.bit.CEVT1 = 0;//1 => Enable interrupt for event 1

Yale Li:

有抓波形吗?能不能结合波形具体描述下?

,

Liwen Jia:

程序想要实现的功能是利用ECAP捕捉输入信号的下降沿时间(如黄色波形),然后控制EPWM生成与ECAP下降沿时刻同步关断的驱动信号(如蓝色波形),开通时间由关断时间计算得到。示波器采集到的信号可以发现,在黄色波形没有毛刺的时候,蓝色波形没有输出。没有输出的原因经过寄存器观察发现,是ECAP检测到的数值太小,导致输出关断时间计算得到的开通时间为负数被舍掉了。按道理说,他应该检测到的是黄色波形的下降沿,不应该这么小。而有毛刺时,蓝色波形有输出,但是具体跟哪一个毛刺同步也很难确定。

,

Liwen Jia:

已经把相关波形放在下面了,非常感谢

,

Yale Li:

请看一下zhcs889q_TMS320F2833x、TMS320F2823x 实时微控制器 datasheet (Rev. Q)第34页7.4 建议运行条件:

高电平输入电压是3.3V左右,根据上传的波形来看,黄色波形的峰-峰值似乎都不到2.5V。这可能是eCAP捕获触发失败的原因。有了毛刺以后,峰-峰值符合触发条件,所以产生了随机触发、随机捕获的效果。

,

Liwen Jia:

很有道理,非常感谢,我去试一下

,

Yale Li:

好的

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28335: ECAP检测
分享到: 更多 (0)