用STM32是否能实现:输出一组频率占空比50%,100~150KHZ

twpma   2009-2-25 08:35 楼主
                                 大家好,用STM32是否能实现:输出一组频率占空比50%,100~150KHZ,可调步进精确到1Hz,就是最小可以1HZ的变化.

回复评论 (7)

对于STM32来说,可以很容易地产生100~150kHz的PWM波形

                                 使用定时器的PWM输出模式即可。
点赞  2009-2-25 08:41

最小可以1HZ的变化?

                                 我也想知道怎么实现
点赞  2009-2-25 11:11

对不起,只看到标题,没有看清这个1Hz的变化

                                 1Hz/150kHz = 0.00000667 = 0.000667%;目前STM32做不到这个1Hz的调节精度。
点赞  2009-2-25 11:58

谢谢.

                                 这个1HZ的精确度,,,,确实是不好弄啊.
点赞  2009-2-25 13:24

最小可以1Hz的变化?楼主这个要求太高了吗?

通常MCU产生PWM波形的方法都是通过数一个时钟的脉冲实现,假定这个时钟是10GHz,我们可以算算是否能达到楼主的要求:

要产生150kHz的脉冲,时钟需要计数66666.67次,取整得到66667次,误差为:
   150,000 - (10,000,000,000 / 66667) = 0.75Hz

要产生150001Hz的脉冲,时钟需要计数66666.22次,取整得到66666次,误差为:
   150,001 - (10,000,000,000 / 66666) = 0.5Hz

通过计算可以看到误差太大,满足不了要求。

结论:10GHz的时钟频率不能达到PWM输出在1Hz精度变化的要求。

谁知道有超过10GHz的MCU吗?
点赞  2009-2-25 14:03

哈哈.

                                 呵呵.
点赞  2009-2-25 17:58

用STM32是可以实现100KHZ~150KHZ步进为1HZ的频率

150KHZ-100KHZ = 50000HZ
步进: 50000HZ/65536 = 0.762939453125HZ
方法是:

STM32去控制16位的DAC,DAC去控制VCO,再由STM32去检测VCO的输出,实现PID调节来稳定VCO的输出.但这样一来,设计重点就在VCO上面了.

哈哈,
点赞  2009-2-28 11:53
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复