搜索
bottom↓
回复: 12

高手帮忙解决msp430f1132单片机PWM可变占空比问题

[复制链接]

出0入0汤圆

发表于 2012-2-28 16:33:02 | 显示全部楼层 |阅读模式
我用msp430f1132 编了个程序,主要功能是用TimerA产生PWM波,周期由CCR0决定,CCR1定占空比。AD一直开着根据采到的值来定占空比。等于说我的占空比是实时变的。 CCR1 = D;这语句我放在AD中断中试过,也放在TimerA的中断中试过。都始终有个问题,就是PWM的脉冲偶然的一下会变全高,或者是PWM电平变低后又马上变高了。见附图。  程序我也附上。

点击此处下载 ourdev_722925OK9D40.zip(文件大小:25K) (原文件名:all in one.zip)

(原文件名:test-2.PNG)


(原文件名:test3.PNG)

出0入0汤圆

发表于 2012-2-28 16:39:19 | 显示全部楼层
正在工作的时候,改变值, 应该会影响输出。
常规的做法时先停止,再设置。

出0入0汤圆

发表于 2012-2-28 18:41:46 | 显示全部楼层
是不是想输出类似SPWM的波?我也曾遇到过这现象,仔细看看比较匹配的值有没有想互跨越

出0入0汤圆

发表于 2012-2-28 18:52:16 | 显示全部楼层
回复【楼主位】lzloong  
-----------------------------------------------------------------------
在全局变量D声明前加volatile试试

出0入0汤圆

 楼主| 发表于 2012-2-28 21:55:36 | 显示全部楼层
回复【3楼】hdd961140543  阿逸
-----------------------------------------------------------------------

D前加了volatile还是原来那样。

出0入0汤圆

 楼主| 发表于 2012-2-28 21:59:58 | 显示全部楼层
回复【1楼】KongQuan  
-----------------------------------------------------------------------

这方法我曾经试过,在TimerA的中断中将 TimerA暂停,赋值后继续计数。但问题依旧存在。

出0入0汤圆

 楼主| 发表于 2012-2-28 22:10:58 | 显示全部楼层
回复【2楼】huhandong  
-----------------------------------------------------------------------
能否具体说明下?我有个疑问就是,产生TimerA中断的时候,进入中断可能需要好几个clk,这个过程中TimerA却依旧工作的,不知道这是不是一个问题? 另外如果我不用TimerA的中断,在AD采集的中断中赋值为什么还是有问题?  谢谢~

出0入0汤圆

发表于 2012-2-29 00:23:52 | 显示全部楼层
CCR1没有影子寄存器,如果新赋的值比当前的计数值小,该周期无法产生PWM比较匹配,PWM电平就无法翻转,只能维持高电平直到下一周期产生比较匹配。
相反地,如果该周期已经发生比较匹配(当前计数值大于旧的CCR1值),而新赋的CCR1值比当前的计数值大,还会发生重复比较,即同一周期内出现两次脉冲。


目前想不到好的解决方案。

出0入0汤圆

 楼主| 发表于 2012-2-29 13:10:15 | 显示全部楼层
回复【7楼】mitchell  
-----------------------------------------------------------------------

那请问下,这个问题是大部分单片机都有的,还是430有? PIC或瑞萨的有嘛?我觉得实时改变 脉宽是个很常规的问题,碰到这种都用DSP28**? 我只知道好像28系列的有影子寄存器,上课的时候好像听老师说过。

出0入0汤圆

发表于 2012-2-29 16:11:18 | 显示全部楼层
回复【8楼】lzloong  
-----------------------------------------------------------------------

大部分都有这个问题,部分专门PWM用途没有问题:AVR的90PWM系列没有问题,TI的DSP没有问题,ST7也没有问题。
头像被屏蔽

出0入0汤圆

发表于 2012-4-3 09:10:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2012-9-26 14:53:05 | 显示全部楼层
哈,我也遇到同样的问题了,看了是通病啊!

出0入0汤圆

发表于 2013-10-13 12:11:36 | 显示全部楼层
能不能发你的msp430f1132的电路图我看看,我是学生,刚申请几个片子,不知道怎么用,想想打出来电路图。谢谢哈,645008699@qq.com
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-10 15:18

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表