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 | 66 ++++++++++++++++++++++++++------- 1 files changed, 52 insertions(+), 14 deletions(-) diff --git a/Src/application/dw_app.h b/Src/application/dw_app.h index 3359945..55fbfe6 100644 --- a/Src/application/dw_app.h +++ b/Src/application/dw_app.h @@ -4,31 +4,62 @@ #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" -//#define WORK_MODE_TAG -#define WORK_MODE_ANCHOR +#define BASELOST_STOPMOTOR_TIME 5 +//BITSTATE +#define GOINGSLEEPBIT 1 //#define NEWBOARD //#define TAG_OUTPUT #define HEX_OUTPUT #define MAX_NEARBASE_NUM 12 -#define KEEP_TIMES 5 #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 @@ -48,9 +79,13 @@ #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 FINAL_MSG_POLL_TX_TS_IDX 10 #define FINAL_MSG_RESP_RX_TS_IDX 14 @@ -58,16 +93,19 @@ #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 BATTARY_IDX 1 -#define BUTTON_IDX 2 #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) @@ -91,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