void Init_Timer_A(void) //初始化定时器
{
TACTL = TASSEL_2 + TACLR + ID1 + ID0; // MCLK, upmode 8 分频
TACCR0 = 65535; //定时 33ms
}
MCLK是8MHZ
我想利用msp430定时器,每隔2ms产生一个中断就行,不知道如何设置初值...
CCTL0=CCIE;CCR0=20000;TACTL=TASSEL_2+TACLR+MC_1+ID_3;_EINT();设置msp430主频为8MHz,定时器使用MCLK,8分频,然后设置以上即可。你的情况可以在 pragma vector = TIMERA0_VECTOR __interrupt void Timer_A(void){ flag=1;} 中设置控制位,在主程序中设置循环。比如主程序中加入 while(1...
MSP430单片机两位数码管程序?
uint c;uchar b;void delay(uint x);void main(){ \/\/uint i;WDTCTL = WDTPW + WDTHOLD;\/\/ Stop watchdog timer to prevent time out reset P1DIR=0Xff;P2DIR=0xff;TACTL=TASSEL0+TACLR;\/\/定时器A采样方式0,TASSEL0=0x0100,选取子时钟,然后定时器清零 CCTL0=CCIE;\/\/中断使能端 CCR0=...