| | |
| | | DISCPOLL, |
| | | GETNEARMSG, |
| | | NEARPOLL, |
| | | SINGLEPOLL, |
| | | SINGLEPOLL, |
| | | }tag_state=STARTPOLL; |
| | | static dwt_config_t config = { |
| | | 2, /* Channel number. */ |
| | |
| | | |
| | | } |
| | | } |
| | | u32 last_mindist_slavebaseid; |
| | | void NearPoll(void) |
| | | { |
| | | |
| | |
| | | mainbase_dist=temp_dist; |
| | | nearbase_distlist[0] = temp_dist; |
| | | base_mindist = temp_dist; |
| | | if((rx_buffer[MOTORSTATE_INDEX]&0xf)!=3) |
| | | motor_state=rx_buffer[MOTORSTATE_INDEX]&0xf; |
| | | // if((rx_buffer[MOTORSTATE_INDEX]&0xf)!=3) |
| | | // motor_state=rx_buffer[MOTORSTATE_INDEX]&0xf; |
| | | if(frame_len==38) |
| | | { |
| | | memcpy(&rec_maxrangelen,&rx_buffer[MAXRANGE_DISTANCE],2); |
| | |
| | | #ifdef SWITCHBASE_DIST |
| | | if(salvebase_mindist<mainbase_dist- THRESHOLD_CHANGE_MAINBASE_DIST ) |
| | | { |
| | | changemainbase_count++; |
| | | if(mindist_slavebaseid==last_mindist_slavebaseid) |
| | | { |
| | | changemainbase_count++; |
| | | if(changemainbase_count>2) |
| | | { |
| | | changemainbase_count = 0; |
| | |
| | | tag_state = GETNEARMSG; |
| | | trygetnearmsg_times = 0; |
| | | GetNearMsg(); |
| | | }} |
| | | else{ |
| | | changemainbase_count = 1; |
| | | last_mindist_slavebaseid = mindist_slavebaseid; |
| | | } |
| | | }else{ |
| | | changemainbase_count = 0; |