ajun110 发表于 2011-12-14 16:52:26

为什么当配置SPWM波输出的时候,捕获计数时间就有问题了呢?

现在在做光伏并网逆变器,在使用一块TMS320F2808开发板进行调试软件锁相环程序中遇到一个问题,请求支持一下,具体问题描述如下:   
   1、系统时钟为100MHz,ePWM子模块计数时钟为50MHz。
   2、单独使用ePWM子模块产生一个载波比360、调制波为50Hz的单相逆变的4路SPWM波正常;ePWM子模块中的配置顺序为:先进制PWM同步输出,然后配置PWM相关的寄存器,配置完成后,在使能PWM输出同步。
   3、单独使用eCAP子模块进行捕获一个方波,也能正常计算方波的周期和占空比等。eCAP采用delta模式,ECCTL2寄存器的CONT/ONESHT配置为CONT连续模式、STOP_WRAP配置为3(在捕获4事件后覆盖前面的值),ECCTL1寄存器的CTRRST1~CTRRST4配置为1(捕获后复位计数器)、CAP1POL~CAP4POL配置为上升沿触发。例如,捕获一个50Hz频率的方波信号周期为20ms,捕获寄存器CAP1~CAP4大致为1999999,乘以计数时基10ns约为20ms。
      4、当将两个程序合起来后,能正确输出SPWM波,但是捕获的时间不正确CAP1~CAP4的值大致为5555,约为20ms/360,经过查找原因,发现在载波比为360的情况下,正常应该是大约每进PWM中断360次(时间大约为20ms)才进一次捕获中断。 但是,实际发现,每进一次PWM中断,也进一次CAP中断。

    关于eCAP中的寄存器中同步位如SWSYNC、SYNCI_SEL、SYNCI_EN都配置为禁止。
请问这是什么原因造成的?是否当同时使用eCAP和ePWM两个模块时还需要注意什么?

ajun110 发表于 2011-12-15 11:08:32

没人响应啊,自己顶一下,坐等高手指点,,,,
页: [1]
查看完整版本: 为什么当配置SPWM波输出的时候,捕获计数时间就有问题了呢?