| | |
| | | CLOSE, |
| | | RANGE, |
| | | }enumwltagstate; |
| | | #define TAGFREQ_IDX 7 |
| | | |
| | | /* Ranging period */ |
| | | #define RANGING_PERIOD_MS (1000) |
| | | |
| | | /* This is the delay from Frame RX POLL frame to send RESP Frame */ |
| | | #define POLL_RX_TO_RESP_TX_DLY_US 550U //yuan550极限 |
| | | #define POLL_RX_TO_RESP_TX_DLY_US 670U //yuan550极限 |
| | | //#define POLL_RX_TO_RESP_TX_DLY_US 550U //yuan550极限 |
| | | |
| | | #define RESP_TX_TO_FINAL_RX_DLY_US 500U |
| | | |
| | | //#define RESP_TX_TO_FINAL_RX_DLY_US 500U |
| | | /* RX sync window size 50 ms*/ |
| | | #define RX_SYNC_WIN_US 5000U //yuan1000 7000success |
| | | |
| | |
| | | #define RX_WIN_IN_ADVANCE_US (150) |
| | | |
| | | #define DELAY_BETWEEN_TWO_FRAME_UUS 500 //yuan1400 |
| | | //#define DELAY_BETWEEN_TWO_FRAME_UUS 500 //yuan1400 |
| | | |
| | | /* Field index in frame */ |
| | | #define MSG_SEQ_NUM_IDX 2 |
| | |
| | | temp_count= phy_timer_count_get(); |
| | | temp_internal=temp_count; |
| | | resp_tx_num++; |
| | | // OpenUWB();//再次开启UWB接收 |
| | | OpenUWB();//再次开启UWB接收 |
| | | //LOG_INFO(TRACE_MODULE_APP, "poll_rx_num is %d,resp_tx_num is %d\r\n",poll_rx_num,resp_tx_num); |
| | | } |
| | | OpenUWB();//再次开启UWB接收 |
| | | // OpenUWB();//再次开启UWB接收 |
| | | } |
| | | uint32_t start_receive_count,end_receive_count,poll_timeout,current_count,temp_resp; |
| | | uint16_t anchordata_id[TAG_NUM_IN_SYS],anchordata_dist[TAG_NUM_IN_SYS]; |
| | |
| | | memcpy(&send_buffer[ANCHOR_ID_IDX],&dev_id,2);//自身id |
| | | memcpy(&send_buffer[TAG_ID_IDX],&tag_id_recv,2);//接受者id |
| | | send_buffer[MESSAGE_TYPE_IDX]=MBX_RESPONSE; |
| | | memcpy(&send_buffer[TAGFREQ_IDX],&tag_frequency,2); |
| | | |
| | | position=ancrec_nearbasepos; |
| | | resp_tx_en_start_u32 = poll_rx_en_start_u32+US_TO_PHY_TIMER_COUNT(POLL_RX_TO_RESP_TX_DLY_US)+ancrec_nearbasepos*US_TO_PHY_TIMER_COUNT(DELAY_BETWEEN_TWO_FRAME_UUS);//加入帧间隔 |