打印

程序 pwm 控制灯亮度为啥不好使

[复制链接]
975|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhanghqi|  楼主 | 2014-8-23 17:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include "msp430g2553.h"
void main( void )
{
WDTCTL = WDTPW + WDTHOLD; //关看门狗
TACTL=TASSEL_1+TACLR+MC_1; //ACLK为时钟源,清TAR,增计数模式
TACCR0=512-1; //设定PWM周期
TACCTL1=OUTMOD_7; //CCR1输出为reset/set模式
TACCR1=55584; //CCR1的PWM占空比设定
TACCTL2=OUTMOD_7; //CCR2输出为reset/set模式
TACCR2=28; //CCR2的PWM占空比设定
P1DIR|=BIT0 + BIT6; //P1.2、P1.3输出,对应TA1,TA2
P1SEL|=BIT0 + BIT6; //TA1,TA2输出功能
while(1);
}

相关帖子

沙发
jlyuan| | 2014-8-23 17:28 | 只看该作者
TACCR1=55584; //CCR1的PWM占空比设定
55584太大了

使用特权

评论回复
板凳
dengdc| | 2014-8-23 17:29 | 只看该作者
给你个例程,这个我用过 没有问题
#include
void main(void)
{
WDTCTL =WDTPW+ WDTHOLD; //停止看门狗定时器
P1DIR |= 0x0C; //设P1.2 和P1.3 为输出
P1SEL |= 0x0C; //设P1.2 和P1.3 TA1/2 为模块功能
CCR0 = 512-1; //装入PWM 周期值
CCTL1 = OUTMOD_7; //设CCR1输出单元为复位/置位输出模式
CCR1 = 384; //装入CCR1 PWM的占空值
CCTL2 = OUTMOD_7; //设CCR2输出单元为复位/置位输出模式
CCR2 = 128; //装入CCR2 PWM 的占空值
TACTL = TASSEL_1 + MC_1; //时钟源选择ACLK, 定时器A 增计数模式
_BIS_SR(LPM3_bits); //进入LPM3 低功耗模式
}

使用特权

评论回复
地板
lizye| | 2014-8-23 17:30 | 只看该作者
楼上正解

使用特权

评论回复
5
zhanghqi|  楼主 | 2014-8-23 17:31 | 只看该作者
哦,我看看

使用特权

评论回复
6
zhanghqi|  楼主 | 2014-8-23 17:31 | 只看该作者
那就结贴了啊

使用特权

评论回复
7
comeon201208| | 2014-8-23 22:51 | 只看该作者
注意占空比的啊,这个是很重要的么。。

使用特权

评论回复
8
zh113214| | 2014-8-25 23:01 | 只看该作者
2楼正解,3楼的也对、、

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

852

主题

11757

帖子

5

粉丝