导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→PWM教程——限制较低的值

* 96509: PWM教程——限制较低的值

   liufengzhong 
liufengzhong发表的帖子 

 PWM教程——限制较低的值

我有一个简单的PWM教程中运行模拟器。 一切似乎正常工作,责任周期从2到1000。 我发现一个令人惊讶的结果当1设置的责任。 而不是“关闭”的大部分时间里,大部分时间的输出。

我不知道这是因为没有足够的时间只是在主循环,和“错过”触发器吗?


回答:

” 我不知道这是因为没有足够的时间只是在主循环,和“错过”触发器吗? ”

是的,这几乎是它的大小。 这个例子是关于作为PWM组件进入XC一样简单。 它使用一个端口计时器在未来造成过渡。 每个端口可以设置一个过渡(即在未来。 去值x时)。它给了很好的分辨率(ns十步),但也有一些缺点…

首先,端口计时器只火比较(而不是一个大于或等于比通用计时器)。 这意味着如果最后港口操作之间的时间和未来很短,你可能会错过时间触发器。 这是你看到的。 所以没有“如果”声明中寻找一个特例0或100%,你将有一个实际的调制深度限制由于instrcution时机。 其次,端口计时器只有16 b,所以你会得到一个马克斯655 ns约1.5 khz -看到 

如果你想要一个“完美”pwm线性响应从0到100%,那么有必要使用额外的软件来处理特殊的情况,或者使用buffererd港口(移位寄存器有效)加载位流(单个transiton)一个I / O端口。

有0 - 100%的责任能力,重置synchrnoised PWM组件潜伏在这里(见pwm.xc)  如果你想要一个。 它提供了多个pwm 1 b端口上从一个任务运行在一个合乎逻辑的核心。 它可以支持4×10 b,20 khz pwm(或更多通道频率较低,反之亦然)。

发表时间:2014年10月1日10:34:29

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:提供监控设备开发(TCP/IP,RS232,RS85,GPRS,短信,光网口,电网口。。。)
[下一篇帖子]:在混合接口. C和.XC实现 你好, /P P 我有一个.xc调用的任务。&n