Src/application/dw_app.c
@@ -68,8 +68,12 @@
#define FINAL_MSG_RESP_RX_TS_IDX 14
#define FINAL_MSG_FINAL_TX_TS_IDX 18
#define FINAL_MSG_TS_LEN 4
#define STARTPOLL  REGPOLL//#define SWITCHBASE_DIST
#define SUIJI_SHIJIANPIAN
#ifdef   SUIJI_SHIJIANPIAN
#define STARTPOLL  DISCPOLL//#define SWITCHBASE_DIST
#else
#define STARTPOLL  REGPOLL
#endif
#define SWITCHBASE_ZHUANDIAN
#define SWITCHBASE_DIST
enum enumtagstate
@@ -226,7 +230,7 @@
}
u16 tag_time_recv[TAG_NUM_IN_SYS];
u8 usart_send[25];
u8 usart_send[250];
u8 battary,button;
extern uint8_t g_pairstart;
void tag_sleep_configuraion(void)
@@ -775,6 +779,8 @@
}
void SendHuiZongData(void)
{
   usart_send[0] = 0x55;
   usart_send[1] = 0xaa;
                usart_send[2] = 0x0c;//正常模式 
               usart_send[3] = 15+8*(nearbase_num+1);//数据段长度
               memcpy(&usart_send[4],&dev_id,2);
@@ -843,12 +849,18 @@
#else
               clockOffsetRatio = anc_clockoffset[i] * (FREQ_OFFSET_MULTIPLIER * HERTZ_TO_PPM_MULTIPLIER_CHAN_5 / 1.0e6) ;
#endif
          rtd_init = tag_resprx[i] - poll_tx_ts;
          rtd_init = tag_resprx[i] - poll_tx_ts&0xffffffff;
          rtd_resp = anc_resptx[i] - anc_pollrx[i];
          tof = ((rtd_init - rtd_resp * (1 - clockOffsetRatio)) / 2.0) * DWT_TIME_UNITS;
          distance = tof * SPEED_OF_LIGHT;
          if(distance>-10&&distance<1000)
               {
            nearbase_distlist[i] = distance*100+anc_distoffset[i];
//                  if(nearbase_distlist[i]>4000)
//                  {
//                     nearbase_distlist[i] = 4100;
//                  }
               }
      }else{
                  nearbase_distlist[i] = 0x1ffff;
      }
@@ -1180,7 +1192,7 @@
                           nearbaseid_list0[i]=1;
                }
         }
        //    SendHuiZongData();
            SendHuiZongData();
   dwt_write32bitreg(SYS_STATUS_ID, SYS_STATUS_ALL_RX_ERR| SYS_STATUS_TXFRS |SYS_STATUS_RXFCG);
//HAL_GPIO_WritePin(LED0_GPIO, GPIO_PIN_9, GPIO_PIN_RESET);
@@ -1304,6 +1316,10 @@
      case DISCPOLL:
         LED_LG_ON;      
         DiscPoll();
#ifdef   SUIJI_SHIJIANPIAN
         if(tagslotpos--<2)
            tagslotpos=bigslot_num;
#endif
         LED_LG_OFF;
         break;
      case GETNEARMSG: