请问哪位写过mspf149产生spwm波的,求共享一下程序哈!
如题啦!想写写spwm产生正弦波的程序!但是没经验!有经验的可以交流交流……点击此处下载 ourdev_662183HOHPY2.rar(文件大小:25K) (原文件名:SPWM.rar) 回复【楼主位】yuan90826
-----------------------------------------------------------------------
自己顶顶……
再顶顶 用定时器就可以搞定了 希望这个能帮助你点击此处下载 ourdev_665581WQZR9J.txt(文件大小:2K) (原文件名:SPWM.txt) 回复【3楼】jsgbmi
-----------------------------------------------------------------------
回复【3楼】jsgbmi
用定时器就可以搞定了 希望这个能帮助你点击此处下载(原文件名:spwm.txt)
-----------------------------------------------------------------------
这不是我写得嘛……晕 回复【4楼】yuan90826
-----------------------------------------------------------------------
哈哈哈~~~ TACTL=TASSEL0+TACLR;
CCR0=511;
CCR1=500;
CCR2=500;
CCTL1=OUTMOD_7;
CCTL2=OUTMOD_7; 输出的相位可控制的吗? 楼主的程序如果用示波器观察一下就会发现每个周期都会产生一个明显的"毛刺",理论上来说MSP430通过中断的方式是无法产生精确的正弦PWM,中断开始到返回需要的CPU时间会在过零点附近产生比较明显的误差。 回复【8楼】flute2k3
-----------------------------------------------------------------------
你好 我之前编过PWM的程序, 脉宽根据采集的值,实时变化。 你说的毛刺是下面这样的吗?
http://cache.amobbs.com/bbs_upload782111/files_51/ourdev_714491M1IZJE.JPG
(原文件名:PWM-2.JPG) 回复【9楼】lzloong
回复【8楼】flute2k3
-----------------------------------------------------------------------
你好 我之前编过pwm的程序, 脉宽根据采集的值,实时变化。 你说的毛刺是下面这样的吗?
(原文件名:pwm-2.jpg)
引用图片
-----------------------------------------------------------------------
不是您图上的毛刺,主要是针对楼主的程序,主要是在交流零点附近。
毛刺产生的原因是中断过程中,CCR0仍在计数,本来只需要1个或2个单位的脉冲,实际产生N个单位的脉冲。
如果每一次中断都清一次计数器可以消除毛刺,但此时的PWM的频率已不再固定。
对于普通应用无所谓,对于严格要求精度或者严格要求正弦波质量的场合,不得不引起特别的注意。 {:smile:}{:smile:}{:smile:}{:smile:}这一方面,,,没有人关注。。 flute2k3 发表于 2012-1-27 13:43 static/image/common/back.gif
回复【9楼】lzloong
回复【8楼】flute2k3
--------------------------------------------------------- ...
看了下楼主的程序,选择的方式是MC_1,也就是增长模式。同时也查询了一下430 user's guide,应该是当计数值到达CCR0后立刻产生中断,同时计数器复位到0开始计数,而并不是继续在计数。 TI给的例程里面很多的产生PWM波形的方式 额额 我也不知道的楼主的代码能用不 我怎么显示不了 wenzhizhao 发表于 2012-7-13 13:45 static/image/common/back.gif
看了下楼主的程序,选择的方式是MC_1,也就是增长模式。同时也查询了一下430 user's guide,应该是当计数 ...
我说的是中断从产生到返回需要额外的机器周期不由您的程序控制。
页:
[1]