| | |
| | | * As this example only handles one incoming frame with always the same delay and timeout, those values can be set here once for all. */ |
| | | //è®¾ç½®æ¥æ¶è¶
æ¶æ¶é´ |
| | | } |
| | | extern u16 group_id; |
| | | void Dw1000_App_Init(void) |
| | | { |
| | | //g_com_map[DEV_ID] = 0x0b; |
| | |
| | | tx_resp_msg[MESSAGE_TYPE_IDX]=RESPONSE; |
| | | tx_final_msg[MESSAGE_TYPE_IDX]=FINAL; |
| | | tx_sync_msg[MESSAGE_TYPE_IDX]=SYNC; |
| | | |
| | | memcpy(&tx_poll_msg[GROUP_ID_IDX], &group_id, 1); |
| | | memcpy(&tx_final_msg[GROUP_ID_IDX], &group_id, 1); |
| | | memcpy(&tx_resp_msg[GROUP_ID_IDX], &group_id, 1); |
| | | |
| | | memcpy(&tx_poll_msg[TAG_ID_IDX], &dev_id, 2); |
| | | memcpy(&tx_final_msg[TAG_ID_IDX], &dev_id, 2); |
| | |
| | | last_nearbase_num=next_nearbase_num; |
| | | nearbase_num=next_nearbase_num; |
| | | recbase_num=0; |
| | | tx_nearpoll_msg[GROUP_ID_IDX] = group_id; |
| | | tx_nearpoll_msg[BATTARY_IDX] = Get_Battary(); |
| | | tx_nearpoll_msg[BUTTON_IDX] = !READ_KEY0; |
| | | tx_nearpoll_msg[SEQUENCE_IDX] = frame_seq_nb++; |
| | |
| | | final_msg_set_ts(&tx_nearfinal_msg[FINAL_MSG_RESP_RX_NEARBASE_IDX], resp_rx_ts); |
| | | final_msg_set_ts(&tx_nearfinal_msg[FINAL_MSG_FINAL_TX_TS_IDX], final_tx_ts); |
| | | tx_nearfinal_msg[MESSAGE_TYPE_IDX]=NEAR_FINAL; |
| | | tx_nearfinal_msg[GROUP_ID_IDX] = group_id; |
| | | dwt_writetxdata(28+nearbase_num*4, tx_nearfinal_msg, 0);//å°åéæ°æ®åå
¥DW1000 |
| | | dwt_writetxfctrl(28+nearbase_num*4, 0);//设å®åéæ°æ®é¿åº¦ |
| | | memcpy(&rec_tagpos_binary,&rx_buffer[NEARMSG_EMPTYSLOTPOS_INDEX],4); |
| | |
| | | { |
| | | 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] == NEAR_FINAL&&!memcmp(&rx_buffer[TAG_ID_IDX],&tag_id_recv,2)&&group_id==rx_buffer[GROUP_ID_IDX]) //夿æ¯å¦ä¸º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; |
| | |
| | | #endif |
| | | if(tag_id_recv>=g_com_map[WHITELIST1_START]&&tag_id_recv<=g_com_map[WHITELIST1_END]) |
| | | {break;} |
| | | if(group_id!=rx_buffer[GROUP_ID_IDX]) |
| | | {break;} |
| | | taglist_pos=CmpTagInList(tag_id_recv); |
| | | if(taglist_pos==taglist_num) |
| | | { |