首先,我想弄清楚同步的概念是什么
1、是指各个ePWM的时钟是同步的?
2、是指各个ePWM模块的计数是同步的?例如ePWM1的TBCTR寄存器计数到2000,ePWM2的TBCTR寄存器也计数到2000
其次,如果两个ePWM模块失同步,怎么再同步起来
再次,同步操作的作用是怎么样的,例如两个ePWM模块正在计数,一个计数到0产生一个同步,另一个不论计数到多少TBCTR都会清零吗?
Brian Wang0:
手册上对于同步的概念阐述的很清楚,即同步信号到来时,计数器会装载相位寄存器里的值。
而芯片内部的同步信号又可以由前一个模块传递过来。
所以说具体波形是什么样的要看您的寄存器配置,不能一概而论。
首先,我想弄清楚同步的概念是什么
1、是指各个ePWM的时钟是同步的?
2、是指各个ePWM模块的计数是同步的?例如ePWM1的TBCTR寄存器计数到2000,ePWM2的TBCTR寄存器也计数到2000
其次,如果两个ePWM模块失同步,怎么再同步起来
再次,同步操作的作用是怎么样的,例如两个ePWM模块正在计数,一个计数到0产生一个同步,另一个不论计数到多少TBCTR都会清零吗?
xun qinglai:
回复 Brian Wang0:
同步应该解释清楚了,同步应该是有条件的,可以由多种信号触发,具体怎么同步应该看配置。那么另一个问题还没有回答,如果ePWM1的TBCTL中的CTRMODE寄存器设置为3,那么ePWM1实际上停止了,如果后续的ePWM2等模块还在运行,那么这些模块不会和ePWM1模块同步了,如果ePWM1模块需要重新运行,并与其它模块同步,应该怎么操作。另一个问题,手册上对于TBCLKSYNC的描述是这样的,0值后有一段话“The TBCLK (Time Base Clock) within each enabled ePWM module is stopped. (default). If, however,the ePWM clock enable bit is set in the PCLKCR1 register, then the ePWM module will still be clockedby SYSCLKOUT even if TBCLKSYNC is 0.”这里所说即使TBCLKSYNC为0,ePWM也有时钟信号,但是这种状态似乎不能运行,这个怎么理解。
首先,我想弄清楚同步的概念是什么
1、是指各个ePWM的时钟是同步的?
2、是指各个ePWM模块的计数是同步的?例如ePWM1的TBCTR寄存器计数到2000,ePWM2的TBCTR寄存器也计数到2000
其次,如果两个ePWM模块失同步,怎么再同步起来
再次,同步操作的作用是怎么样的,例如两个ePWM模块正在计数,一个计数到0产生一个同步,另一个不论计数到多少TBCTR都会清零吗?
Brian Wang0:
回复 xun qinglai:
1 ctrmode的重置后,下一个tbclk到来时会epwm1恢复运行,仍可以产生同步信号啊,另外也可以用软件强制同步。
2 这句话有个前提,要在pclkcr1中把对应epwm模块的时钟使能啊