430G2553 lunchpad
*****************************************程序*************************
#include <msp430g2553.h>
void main(void)
{
WDTCTL = WDTPW + WDTHOLD ;
BCSCTL1 &= ~XT2OFF; //基础时钟控制寄存器第七位置0,使XT2启动
BCSCTL2 = SELS + DIVS1 +DIVS0; //基础时钟控制寄存器BCSCTL2设置,第三位置1,选择XT2CLK作为SMCLK时钟,将第二位和第一位置1,使分频比为8
TACTL = 0x01D3; //定时器A控制寄存器设置,第二位置1:清除;第4、5位置1、0,加计数模式,加计数至CCCR0,然后重新开始;第6、7位置1、1,所以是8分频,第8、 9位置1、0,所以TA使用SMCLK时钟
CCTL0 = CCIE; //使能中断,CCIE=0x0010 0000 0000 0001 0000 CCIE位置1.中断允许
CCR0 = 62500; //8MHz/0.5s
P1DIR |= 0xff;
_EINT(); //开总中断
while (1);
}
#pragma vector = tiMER0_A0_VECTOR //固定的定时器中断函数格式
__interrupt void Timer0_A0 (void) //固定的定时器中断函数格式
{
P1OUT ^=BIT6 ;
}
*******************************************************************************
有没有熟悉定时器A中断过程的同学,教我一下:程序中的中断函数没有被执行,是什么原因?
PS:积分奖励没多少,希望别嫌弃,23333333333
一周热门 更多>