| | |
| | | GETNEARMSG, |
| | | NEARPOLL, |
| | | SINGLEPOLL, |
| | | }tag_state=SINGLEPOLL; |
| | | }tag_state=REGPOLL; |
| | | static dwt_config_t config = { |
| | | 2, /* Channel number. */ |
| | | DWT_PRF_64M, /* Pulse repetition frequency. */ |
| | |
| | | para_len = frame_len-22; |
| | | memcpy(rec_remotepara,&rx_buffer[REMOTEPARA_INDEX],para_len); |
| | | } |
| | | if(!memcmp(&rx_buffer[TAGPOS_INDEX],&dev_id,2)) |
| | | { |
| | | static u16 last_baoxu,baoxu; |
| | | |
| | | usart_send[0]=0x55; |
| | | usart_send[1]=0xaa; |
| | | usart_send[2] = 0x0e;//正常模式 |
| | | usart_send[3] = 18;//数据段长度 |
| | | |
| | | memcpy(&usart_send[4],&rx_buffer[TAGPOS_INDEX],16); |
| | | memcpy(&baoxu,&usart_send[6],2); |
| | | if(last_baoxu!=baoxu) |
| | | { |
| | | last_baoxu = baoxu; |
| | | checksum = Checksum_u16(&usart_send[2],18); |
| | | memcpy(&usart_send[20],&checksum,2); |
| | | UART_PushFrame(usart_send,22); |
| | | } |
| | | } |
| | | dwt_writetxdata(28+nearbase_num*4, tx_near_msg, 0);//将发送数据写入DW1000 |
| | | dwt_writetxfctrl(28+nearbase_num*4, 0);//设定发送数据长度 |
| | | dwt_setdelayedtrxtime(final_tx_time);//设置final包发送时间T5 |