工具/软件:Code Composer Studio
大家好,我的代码有问题,如下所示。
我想这样做:
如果我按下开关、LED 闪烁频率将降低。 当我反复推它时、它也会随着推动而减小。
我使用中断和计时器 A 来实现它。
当我运行时、它反复闪烁、但没有改变频率。
我应该在哪里解决??
void main (void){
_bis_SR_register (GIE);//中断
while (1)
{
P1OUT ^= BIT7;//LED 切换
if (button_cnt=0)
_DELAY_CYCLES (1000);
否则、如果(button_cnt=1)
_DELAY_CYCLES (100000);
}
}
//计时器中断服务例程
#pragma vector=TIMER0_A0_VECTOR
_interrupt void TIMER0_A0_ISR (void)
{
CNT++;
if (cnt > 1000){
CNT = 0;
P1OUT ^= BIT0;
}
}
#pragma vector=Port1_vector
_interrupt void Port_1 (void)
{
button_cnt++;
button_cnt = button_cnt %4;
P1IFG &=~BIT4;//IFG 被清零
}