From dcbd0e93b5cc05ea9f1e1152c7951a37e12d177f Mon Sep 17 00:00:00 2001 From: chen <15335560115@163.com> Date: 星期二, 03 六月 2025 15:23:36 +0800 Subject: [PATCH] V1.13版本修改接收时间和帧间隔和延迟接收时间参数,适配铁鞋稳定一对多测距版本 --- keil/uwb_tag_.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diff --git a/keil/uwb_tag_.c b/keil/uwb_tag_.c index 287fc39..e7ba380 100644 --- a/keil/uwb_tag_.c +++ b/keil/uwb_tag_.c @@ -21,7 +21,7 @@ #define RANGING_PERIOD_MS (10000) /* This is the delay from the end of the poll frame transmission to the enable of the receiver */ -#define POLL_TX_TO_RESP_RX_DLY_US 550U //yuan700 +#define POLL_TX_TO_RESP_RX_DLY_US 1000U //yuan400 #define RESP_RX_TO_FINAL_TX_DLY_US 550U @@ -29,7 +29,7 @@ #define POLL_DELAY 100U //yuan100U /* Receive response timeout */ -#define RESP_RX_TIMEOUT_US_DEFAULT 600U //Yuan500 10mssuccess 300jixian +#define RESP_RX_TIMEOUT_US_DEFAULT 1100U //Yuan500 10mssuccess 300jixian #define RESP_RX_TIMEOUT_US 2000000 /* Field index in frame */ #define MSG_SEQ_NUM_IDX 2 @@ -37,7 +37,7 @@ #define FINAL_MSG_RESP_RX_TS_IDX 14 #define FINAL_MSG_FINAL_TX_TS_IDX 18 #define DELAY_DEFAULT 50000 -#define DELAY_BETWEEN_TWO_FRAME_UUS 500 //yuan1400 +#define DELAY_BETWEEN_TWO_FRAME_UUS 400 //yuan1400 #define HALF_SECOND_TIME 62400000 uint16_t CmpTagInList(uint16_t tagid); @@ -60,7 +60,7 @@ .phy_cfg.code_index = 9, /* TRX preamble code */ .phy_cfg.mean_prf = MEAN_PRF_64M, /* Mean prf 64/128/256M */ .phy_cfg.data_bit_rate = DATA_BR_6M8, /* Data rate 6.8M */ - .phy_cfg.sync_sym = PREAM_LEN_128, /* Preamble duration, length of preamble 128 */ + .phy_cfg.sync_sym = PREAM_LEN_64, /* Preamble duration, length of preamble 128 */ .phy_cfg.sfd_sym = NON_STD_NSFD5_8, /* Identifier for SFD sequence */ .phy_cfg.ranging_bit = 1, /* ranging bit set 1 */ .phy_cfg.trx_mode = TRX_MODE_15_4A, /* IEEE802.15.4z - BPRF mode */ @@ -194,6 +194,7 @@ extern double distance; extern uint8_t bat_percent; uint32_t count1,count2; +extern uint32_t reboot_num; enum SIMPLE_FSM_T { SIMPLE_IDLE = 0, @@ -654,6 +655,7 @@ sleep_timer_start(__MS_TO_32K_CNT(SLEEP_COUNT-rand_temp));//测试 }else if (rx_buf[MESSAGE_TYPE_IDX] == MBX_RESPONSE&&!memcmp(&rx_buf[TAG_ID_IDX],&dev_id,2)&&rx_buf[GROUP_ID_IDX]==group_id) //判断接收到的数据是否是response数据 { + reboot_num=0;//清0复位监测数值 memcpy(&rec_nearbaseid,&rx_buf[ANCHOR_ID_IDX],2); rec_tag_index = CmpTagInList(rec_nearbaseid);//当前新来的这包数据插入当前表中的位置索引 //rec_nearbasepos=FindNearBasePos(rec_nearbaseid); -- Gitblit v1.9.3