其实我想要实现的功能很简单,就是想在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(); }
|