STC32G144K246怎么做到PWMA和PWMC同相位?
我把PWMA 和 PWMC都用比较,模式设置一样,ARR和CRR都设置的一样,也是几乎一起打开,
具体方法如下,示波器上出现的波形周期和占空比都一样,
但是会有相位差。
而且每次上电有相位差都不太一样。
我不想要这个相位差这个怎么办?
有没有解决方法?
HSPWMA_Run(); //PWMA开始运行
HSPWMC_Run(); //PWMA开始运行
EnableGlobalInt(); //使能全局中断
简单点的:
将两个初始化函数开始计时那一行提取出来放一起
复杂的看这个是否可用:
如果是需要同步PWMA/PWMB或者同步PWMC/PWMD,
可以使用内部主PWM的TRGO信号当作从PWM的TRGI进行同步
PWMA和PWMC是完全独立的两组PWM,无法使用内部的TRGO信号进行同步,
PWMA和PWMC的同步只能使用外部信号进行同步触发
1、同时选P3.2为PWMA和PWMC的外部触发功能脚PWMAETI和PWMCETI
2、软件配置PWMA使用PWMAETI(P3.2)作为标准外部触发输入,ETI下降沿有效
3、软件配置PWMC使用PWMCETI(P3.2)作为标准外部触发输入,ETI下降沿有效
4、P3.2产生下降沿,同步触发启动PWMA和PWMC,这样PWMA和PWMC就同相位了
附件是我用AiCube产生的示例代码
zhp 发表于 2026-3-10 15:52
如果是需要同步PWMA/PWMB或者同步PWMC/PWMD,
可以使用内部主PWM的TRGO信号当作从PWM的TRGI进行同步
谢谢大神{:baoquan:}
页:
[1]