13
206
1
高级会员
在上一篇文章里粘贴了STM32产生SPWM的代码,我在编写这些代码时最大的问题就是如何得到占空比,就是代码中的数组 Duty[]。他的思想就是对正弦波采样,在采样点出用PWM的占空比来代替正弦波在该点的数值。最容易想到就是用定时器的ARR值乘以sin(2*pi*f*t),就可以得到对应的寄存器CCR值。但是CCR值不能为负,所以要把sin(2*pi*f*t)变为
A*sin(2*pi*f*t)+B的形式,取A=B=0.5;那么计算公式为ARR*(0.5*sin(2*pi*f*t)+0.5),上传一个C++写的exe文件,可以帮助产生Duty[]数组.
http://download.csdn.net/detail/mjlsuccess/6205567 参考网站:http://blog.csdn.net/mjlsuccess/article/details/11019805
SPWM输出.rar
2015-7-23 19:24 上传
点击文件名下载附件
1.67 MB, 下载次数: 824
使用道具 举报
4
24
0
初级会员
10
147
本版积分规则 发表回复 回帖后跳转到最后一页
查看 »
正点原子公众号
|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )
GMT+8, 2025-11-22 02:22
Powered by OpenEdv-开源电子网
© 2001-2030 OpenEdv-开源电子网