From 0a7ffb3c159918e1df3e0a2ab59c48e00cc48272 Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期四, 02 三月 2023 15:57:30 +0800 Subject: [PATCH] V2.53 修改UWB通讯标志位,适配2.56之后的标签。 --- 源码/核心板/Src/application/dw_app.c | 16 ++++++++-------- 1 files changed, 8 insertions(+), 8 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" index 2ea231b..2a418c0 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" @@ -9,7 +9,7 @@ static dwt_config_t config = { 2, /* Channel number. */ DWT_PRF_64M, /* Pulse repetition frequency. */ - DWT_PLEN_64, /* Preamble length. */ + DWT_PLEN_128, /* Preamble length. */ DWT_PAC8, /* Preamble acquisition chunk size. Used in RX only. */ 9, /* TX preamble code. Used in TX only. */ 9, /* RX preamble code. Used in RX only. */ @@ -398,7 +398,7 @@ dwt_write32bitreg(SYS_STATUS_ID, SYS_STATUS_RXFCG | SYS_STATUS_TXFRS);//清楚标志位 frame_len = dwt_read32bitreg(RX_FINFO_ID) & RX_FINFO_RXFLEN_MASK;//数据长度 dwt_readrxdata(rx_buffer, frame_len, 0);//读取接收数据 - if (rx_buffer[MESSAGE_TYPE_IDX] == FINAL&&!memcmp(&rx_buffer[TAG_ID_IDX],&tag_id_recv,2)) //判断是否为Final包 + if (rx_buffer[MESSAGE_TYPE_IDX] == DISCOVERFINAL&&!memcmp(&rx_buffer[TAG_ID_IDX],&tag_id_recv,2)) //判断是否为Final包 { uint32_t poll_tx_ts, resp_rx_ts, final_tx_ts; uint32_t poll_rx_ts_32, resp_tx_ts_32, final_rx_ts_32; @@ -511,7 +511,7 @@ memcpy(&tx_nearresp_msg[DIST_IDX], &tagdist_list[taglist_pos], 4); memcpy(&tx_nearresp_msg[ANC_SIGNALPOWER],&signalpower_list[taglist_pos],2); tx_nearresp_msg[MAINBASE_INDEX]=flag_syncbase; - tx_nearresp_msg[MESSAGE_TYPE_IDX]=NEAR_RESPONSE; + tx_nearresp_msg[MESSAGE_TYPE_IDX]=POS_RESPONSE; //tx_nearresp_msg[MOTORSTATE_INDEX]=(remotesend_state<<4)|motorstate; waittagconfig_reponse=0; finalsend = 0; @@ -575,7 +575,7 @@ { return 1; } - if (rx_buffer[MESSAGE_TYPE_IDX] == NEAR_FINAL&&!memcmp(&rx_buffer[TAG_ID_IDX],&tag_id_recv,2)) //判断是否为Final包 + if (rx_buffer[MESSAGE_TYPE_IDX] == POS_FINAL&&!memcmp(&rx_buffer[TAG_ID_IDX],&tag_id_recv,2)) //判断是否为Final包 { resp_tx_ts = get_tx_timestamp_u64();//获得response发送时间T3 @@ -732,7 +732,7 @@ { uint16_t checksum; case DISCOVERPOLL: - if (anchor_type == rx_buffer[ANCHOR_ID_IDX]) + if (anchor_type == rx_buffer[ANCHOR_ID_IDX]&&g_com_map[NEARSWITCH_DISTANCE_INDEX] != 0) { taglist_pos=CmpTagInList(tag_id_recv); if(taglist_pos==taglist_num) @@ -833,11 +833,11 @@ SyncPoll(sync_seq); } break; - case NEAR_MSG: + case POS_MSG: if(anc_id_recv==dev_id) { rx_buffer[TAGSLOTPOS]=taglist_pos; - tx_near_msg[MESSAGE_TYPE_IDX] = NEAR_MSG; + tx_near_msg[MESSAGE_TYPE_IDX] = POS_MSG; memcpy(&tx_near_msg[TAG_ID_IDX],&tag_id_recv,2); memcpy(&tx_near_msg[NEARMSG_EMPTYSLOTPOS_INDEX],&tagpos_binary,4); ancidlist_num=g_com_map[NEARBASE_NUM]; @@ -887,7 +887,7 @@ UART_PushFrame(usart_send,24); } break; - case NEAR_POLL: + case POS_POLL: // GPIO_WriteBit(GPIOB, GPIO_Pin_10, Bit_SET); memcpy(&tag_id_recv,&rx_buffer[TAG_ID_IDX],2); -- Gitblit v1.9.3