From aea9fefdfa35ce25c436d924ff8bc54fcd1baca7 Mon Sep 17 00:00:00 2001
From: yincheng.zhong <634916154@qq.com>
Date: 星期三, 21 二月 2024 16:02:25 +0800
Subject: [PATCH] 网关读写配置成功

---
 Src/radio/Lora.c |   27 ++++++++++++++++-----------
 1 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/Src/radio/Lora.c b/Src/radio/Lora.c
index bd078b6..4c59926 100644
--- a/Src/radio/Lora.c
+++ b/Src/radio/Lora.c
@@ -193,16 +193,20 @@
 {
 //	HAL_GPIO_TogglePin(GPIOB, LED1_Pin);
 }
-uint8_t tttt;
 
 uint8_t huifushengjibao_flag;
 uint8_t LoraUp_flag;
+extern uint8_t flag_writepara_needreset;
 void OnTxDone( void )
 {   
 //	T_R_Init(0);	
-//    Radio.Standby();
+    Radio.Standby();
 //    Radio.Rx( RX_TIMEOUT_VALUE ); //进入接收
-  tttt++;
+    if(flag_writepara_needreset) //配置写入完成设备需要重启
+    {
+        printf("网关下发配置写入完成,重启");
+        SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //软复位回到bootloader   
+    }
     if(LoraUp_flag)
     {
     huifushengjibao_flag=1;
@@ -274,6 +278,7 @@
     Radio.Init( &RadioEvents );
     Radio.Standby();
     Radio.Sleep();
+    
 //	    Radio.SetChannel( UWB_CHANNEL_FRQ );														 
 //		Radio.SetTxConfig( MODEM_LORA, 22, 0, LORA_BANDWIDTH,
 //                                   LORA_SPREADING_FACTOR, LORA_CODINGRATE,
@@ -327,7 +332,7 @@
 //    Radio.Init( &RadioEvents );
     Radio.Standby();
   //  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_RESET);
-    Radio.SetChannel( freq );	
+    Radio.SetChannel( freq*1000000 );	
  
     Radio.SetTxConfig( MODEM_LORA, power, 0, 2,
     sf, LORA_CODINGRATE,LORA_PREAMBLE_LENGTH_T, LORA_FIX_LENGTH_PAYLOAD_ON,
@@ -352,14 +357,14 @@
 void LoraUp_Poll()
 {    uint16_t  result ;
     uint16_t crc16;
-    memcpy(&rec_wenjian_daxiao,&rxbuffer[WRITEPATE_VALUE_IDX],2);//网关ID 占用2个字节
+    memcpy(&rec_wenjian_daxiao,&rxbuffer[WRITEPARA_VALUE_IDX],2);//网关ID 占用2个字节
 //    rec_wenjian_daxiao=rxbuffer[WRITEPATE_VALUE_IDX];
     if(rec_wenjian_daxiao>0XAC00)
     {}//文件过大,超出范围
     else
     {
     final_bag_num=(rec_wenjian_daxiao/220)+1;//计算一共要请求多少包    
-    wangguan_up_id=rxbuffer[WG_ID_IDX];
+    wangguan_up_id=rxbuffer[SOURCE_ID_IDX];
     send_lora_data[MSG_TYPE_IDX]=LORA_MSGTYPE_UPDATE_CONFIRM;
     memcpy(&send_lora_data[WANGGUAN_ID],&wangguan_up_id,2);//网关ID 占用2个字节
     memcpy(&send_lora_data[JIZHAN_ID],&dev_id,2);//标签或者基站的设备ID 2个字节
@@ -469,8 +474,8 @@
    }
 }
 
-void test1()
-{
-    if(!memcmp(&dev_id,&rxbuffer[ANCTAG_DEVICEID_IDX],2))
-    {LoraUp_Poll();}
-}
\ No newline at end of file
+//void test1()
+//{
+//    if(!memcmp(&dev_id,&rxbuffer[ANCTAG_DEVICEID_IDX],2))
+//    {LoraUp_Poll();}
+//}
\ No newline at end of file

--
Gitblit v1.9.3