zhyinch
2022-09-21 fb94d1fed6b33cdf6247ab4297f748d499c2b589
源码/核心板/Src/stm32f10x_it.c
@@ -37,10 +37,11 @@
uint16_t sysscal;
u16 tag_recv_timer, tag_timer,last_polltime;
extern uint16_t g_Resttimer,heartbeat_timer,sync_timer;
extern uint8_t g_pairstart;
extern uint8_t g_pairstart,getrange_success,dissucc_times;
u8 neartimout_timer=0,flag_syncbase=0,flag_newsecond=0;
extern u16 tyncpoll_time,target_time;
extern u16 tyncpoll_time,target_time,success_ancid;
extern uint32_t synclost_timer,current_syncid;
extern uint8_t usart_send_array[5][21],usart_array_num;
void TIM3_IRQHandler(void)   //TIM3??
{
   if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET)  //??TIM3????????
@@ -55,15 +56,23 @@
   //GPIO_WriteBit(GPIOA, GPIO_Pin_10, Bit_RESET);         
   if(sync_timer>=1000)
      {
//         if(getrange_success==0)
//         {
//            NVIC_SystemReset();
//         }
         flag_newsecond=1;
      //GPIO_WriteBit(GPIOA, GPIO_Pin_10, Bit_SET);   
         sync_timer=0;
            dissucc_times = 0;
            success_ancid = 0;
            USART_puts(usart_send_array[0],21*usart_array_num);
            usart_array_num = 0;
        TagListUpdate();
      }
      
   if(g_Resttimer++>2000)
   if(g_Resttimer++>10000)
   {
//      NVIC_SystemReset();
      NVIC_SystemReset();
   }
@@ -82,7 +91,7 @@
      }
      
      #ifdef USART_INTEGRATE_OUTPUT
      if(sync_timer==target_time)
      if(sync_timer%g_com_map[COM_INTERVAL]==0)
      {
         
         usart_send_flag=1;      
@@ -94,25 +103,31 @@
      }
      if(synclost_timer>SYNCLOST_TIME)
      {
         //flag_syncbase=1;
         flag_syncbase=1;
      }
      if(flag_syncbase)  //鏈ā鍧楁槸鍚屾鍩虹珯
      {
      if(sync_timer==995)
      {
         current_syncid = g_com_map[DEV_ID];
         sync_seq=0;
            SyncPoll(sync_seq,current_syncid);
      }
   }
//      if(flag_syncbase)  //鏈ā鍧楁槸鍚屾鍩虹珯
//      {
//      if(sync_timer==995)
//      {
//         current_syncid = g_com_map[DEV_ID];
//         sync_seq=0;
//            SyncPoll(sync_seq,current_syncid);
//      }
//   }
   }else{      //鏍囩鍚屾澶勭悊
      if(sync_timer==target_time)
      if(sync_timer%20==0)
      {
         last_polltime=sync_timer;
      //   last_polltime=sync_timer;
      //   GPIO_WriteBit(GPIOA, GPIO_Pin_9, Bit_SET);
      g_start_send_flag=1;
      }
//        if(sync_timer>900&&(dissucc_flag2&dissucc_flag2)==0)
//        {
//            if(sync_timer%10==0)
//            g_start_send_flag=1;
//        }
      
   }
@@ -155,4 +170,12 @@
//  }    
}
void HardFalut_Handler(void)
{
   while(1)
   {
      NVIC_SystemReset();
   }
}