其实我想要实现的功能很简单,就是想在P1。输出一路方波,但是老是不正确,贴个代码,给大家看看有什么问题。板子是5438的。#include "msp430x54x.h"//声明库文件
void TAPWM(void)
{
//引脚设置(暂时使用P1.2输出一路PWM)
P1SEL |= BIT2; //TA1从P1.2输出
P1DIR |= BIT2; //TA1从P1.2输出
//P2SEL |= BIT0; //TA2从P1.2输出
//P2DIR |= BIT0; //TA2从P1.2输出
TA0CTL |= MC_1+TASSEL_1+TACLR; //时钟源选择ACLK,增计数模式 TA设置
TA0CCTL1 = OUTMOD_7; //模式7 高电平PWM输出 PWM设置
//TACCTL2 = OUTMOD_7; //模式7 高电平PWM输出
TA0CCR0 = 32; //PWM总周期=32个ACLK周期 约等于1000Hz 设置PWM的周期
TA0CCR1 = 16; //TA1 占空比= 16/32=50% 设置占空比
//TACCR2 = 16; //TA2 占空比= 16/32=50%
}
void main(void)
{ WDTCTL = WDTPW + WDTHOLD; //关看门狗
P1DIR=0;
P1SEL=0;
P1DIR |=BIT0;
TAPWM();
}
此帖出自
小平头技术问答
一周热门 更多>