#include <msp430x44x.h>
int y;
void main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
TACTL=TASSEL1+TACLR+TAIE;//TBCTL=TBSSEL1+TBCLR+TBIE;
TACCR0=100;//TBCCR0=100;
TACTL|=MC0;//TBCTL|=MC0;
_EINT();
while(1);
}
#pragma vector=TIMERA1_VECTOR//#pragma vector=TIMERB1_VECTOR
__interrupt void w(void)
{
y=TAIV;// y=TBIV;
}
这段程序在IAR Embedded Workbench环境中软件仿真是可以进入中断的,但是仿此,将定时器A改为定时器B,即将上述程序中具有双斜杠的的语句,用双斜杠后面的语句代替前面的指令。仿真根本不进入中断。这是什么原因呢?
Shi JianHua:
回复 Bruce Wei:
再仔细看你的程序和数据手册吧,虽然定时器一样使用,但是并不是你想像的A换成B即可,好好看看。定时器我用的好几个都没问题。我用4xx做了好几个项目了。
Leon Yan:
回复 Shi JianHua:
你好:
看起来应该没什么问题,你进入仿真,然后看看TimerB的计数情况正常否。
谢谢。