zhyinch
2020-04-14 1964c9f6c990dde20db364b687275d8d50416ff4
源码/核心板/Src/stm32f10x_it.c
@@ -32,32 +32,34 @@
/* Tick timer count. */
volatile uint32_t time32_incr;
uint8_t tt=0;
uint8_t g_start_send_flag = 0,sync_seq=0;
uint8_t g_start_send_flag = 0,sync_seq=0,usart_timer=0;
uint16_t sysscal;
u16 tag_recv_timer, tag_timer;
extern uint16_t g_Resttimer,heartbeat_timer,sync_timer;
extern uint8_t g_pairstart;
u16 timer3;
extern u16 tyncpoll_time;
u8 neartimout_timer=0;
extern u16 tyncpoll_time, checksum;;
extern u8 anc_report_num;
void TIM3_IRQHandler(void)   //TIM3??
{
   if (TIM_GetITStatus(TIM3, TIM_IT_Update) != RESET)  //??TIM3????????
      {
      TIM_ClearITPendingBit(TIM3, TIM_IT_Update  );  //??TIMx?????? 
          time32_incr++;
   g_UWB_com_interval++;
   time32_incr++;
   heartbeat_timer++;
   poll_timer++;
   if(tag_timer++>=g_com_map[COM_INTERVAL])
   {tag_timer=0;}
   sync_timer++;
   neartimout_timer++;
   if(sync_timer>=1010)
      {sync_timer=0;}
   if(g_Resttimer++>2000)
   {
      NVIC_SystemReset();
      //NVIC_SystemReset();
   }
   sync_timer++;
   
   if(!g_com_map[DEV_ROLE])  //鍩虹珯
   {
@@ -65,33 +67,32 @@
      TagDistClear();
      if(g_com_map[ALARM_DEV]!=0)
         main_logic();
      if(sync_timer==10)
      #ifdef USART_INTEGRATE_OUTPUT
      if(usart_timer++>g_com_map[COM_INTERVAL])
      {
         GPIO_WriteBit(GPIOA, GPIO_Pin_9, Bit_SET);
      }else{
         GPIO_WriteBit(GPIOA, GPIO_Pin_9, Bit_RESET);
         usart_timer=0;
         usart_send[2] = anc_report_num;//姝e父妯″紡
            checksum = Checksum_u16(&usart_send[2],anc_report_num*6+1);
            memcpy(&usart_send[3+anc_report_num*6],&checksum,2);
            UART_PushFrame(usart_send,5+anc_report_num*6);
anc_report_num=0;
      }
      #endif
      if(sync_timer>500&&dev_id!=0)
      {
       sync_seq=0xff;
      }
      if(sync_timer>=1010)
   {
      sync_timer=0;
      if(dev_id==0)
      if(sync_timer==0)
      {
         SyncPoll(0);
         TagListUpdate();
         if(dev_id==0)
            SyncPoll(0);
      }
   }
   }else{      //鏍囩鍚屾澶勭悊
      if(sync_timer>=1010)
      {sync_timer=0;}
            if((sync_timer-10)%g_com_map[COM_INTERVAL]==tyncpoll_time)
      if((sync_timer-10)%g_com_map[COM_INTERVAL]==tyncpoll_time&&sync_timer>=10)
      {
         GPIO_WriteBit(GPIOA, GPIO_Pin_9, Bit_SET);
      }
      if((sync_timer-10)%g_com_map[COM_INTERVAL]==tyncpoll_time)
      {
      g_start_send_flag=1;
      }