From 00fc23c0b2c7b7dfd6df3e9fb9e385ec949cd8cc Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期五, 08 九月 2023 11:31:10 +0800
Subject: [PATCH] lora发30次,先提交一下,方便测试

---
 FML/lora.c |   80 +++++++++++++++++++++------------------
 1 files changed, 43 insertions(+), 37 deletions(-)

diff --git a/FML/lora.c b/FML/lora.c
index d718f8c..26ed0ef 100644
--- a/FML/lora.c
+++ b/FML/lora.c
@@ -266,6 +266,7 @@
  *******************************************************************************/
 extern void delay_ms(uint32_t nTimer)  ;
 extern uint8_t lora_sendfinal_rx_bag_flag;
+uint8_t flag_lorainit=1;
 void Lora_Poll(void)
 {
     HIDO_UINT8 u8Byte = 0;
@@ -275,47 +276,52 @@
 	{
     	Lora_RecvByte(u8Byte);
         lora_rxbuf[lora_rxbufnum++]=u8Byte;
-        if(lora_rxbuf[lora_rxbufnum-1]==0xAA)
+        if(lora_rxbuf[0]==0x55&&lora_rxbuf[1]==0xAA&&lora_rxbuf[9]==0x55&&lora_rxbuf[10]==0xAA)
         {
-          if(lora_rxbuf[lora_rxbufnum-2]==0x55)
-          {
-            memset(&lora_rxbuf,0,sizeof(lora_rxbuf));
-            lora_rxbufnum=0;
-          }
+          memcpy(&lora_recv_devid,&lora_rxbuf[4],2);
+            if(lora_recv_devid==dev_id)
+            {
+            if(lora_rxbuf[6]==0x01&&lora_rxbuf[7]==0x01&&lora_rxbuf[8]==0x00)//接收GPS回复的OK
+            {                 
+                lora_sendfinalbag_flag=0;
+                lora_sendfinal_rx_bag_flag=0;
+                HIDO_Debug("收到GPS的OK\r\n");
+                memset(&lora_rxbuf,0,sizeof(lora_rxbuf));
+                lora_rxbufnum=0;
+            }
+            if(lora_rxbuf[6]==0x02)//接收下发修改GPS开关时间参数
+            {  
+                memcpy(&lora_recv_gpstime,&lora_rxbuf[7],2);
+                if(lora_recv_gpstime<=1800)
+                    lora_recv_gpstime=1800;
+                g_com_map[GPS_ONTIME]=lora_recv_gpstime;
+                save_com_map_to_flash();
+                HIDO_Debug("收到修改GPS开关时间:%d\r\n",lora_recv_gpstime);
+                delay_ms(100);
+                NVIC_SystemReset();
+            }
+            if(lora_rxbuf[6]==0x03)//接收下发修改静止休眠时间参数
+            {  
+                memcpy(&lora_recv_gpstime,&lora_rxbuf[7],2);
+                    if(lora_recv_gpstime<=10)
+                    lora_recv_gpstime=10;
+                g_com_map[NOMOVESLEEP_TIME]=lora_recv_gpstime;
+                save_com_map_to_flash();
+                HIDO_Debug("收到修改静止休眠时间:%d\r\n",lora_recv_gpstime);
+                delay_ms(100);
+                NVIC_SystemReset();
+            }
+            }
+        
         } 
-        memcpy(&lora_recv_devid,&lora_rxbuf[2],2);
-        if(lora_recv_devid==dev_id)
-        {
-        if(lora_rxbuf[4]==0x01&&lora_rxbuf[5]==0x00&&lora_rxbuf[6]==0x01)//接收GPS回复的OK
-        {  
-            memset(&lora_rxbuf,0,sizeof(lora_rxbuf));
-            lora_rxbufnum=0;
-            lora_sendfinalbag_flag=0;
-            lora_sendfinal_rx_bag_flag=0;
-        }
-        if(lora_rxbuf[4]==0x02)//接收下发修改GPS开关时间参数
-        {  
-            memcpy(&lora_recv_gpstime,&lora_rxbuf[5],2);
-            if(lora_recv_gpstime<=1800)
-                lora_recv_gpstime=1800;
-            g_com_map[GPS_ONTIME]=lora_recv_gpstime;
-            save_com_map_to_flash();
-            delay_ms(100);
-            NVIC_SystemReset();
-        }
-        if(lora_rxbuf[4]==0x03)//接收下发修改静止休眠时间参数
-        {  
-            memcpy(&lora_recv_gpstime,&lora_rxbuf[5],2);
-                if(lora_recv_gpstime<=10)
-                lora_recv_gpstime=10;
-            g_com_map[NOMOVESLEEP_TIME]=lora_recv_gpstime;
-            save_com_map_to_flash();
-            delay_ms(100);
-            NVIC_SystemReset();
 
-        }
-        }
 	}
+    if(Lora_IsIdle() == HIDO_TRUE&&flag_lorainit)
+    {
+      memset(&lora_rxbuf,0,sizeof(lora_rxbuf));
+        flag_lorainit=0;
+        lora_rxbufnum=0;
+    }
 }
 
 /*******************************************************************************

--
Gitblit v1.9.3