| | |
| | | NEARPOLL, |
| | | }tag_state=GETNEARMSG; |
| | | static dwt_config_t config = { |
| | | 3, /* Channel number. */ |
| | | 2, /* Channel number. */ |
| | | DWT_PRF_64M, /* Pulse repetition frequency. */ |
| | | DWT_PLEN_128, /* Preamble length. */ |
| | | DWT_PAC8, /* Preamble acquisition chunk size. Used in RX only. */ |
| | |
| | | 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; |
| | |
| | | { |
| | | 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 |
| | |
| | | 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]; |
| | |
| | | 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); |