From 4691492f913d0730703f8fcdacd0a02d455d65a1 Mon Sep 17 00:00:00 2001
From: yincheng.zhong <634916154@qq.com>
Date: 星期一, 29 一月 2024 10:37:32 +0800
Subject: [PATCH] 国新智能V1.7

---
 Src/application/dw_app.h |   62 +++++++++++++++++++++++-------
 1 files changed, 47 insertions(+), 15 deletions(-)

diff --git a/Src/application/dw_app.h b/Src/application/dw_app.h
index 153240b..55fbfe6 100644
--- a/Src/application/dw_app.h
+++ b/Src/application/dw_app.h
@@ -4,7 +4,10 @@
 
 #include <string.h>
 #include "main.h"
-
+#include "deca_device_api.h"
+//#include "deca_device_api_3000.h"
+#include "deca_regs.h"
+#include "dw_driver.h"
 #include "ADC.h"
 #include "TrackingDiff.h"
 
@@ -16,21 +19,47 @@
 //#define TAG_OUTPUT
 #define HEX_OUTPUT
 
-#define SLOT_SCALE 0.7
 #define MAX_NEARBASE_NUM 12
-#define KEEP_TIMES 3
 
 #define REPOET_ANC_NUM 1
 #define REPOET_ANC_NUM_MIN 1
 #define TAG_ID_START 		0// 0x00980000
 #define GROUP_TAG_NUM 2
-#define TAG_NUM_IN_SYS				25
+#define TAG_NUM_IN_SYS				256
 #define DFT_RAND_DLY_TIM_MS			1
-#define THRESHOLD_CHANGE_MAINBASE_DIST   50
-#define MIN_ANCHOR_NUM 2
-#define SYNC_SEQ_IDX    			5
-#define REMOTEPARA_LEN 18
+#define QUIT_SLOT_TIME    5
+#define KEEP_TIMES 30
+#define SLOT_SCALE 0.7
+#define RNG_DELAY_MS 100
 
+/* Default antenna delay values for 64 MHz PRF. See NOTE 1 below. */
+#define TX_ANT_DLY 0
+#define RX_ANT_DLY 32899
+
+/* UWB microsecond (uus) to device time unit (dtu, around 15.65 ps) conversion factor.
+ * 1 uus = 512 / 499.2 祍 and 1 祍 = 499.2 * 128 dtu. */
+#define UUS_TO_DWT_TIME 65536
+
+/* Delay between frames, in UWB microseconds. See NOTE 4 below. */
+/* This is the delay from the end of the frame transmission to the enable of the receiver, as programmed for the DW1000's wait for response feature. */
+#define POLL_TX_TO_RESP_RX_DLY_UUS 150
+/* This is the delay from Frame RX timestamp to TX reply timestamp used for calculating/setting the DW1000's delayed TX function. This includes the
+ * frame length of approximately 2.66 ms with above configuration. */
+#define RESP_RX_TO_FINAL_TX_DLY_UUS 410
+/* Receive response timeout. See NOTE 5 below. */
+#define RESP_RX_TIMEOUT_UUS 2000
+
+#define DELAY_BETWEEN_TWO_FRAME_UUS 550
+
+#define POLL_RX_TO_RESP_TX_DLY_UUS 470
+/* This is the delay from the end of the frame transmission to the enable of the receiver, as programmed for the DW1000's wait for response feature. */
+#define RESP_TX_TO_FINAL_RX_DLY_UUS 10
+/* Receive final timeout. See NOTE 5 below. */
+#define FINAL_RX_TIMEOUT_UUS 4300
+
+#define SPEED_OF_LIGHT 299702547
+
+//MESSAGE_TYPE
 #define POLL     							0x01
 #define RESPONSE 							0x02
 #define FINAL   							0x03
@@ -45,35 +74,38 @@
 #define TAG_ID_IDX    				5
 #define MESSAGE_TYPE_IDX 			9	
 //Poll
-#define TAGSTATE              7
 #define ANC_TYPE_IDX 					14
 //respose
 #define DIST_IDX 							10
 #define ANCTIMEMS             14
 #define ANCTIMEUS             16
-#define TAGSLOTPOS						7
+#define MAINBASE_INDEX        18
 #define MOTORSTATE_INDEX      19
 #define REMOTEPARA_INDEX      20
+#define RESP_MSG_POLL_RX_TS_IDX  26
+#define RESP_MSG_RESP_TX_TS_IDX  30
+#define RESP_MSG_ANC_DISTOFFSET  34
+#define TAGSLOTPOS						7
 //Final
-#define TAGCONFIGSUCCESS_INDEX 7
 #define FINAL_MSG_POLL_TX_TS_IDX 10
 #define FINAL_MSG_RESP_RX_TS_IDX 14
 #define FINAL_MSG_FINAL_TX_TS_IDX 18
 #define FINAL_MSG_RESP_RX_NEARBASE_IDX  22
 #define FINAL_MSG_TS_LEN 4
 //SYNC
+#define ANCHOR_ID_IDX    			1
 #define SYNC_SEQ_IDX    			5
 //NEAR MSG
 #define NEARMSG_EMPTYSLOTPOS_INDEX		 1 //RESPONSE
 #define NEARBASENUM_INDEX    10
 #define NEARBASEID_INDEX		 11
 //NEAR POLL
-
-
 #define SEQUENCE_IDX					3
 #define BATTARY_IDX						4
 #define BUTTON_IDX						7
-
+#define SLOTTIME_MS 48
+#define REMOTEPARA_LEN 18
+#define THRESHOLD_CHANGE_MAINBASE_DIST   5
 #define DW_CTRL_GPIO					GPIOA
 #define DW_ENABLE   HAL_GPIO_WritePin(DW_CTRL_GPIO, DW_CTRL_Pin, GPIO_PIN_RESET)
 #define DW_DISABLE  HAL_GPIO_WritePin(DW_CTRL_GPIO, DW_CTRL_Pin, GPIO_PIN_SET)
@@ -97,7 +129,7 @@
 void Anchor_App(void);
 void tag_sleep_configuraion(void);
 extern int32_t g_Tagdist[TAG_NUM_IN_SYS];
-
+extern dwt_config_t config;
 extern void TagDistClear(void);
 void Dw1000_App_Init(void);
 #endif

--
Gitblit v1.9.3