From 3be9d3dc5f5e88d2eb50dfc5e73abf5c07eda9b2 Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期二, 12 十一月 2024 18:04:29 +0800
Subject: [PATCH] 可以跟标签uwb测距。

---
 Src/radio/Lora.c |   33 ++++++++++++++++++++++++++++++++-
 1 files changed, 32 insertions(+), 1 deletions(-)

diff --git a/Src/radio/Lora.c b/Src/radio/Lora.c
index d6a7357..b04f1b6 100644
--- a/Src/radio/Lora.c
+++ b/Src/radio/Lora.c
@@ -134,7 +134,7 @@
                                                               //  2: 4/6,
                                                               //  3: 4/7,
                                                               //  4: 4/8]
-#define LORA_PREAMBLE_LENGTH_T                      8         // 96         // Same for Tx 
+#define LORA_PREAMBLE_LENGTH_T                      4         // 96         // Same for Tx 
 #define LORA_PREAMBLE_LENGTH_R                      8        // Same for Rx
 //#define LORA_PREAMBLE_LENGTH                      990         // Same for Tx and Rx
 #define LORA_SYMBOL_TIMEOUT                         0         // Symbols
@@ -348,7 +348,38 @@
 
     
 }
+#define FSK_FDEV                                    127e3      // Hz 
+#define FSK_DATARATE                                250e3      // bps
+#define FSK_BANDWIDTH                               250e3     // Hz >> DSB in sx126x
+#define FSK_AFC_BANDWIDTH                           100e3     // Hz
+#define FSK_PREAMBLE_LENGTH                         5         // Same for Tx and Rx
+#define FSK_FIX_LENGTH_PAYLOAD_ON                   false
+void SwitchLoraSettings_FSK(uint32_t freq,uint8_t sf,uint8_t power)
+{
+    
+//    RadioEvents.TxDone = OnTxDone;
+//    RadioEvents.RxDone = OnRxDone;
+//    RadioEvents.TxTimeout = OnTxTimeout;
+//    RadioEvents.RxTimeout = OnRxTimeout;
+//    RadioEvents.RxError = OnRxError;
+    //HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_SET);
+//    Radio.Init( &RadioEvents );
+    Radio.Standby();
+  //  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_12, GPIO_PIN_RESET);
+    Radio.SetChannel( freq*1000000 );	
+ 
+    Radio.SetTxConfig( MODEM_FSK, power, FSK_FDEV, 0,
+                                  FSK_DATARATE, 0,
+                                  FSK_PREAMBLE_LENGTH, FSK_FIX_LENGTH_PAYLOAD_ON,
+                                  true, 0, 0, 0, 3000 );
+    
+    Radio.SetRxConfig( MODEM_FSK, FSK_BANDWIDTH, FSK_DATARATE,
+                                  0, FSK_AFC_BANDWIDTH, FSK_PREAMBLE_LENGTH,
+                                  0, FSK_FIX_LENGTH_PAYLOAD_ON, 0, true,
+                                  0, 0,false, false );
 
+    
+}
 uint16_t rec_wenjian_daxiao;
 uint16_t wangguan_up_id;
 uint8_t send_lora_data[250];

--
Gitblit v1.9.3