利用单片机产生SPWM波的一些疑问

2019-03-25 14:22发布

用单片的PWM的功能产生SPWM波,最后经过低通滤波得到想要的正弦波来驱动喇叭发音!看了一些资料,决定用“面积等效法”来计算脉宽,用查表法来做,有几个疑问:
1:“面积等效法”是将调制波的半个周期,平均分成N等分,那么程序里PWM的频率是多少呢?我的理解是这样:
      假如要产生50HZ的正弦波,半个周期就是100HZ,半个周期平均分成N等分,那么每一份就等于的时间 0.01/N秒
      那么PWM的周期也是 0.01/N秒  不知道对不对
2:  “面积等效法”是将调制波的半个周期,平均分成N等分,那么出来的SPWM波也只有半个周期,那么另外半个周期的波形怎么办呢?


3: SPWM波最后经过RC滤波变成想要的正弦波,如果想要得到50HZ的正弦波,要滤除高次谐波(150HZ,250HZ.......),那么低通滤波的
    截止频率应该在“50HZ<1/(2*PI*RC)<150HZ”这个范围就行了吧?
最后附上我参考的文档
      



此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
程序会不会
1楼-- · 2019-03-26 16:53
 精彩回答 2  元偷偷看……
maychang
2楼-- · 2019-03-26 20:30
程序会不会 发表于 2017-8-6 08:57
也就是说:单片机发出的spwm波是固定的,但是需要判断是正半周期还是负半周期,正半周期滤波后直接输出, ...

当然也可以有第三种方法:PWM输出直流加正弦,且正弦峰值小于直流。
这样经滤波后得到的信号去除直流成份后即为正弦。
但这种方法浪费很大,只能用于小信号,功率输出是不能使用的。
程序会不会
3楼-- · 2019-03-27 01:48
我看到一个例程,上面用到了两路PWM输出,各输出半个周期。
因为没有电路图不知道后面是怎么处理?难道是,两路SPWM滤波后,用运放做一个减法器?
程序会不会
4楼-- · 2019-03-27 03:03
补充上面,两路PWM输出是一样的,只是相位间隔180°
程序会不会
5楼-- · 2019-03-27 08:23
maychang 发表于 2017-8-6 08:30
“面积等效法”是将调制波的半个周期,平均分成N等分,那么出来的SPWM波也只有半个周期,那么另外半个周期 ...

如果用模拟开关+反向器的话,那就是要负电源供电了?
maychang
6楼-- · 2019-03-27 11:26
程序会不会 发表于 2017-8-6 11:22
如果用模拟开关+反向器的话,那就是要负电源供电了?

“如果用模拟开关+反向器的话,那就是要负电源供电了?”
那当然!
没有负电源,你要的正弦波负半周从哪里来?

一周热门 更多>