用单片的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”这个范围就行了吧?
最后附上我参考的文档
此帖出自
小平头技术问答
这句错误。只能说:“半个周期就是10ms”。
那pwm的频率是这样算吗?能帮我解答一下三个问题吗?谢谢了!弄清楚之后马上写程序!面包板都搭好了!
对的。
不过这样更准确:“半个周期平均分成N等分,每一份的时间是 (0.01/N)秒,那么PWM的周期也是(0.01/N)秒"。
要么设法在”另外半个周期“由单片机控制使PWM脉冲极性为负,要么由单片机控制使PWM输出经滤波后得到的信号反相(可以用一个模拟开关加反相器实现)。
不仅要保证50Hz信号成份衰减控制在允许范围内,而且各高次谐波衰减要足够大。换句话说,滤波的阶数要够高。通常一阶滤波是不够的,至少三阶。
一周热门 更多>