Cypress技术论坛
直播中

李蛹

8年用户 186经验值
私信 关注
[问答]

如何用一个与门和控制寄存器同步两个PWM?

嗨,大家好,
我试图用一个与门和控制寄存器同步两个PWM。我的想法是默认情况下将控制寄存器设置为零,这将使AND门的输出无效。然后,在我的主函数中,在初始化PWM之后,我将控制RG设置为1,并激活AND门以通过它传递时钟信号。
PWM的工作无需与非门。当添加与门时,什么也不能工作。我尝试初始化控制寄存器到1,PWM仍然不起作用。
它看起来像个臭虫,有人经历过吗?有人能推荐一种简单的方法来同步PWM吗?
谢谢,

***.M.C代码***
包括:
空主程序()
{
CyrGeSyrGeR8(CyrGeMyLogic),CygGETYGRIG8(CyrGeMyLogic调试)0x40;
PWMY1LSTATE();
pWM22x启动();
控制程序RIGH1 1X写入(1U);
(1);
}
图1
62.4 K

回帖(8)

李蛹

2019-9-5 13:18:44
所以我把时钟频率下,它似乎如预期的那样运行在1MHz。
也许有一个与传播延迟的问题,在更高的频率?
举报

王琳

2019-9-5 13:30:18
大多数基本组件运行到48 MHz时钟,因此问题将由不同的事物引起。你能把你的整个项目(与与门)一起用你的所有设置吗?要做到这一点,使用C造饰者和GT;文件-GT;创建工作区束(最小)并附加结果文件。鲍勃
举报

李蛹

2019-9-5 13:48:51
档案附呈。谢谢你的帮助。
-肯
SyrWK.CaseV01.Zip
404.8 K
举报

王琳

2019-9-5 14:03:50
一些想法:
您禁用了指令缓存?
将更容易地使用PWM的启动输入来启动(和停止)计数而不是门控时钟。
您可以使用两个(2)输出配置,这将通过设计同步。
您使用的是一个相当老版本的创建者。我建议您升级到版本3.1或甚至3.2早期访问。
鲍勃
举报

更多回帖

发帖
×
20
完善资料,
赚取积分