From f224d649c2d62d0289f47ba704c7da3509647ff4 Mon Sep 17 00:00:00 2001
From: zhangbo <zhangbo@qq.com>
Date: 星期四, 17 四月 2025 14:26:19 +0800
Subject: [PATCH] 现在的UWB常开1s测距一次(和老免布线基站测距)功耗是95ma一秒上传一次数据

---
 keil/uwb_app.c |   60 +++++++++++++++---------------------------------------------
 1 files changed, 15 insertions(+), 45 deletions(-)

diff --git a/keil/uwb_app.c b/keil/uwb_app.c
index 2bc97a0..e05a79f 100644
--- a/keil/uwb_app.c
+++ b/keil/uwb_app.c
@@ -13,6 +13,9 @@
 #include "WS2812.h"
 #include "PCA9555.h"
 #include "GPS.h"
+
+
+#define UWB_TIME_INTERVAL 2
 extern int simple_main(void);
 extern int temp_main(void);
 void Calibration_Time(void);
@@ -143,7 +146,7 @@
     .phy_cfg.code_index = 9,                  /* TRX preamble code                         */
     .phy_cfg.mean_prf = MEAN_PRF_64M,         /* Mean prf 64/128/256M                      */
     .phy_cfg.data_bit_rate = DATA_BR_6M8,     /* Data rate 6.8M                            */
-    .phy_cfg.sync_sym = PREAM_LEN_128,        /* Preamble duration, length of preamble 128 */
+    .phy_cfg.sync_sym = PREAM_LEN_64,        /* Preamble duration, length of preamble 128 */
     .phy_cfg.sfd_sym = NON_STD_NSFD5_8,          /* Identifier for SFD sequence               */
     .phy_cfg.ranging_bit = 1,                 /* ranging bit set 1                         */
     .phy_cfg.trx_mode = TRX_MODE_15_4A,  /* IEEE802.15.4z - BPRF mode                 */
@@ -649,6 +652,7 @@
 }
 extern uint8_t heart_upload_time;
 uint16_t count_hexupload;
+extern uint8_t open_gps_time;
 void UWBSendUDPTask(void)
 {
 	uint16_t checksum,tempdistarray[20];
@@ -713,7 +717,7 @@
                     memcpy(&usart_send[17+taglist_num*4],&anchordata_bat,taglist_num);
 					checksum = Checksum_u16(&usart_send[2],15+5*taglist_num);
 					memcpy(&usart_send[17+5*taglist_num],&checksum,2);
-				  if(lounei_flag==0&&heart_upload_time%UPLOAD_4G_TIME==0)
+					if((heart_upload_time%UPLOAD_4G_TIME==0&&lounei_flag==0&&open_gps_time>120)||(open_gps_time%UPLOAD_4G_TIME==0&&lounei_flag==0&&open_gps_time<120))
 		      {
 					 HexToAsciiSendUDP(usart_send,19+5*taglist_num);
 					 count_hexupload++;
@@ -748,53 +752,19 @@
 //}
 //enumwltagstate wltag_state=RANGE;
 uint32_t wltag_statetimer,wltag_uwbtimer;
+extern uint16_t uwb_time_count;
 int uwb_app_poll(void)
 {
-	switch(wltag_state)
-	{
-		
-	case RANGE:
-//	time_flag=HIDO_TimerGetTick()-wltag_uwbtimer;
-	if(HIDO_TimerGetTick()-wltag_uwbtimer>4&&uwb_rx_flag==0)
-		{ 
-			wltag_uwbtimer = HIDO_TimerGetTick();
-			OpenUWB();
-				
-		}
-		else if(HIDO_TimerGetTick()-wltag_uwbtimer>1&&uwb_rx_flag==1)
+	switch(uwb_time_count)
 		{
-//			time_flag=HIDO_TimerGetTick()-wltag_uwbtimer;
-		 wltag_uwbtimer = HIDO_TimerGetTick();
-		 CloseUWB();
+			case 1:
+//						CloseUWB();
+			break;		
+			case UWB_TIME_INTERVAL:
+						OpenUWB();
+						uwb_time_count=0;
+			break;
 		}
-		if(uwb_losttimer>g_com_map[UWB_RNAGE_TIME])
-		{ 
-		 wltag_statetimer = HIDO_TimerGetTick();
-			if(uwb_rx_flag==0)//若要切换到搜索模式时没有开启则开启UWB
-			{
-				OpenUWB();
-			}
-     wltag_state = SEARCH;
-		}
-		break;
-	case SEARCH:
-		if(HIDO_TimerGetTick()-wltag_statetimer>1)
-		{
-			wltag_statetimer = HIDO_TimerGetTick();
-			wltag_state = CLOSE;
-			CloseUWB();
-
-		}
-		break;
-	case CLOSE:
-		if(HIDO_TimerGetTick()-wltag_statetimer>g_com_map[UWB_WAIT_TIME])
-		{
-			wltag_statetimer = HIDO_TimerGetTick();
-			wltag_state = SEARCH;
-			OpenUWB();		
-		}
-		break;
-	}
 	 UWBIdleTask();
 }
 uint8_t in_the_room_flag=0;

--
Gitblit v1.9.3