This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我想用 280049C 输出 4 路不同频率的EPWM,但是配置好后,发现 GPIO0与 GPIO1寄存器里的值虽然不一样了,但是它们输出的频率还是一样的。请问这要怎么解决呢?
你好,你监测的是GPIO0和GPIO1?
这两个GPIO是同一个PWM模块,即PWM1的A/B两个输出端,所以输出频率是一样的。
你修改了PWM1和PWM2的话应该监测GPIO0和GPIO2的PWM波形。
您好,我监测的是 EPWM1 和 EPWM2,上面表达有误,我监测的是 GPIO0 和 GPIO 2。是按照如下去配置的。
请问这是Counter Synchronization 的问题吗?应该怎么解决呢
你是指ePWM模块同步?我觉得不太可能是这个原因。因为同步只是在同一个时刻清零计数器,所以即使你使能了同步,周期寄存器的值还是在正常计数的,也就是说按照你的配置,PWM2的周期还是正好是PWM1的2倍。
你试一下修改PWM1的频率,PWM2不变呢?以及,你的测试是在TI提供的官方例程上进行的吗?
当我把 EPWM1 与 EPWM2 的 TBPRD 配置成一样时,它是正常的
当 EPWM2 频率设为 2 倍时,它的结果并不是改变了频率,而是改变了占空比
当 EPWM2 频率小于 EPWM1 时,它变成一条直线
是自己配的寄存器呢,并不是在例程上改的
图2的占空比改变应该是因为你的频率变了但是cmpa,cmpb没有改变,所以占空比会变。
但是你的TBPRD没有改变就可能是你配置有问题,你可以对照一下在例程中修改的效果,然后看看具体什么地方配置不同。
C:\ti\c2000\C2000Ware_3_04_00_00\driverlib\f28004x\examples\epwm