如何通过ISR停止破坏全局变量?

时间:2014-04-21 07:01:46

标签: variables global-variables isr

volatile UINT16 count = 0;

void triggerTimer( UINT16 pulse_count){

count = pulse_count;
P1DIR |=BIT1;
P1OUT &= ~BIT1;
}

#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A(void)
{
 count--;
 P1OUT ^=BIT1;

}

在执行上述程序时,计数值有时为655336,而不是正确的值,因此Bit1不是toggeling,它保持LOW或HIGH

这是什么原因?我想将BIT切换特定次数

0 个答案:

没有答案