From aff8025d714cd2f3c7be9687d9eff959e1f181d5 Mon Sep 17 00:00:00 2001
From: yincheng.zhong <634916154@qq.com>
Date: 星期四, 12 十月 2023 15:00:55 +0800
Subject: [PATCH] V2.57

---
 Src/application/dw_app.c |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/Src/application/dw_app.c b/Src/application/dw_app.c
index 25cd71a..757ef51 100644
--- a/Src/application/dw_app.c
+++ b/Src/application/dw_app.c
@@ -78,7 +78,7 @@
 	DISCPOLL,
 	GETNEARMSG,
 	NEARPOLL,
-    SINGLEPOLL,
+  SINGLEPOLL,
 }tag_state=STARTPOLL;
 static dwt_config_t config = {
 	2,               /* Channel number. */
@@ -847,6 +847,7 @@
     
     }
 }
+u32 last_mindist_slavebaseid;
 void NearPoll(void)
 {
 	
@@ -998,8 +999,8 @@
 									mainbase_dist=temp_dist;
                                     nearbase_distlist[0] = temp_dist;
                                     base_mindist = temp_dist;
-									if((rx_buffer[MOTORSTATE_INDEX]&0xf)!=3)
-										motor_state=rx_buffer[MOTORSTATE_INDEX]&0xf;
+//									if((rx_buffer[MOTORSTATE_INDEX]&0xf)!=3)
+//										motor_state=rx_buffer[MOTORSTATE_INDEX]&0xf;
                                     if(frame_len==38)
                                      {
                                          memcpy(&rec_maxrangelen,&rx_buffer[MAXRANGE_DISTANCE],2);
@@ -1094,7 +1095,9 @@
 				#ifdef SWITCHBASE_DIST
 				if(salvebase_mindist<mainbase_dist- THRESHOLD_CHANGE_MAINBASE_DIST )
 				{
-					changemainbase_count++;
+					if(mindist_slavebaseid==last_mindist_slavebaseid)
+					{
+						changemainbase_count++;
 					if(changemainbase_count>2)
 					{
                         changemainbase_count = 0;
@@ -1102,6 +1105,10 @@
                         tag_state = GETNEARMSG;                    
                         trygetnearmsg_times = 0;
                         GetNearMsg();
+					}}
+					else{
+						changemainbase_count = 1;
+						last_mindist_slavebaseid = mindist_slavebaseid;
 					}
 				}else{
 					changemainbase_count = 0;

--
Gitblit v1.9.3