MSP430149 TACCR2比较匹配中断产生1008HZ方波始终不对?
想在MSP430F149P1.3管脚输出1008hz 方波,可是怎么配置TACCR2,引脚一直输出周期1S的方波不知道问题出哪?void main (void)
{
uchar i;
WDTCTL = WDTPW + WDTHOLD;
BCSCTL1 &= ~XT2OFF; // XT2振荡器开启
do
{
IFG1 &= ~OFIFG; // 清除振荡器失效标志
for(i = 0xff; i>0;i--); // 稳定时间
}
while((IFG1&OFIFG) != 0);// 如果振荡器失效标志存在
BCSCTL2|=SELM_2|DIVM_3|SELS|DIVS_3; // MCLK=XT2/2分频=4M,SMCLK=XT2/8分频=1M
TACTL =TASSEL_2+TACLR+ID_3; // TA时钟=SMCLK/8=125KHZ,清除TAR
TACCTL2 |= OUTMOD_4;
TACCR2 = 62;
TACCTL2 |=CCIE; // 允许中断
P1DIR|= BIT3;
P1SEL|= BIT3;
TACTL|=MC_2; //连续计数 模式
_EINT(); //使能总中断
while(1)
{
}
}
#pragma vector=TIMERA1_VECTOR
__interrupt void Timer_A1 (void)
{
if(TAIV==2)
{
}
else if(TAIV==4)// CCR2中断
{
TACCR2+= 62;
}
}
页:
[1]