[求助] 关于stm8 tim2的问题

d907814868   2015-6-3 14:08 楼主
我用tim2进行的按键扫描程序,但是一开中断整个程序就没反应。


void TIM2_configuration(void)

{

  TIM2_DeInit();//TIM2初始化

  TIM2_TimeBaseInit(TIM2_PRESCALER_2,10000);//配置TIM2内部时钟基准,定时10ms

  TIM2_ITConfig(TIM2_IT_UPDATE,ENABLE);//设置TIM2中断,更新

  TIM2_Cmd(ENABLE);//开启TIM2使能

}





/*中断函数*/



#pragma vector=15__interrupt

void TIMER2_IRQHander(void)

{



  Key_Value=keyscan();



TIM2_ClearITPendingBit(TIM2_IT_UPDATE);

}


这个设置哪个地方错了??

回复评论 (6)

是不是键盘扫描不用tim2定时中断???????????????????
点赞  2015-6-3 14:23
现在的问题是主要只要有enableInterrupts();这个函数,整个函数就无法运行,但没这个函数怎么进中断啊。
点赞  2015-6-3 14:32
说明你的中断没清除成功,一直在进入中断。你试一下用这句:TIM2->SR1 = 0x00;
点赞  2015-6-3 15:05
引用: Aragorn 发表于 2015-6-3 15:05
说明你的中断没清除成功,一直在进入中断。你试一下用这句:TIM2->SR1 = 0x00;

还是不管用,不知道是STVD的原因,之前用的IAR就没问题。
点赞  2015-6-3 15:41
TIM2_configuration,这个函数中,应该先开启TIM2使能,再去设置tim2中断吧?
点赞  2015-6-8 16:50

7楼 wfx 

点赞  2015-9-23 09:58
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复