From 5f59088ed121193c358b0c2b95961b66593b79e5 Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期五, 25 七月 2025 18:02:04 +0800
Subject: [PATCH] 修复偶尔mk测距不了的bug

---
 keil/include/src/Radio/lora_1268.c |   52 ++++++++++++++++++++++++++++++++--------------------
 1 files changed, 32 insertions(+), 20 deletions(-)

diff --git a/keil/include/src/Radio/lora_1268.c b/keil/include/src/Radio/lora_1268.c
index 38c28fd..bd22c2e 100644
--- a/keil/include/src/Radio/lora_1268.c
+++ b/keil/include/src/Radio/lora_1268.c
@@ -187,6 +187,7 @@
 extern uint8_t SOS_KEY_STATE;
 uint32_t LORA_POLL_COUNT=0;
 uint8_t test1,test2;
+extern int poll_rx_num;
 #define GET_USERKEY gpio_pin_get_val(SOS_PIN)
 void LoraReportPoll(void)
 {
@@ -206,14 +207,14 @@
 	//LOG_INFO(TRACE_MODULE_APP," 切换2\r\n");
 	//test1++;
 //	LOG_INFO(TRACE_MODULE_APP," 切换9\r\n");
-    //SwitchLoraSettings(wg_report_freq,REPORT_CHANNEL_SF,22);
-	SwitchLoraSettings(478,7,22);
-//    if(heatbeat_count++>HEATBEAT_UPDATE_TIME && WG_Connected == wg_state) //如果心跳包到达上传时间,并且网关处于链接状态,就上传心跳包
-//    {
-//        heatbeat_count = 0;
-//        LoraHeartBeartPoll();
-//        return;
-//    }
+    SwitchLoraSettings(wg_report_freq,REPORT_CHANNEL_SF,22);
+	//SwitchLoraSettings(478,7,22);
+    if(heatbeat_count++>HEATBEAT_UPDATE_TIME && WG_Connected == wg_state) //如果心跳包到达上传时间,并且网关处于链接状态,就上传心跳包
+    {
+        heatbeat_count = 0;
+        LoraHeartBeartPoll();
+        return;
+    }
     for(uint16_t i=0; i<report_ancnum-1; i++)
     {
         for(uint16_t j=0; j<report_ancnum-1-i; j++)
@@ -264,8 +265,16 @@
 	//	test2++;   num
 //	LOG_INFO(TRACE_MODULE_APP," 切换8\r\n");
 	//SwitchLoraSettings(wg_report_freq,REPORT_CHANNEL_SF,22);
-   // Radio.Send(lora_sendbuffer,ANCID_IDX+report_ancnum*4+2);
-   Radio.Send(num,3);
+    Radio.Send(lora_sendbuffer,ANCID_IDX+report_ancnum*4+2);
+		LOG_INFO(TRACE_MODULE_APP," 数量%d\r\n",poll_rx_num);
+		if(poll_rx_num==0)
+		{
+		CloseUWB();
+		Uwb_init();//默认为我们测距配置
+		OpenUWB();
+		}
+		poll_rx_num=0;
+   //Radio.Send(num,3);
 
 }
 
@@ -536,6 +545,7 @@
 
   return (crc&0xffffu);
 }
+
 void LoraUp_Poll()
 {    uint16_t  result ;
     uint16_t crc16;
@@ -551,9 +561,10 @@
     huifushengjibao_flag=0;
     LoraUp_flag=1;
     Radio.Send(send_lora_data,8);//基站发送升级确认回复
+			
     delay_ms(1000); 
-LOG_INFO(TRACE_MODULE_APP," 切换7\r\n");			
-   // SwitchLoraSettings(LORA_UPCHANNEL_FRQ,LORA_UPCHANNEL_SF,22); //切换lora升级频点  
+//LOG_INFO(TRACE_MODULE_APP," 切换7\r\n");			
+    SwitchLoraSettings(LORA_UPCHANNEL_FRQ,LORA_UPCHANNEL_SF,22); //切换lora升级频点  
     delay_ms(200);   
     __disable_irq();
 //    FLASH_Read(APP_1OR2_ADRESS,(uint8_t*)&app1_or_app2,2);        
@@ -813,8 +824,9 @@
     if(!no_rx_flag)
     {
         if(lora_jianting_flag&&LoraUp_flag==0)
-        {	LOG_INFO(TRACE_MODULE_APP," 切换2\r\n");
-//            SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
+        {	
+					//LOG_INFO(TRACE_MODULE_APP," 切换2\r\n");
+            SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
             Radio.Rx(0);
         }
     }
@@ -826,8 +838,8 @@
     Radio.Standby();
     if(lora_jianting_flag)
     {
-			LOG_INFO(TRACE_MODULE_APP," 切换3\r\n");
-       // SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
+//			LOG_INFO(TRACE_MODULE_APP," 切换3\r\n");
+        SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
         Radio.Rx(0);
     }
 }
@@ -838,8 +850,8 @@
 	
     if(lora_jianting_flag)
     {
-			LOG_INFO(TRACE_MODULE_APP," 切换4\r\n");
-//        SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
+			//LOG_INFO(TRACE_MODULE_APP," 切换4\r\n");
+        SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
         Radio.Rx(0);
     }
 }
@@ -851,8 +863,8 @@
     Radio.Standby();
     if(lora_jianting_flag)
     {
-			LOG_INFO(TRACE_MODULE_APP," 切换5\r\n");
-    //    SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
+			//LOG_INFO(TRACE_MODULE_APP," 切换5\r\n");
+        SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0);
         Radio.Rx(0);
     }
 }

--
Gitblit v1.9.3