From 108bcd0a691130a98c71970b150b1dbde6906d08 Mon Sep 17 00:00:00 2001
From: zhyinch <zhyinch@gmail.com>
Date: 星期五, 24 七月 2020 10:05:19 +0800
Subject: [PATCH] 修改串口index bug 增加MAP表注释

---
 源码/核心板/Src/application/dw_app.c |   23 +++++++++++++----------
 1 files changed, 13 insertions(+), 10 deletions(-)

diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c"
index 878310c..20d2622 100644
--- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c"
+++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c"
@@ -329,6 +329,7 @@
 extern uint16_t sync_timer;
 u16 tmp_time;
 extern float dw_vbat;
+extern u16 slottime,max_slotnum,current_slotpos,tyncpoll_time;
 void Tag_App(void)//发送模式(TAG标签)
 {
 	uint32_t frame_len;
@@ -493,10 +494,10 @@
 //	deca_sleep(10);
 }
 //	dwt_entersleep();
-//	if(tag_succ_times<g_com_map[MIN_REPORT_ANC_NUM])
-//	{
-//	//poll_timer +=time32_incr&0x7+3;
-//	}
+	if(tag_succ_times<1)
+	{
+		tyncpoll_time=(current_slotpos--%max_slotnum)*slottime;
+	}
 
 	/* Execute a delay between ranging exchanges. */
 	
@@ -506,11 +507,11 @@
 #define TDFILTER
 //#define CHECK_UID
 extern uint8_t UID_ERROR;
+u8 misdist_num[TAG_NUM_IN_SYS];
 void Anchor_App(void)
 {
 	uint32_t frame_len;
 	uint32_t resp_tx_time;
-	static u8 misdist_num;
 	/* Clear reception timeout to start next ranging process. */
 	dwt_setrxtimeout(0);//设定接收超时时间,0位没有超时时间
 
@@ -648,9 +649,10 @@
 					hex_dist = dist_cm+(int16_t)g_com_map[DIST_OFFSET]*10;
 					if(tag_id_recv-TAG_ID_START<=TAG_NUM_IN_SYS)
 					{
-					if(hex_dist-his_dist[tag_id_recv-TAG_ID_START]<15000||misdist_num>4)
-					{int32_t filter_dist;
-						misdist_num=0;
+					if(abs(hex_dist-his_dist[tag_id_recv-TAG_ID_START])<15000||misdist_num[tag_id_recv-TAG_ID_START]>4)
+					{
+						int32_t filter_dist;
+						misdist_num[tag_id_recv-TAG_ID_START]=0;
 					if(hex_dist<1000000&&hex_dist>-10000)
 					{		
 						#ifdef TDFILTER
@@ -685,8 +687,9 @@
 					//dis_after_filter = LP_Frac_Update(p_Dis_Filter, dist_cm);
 						}
 					
-					}else{
-						misdist_num++;
+					}
+					else{
+						misdist_num[tag_id_recv-TAG_ID_START]++;
 					}
 				}
 				}

--
Gitblit v1.9.3