2014-09-05 41 views
0

例如,在GPIO配置和初始化期间,我们可能会将引脚速度设置为50MHz,100MHz,但我们也可能将其设置为2MHz。据我所知,速度较慢=功耗较低。如何产生与引脚速度相关的PWM?当我想要生成300Hz或1kHz的PWM时,我可以将引脚速度设置为2MHz?如何生成与GPIO速度相关的PWM?

在此先感谢您的答案。

+0

这取决于您需要多少细化的占空比控制。 – 2014-09-05 07:12:24

回答

1

您正在谈论的速度等级 - 50 MHz,100 MHz,2 MHz - 基本上是转换速率控制I/O引脚状态改变的速度。

这实际上与用于实际生成信号的计数器/定时器的编程无关 - 它不应与clock prescaler混淆,这会降低进入定时器的时钟速率,潜在地大幅降低功耗( CMOS电路中的大部分功率在改变状态时用于充电和放电隐性电容),而且还有定时分辨率。

相反,转换速率的降低就像输出端的原始低通滤波器。它可能意味着驱动输出的功耗更少(或至少功率分布在更长的时间内),但计数器/定时器所消耗的大部分功率将在计数器本身的时钟中。

如果你的输出频率远低于摆率限制,并且你的外部电路可以容忍缓慢的转换,你可以尝试设置它。

当然,如果您的输出频率接近摆率限制,您可能会发现信号无法一直驱动到有效逻辑电平。