STM8s003f3p6 TIM4定时器 一直进不了中断 求助 在线等哈

2019-07-19 20:23发布

下面 是例程    请各位大侠  帮忙看看什么问题哈

unsigned int  count1=0,count2=0,count7=0;

int  stage=0 ;

void  TIM4_Init ( void )
{
    TIM4_PSCR = 0x06 ;    //主时钟分频2~6   定时器时钟  125khz


    TIM4_SR = 0 ;            //中断标志位清零

    TIM4_IER_bit.TIE = 1 ;    //开定时器中断

    TIM4_ARR  = 125 ;     //一个技术周期1ms  

    TIM4_CR1=0x01;       //使能计数器

    TIM4_CNTR = 125 ;     //计数器初始值给125,目的是一开始
                          //计数就产生一次溢出从而产生更新
                          //时间来使预分频器的值启用            
}

#pragma vector=TIM4_OVR_UIF_vector
__interrupt void  TIM4_UPD_OVF_IRQHandler(void)
{
  count1++;  
   TIM4_SR = 0 ;    //中断标志位清零   
   if (count1==1000)
   {
      count7++;
      count1 =0;
      if(count7==60)
      {     
          count2++;
          count7=0;

          if (count2<30)        //第一阶段预充电 20A充电30分钟
          {
             stage=1;
          }

          if (30<count2<450)       //第二阶段恒流充电 30A充电7小时
          {
             stage=2;  
          }

          if (450<count2<570)       //第三阶段恒压充电  2小时 电流逐渐下降到6A
          {
             stage=3;         
          }

          if (570<count2<690)       //浮充电2小时后关机
          {
           stage=4;

          }
      }   
   }  

}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。