From e0a196fc7dcb47d200ab81a933dde2b18d169ed5 Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期二, 13 五月 2025 16:23:21 +0800 Subject: [PATCH] 移植开关GPS代码 --- keil/uwb_app.c | 42 ++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 40 insertions(+), 2 deletions(-) diff --git a/keil/uwb_app.c b/keil/uwb_app.c index 0778e45..7d320f7 100644 --- a/keil/uwb_app.c +++ b/keil/uwb_app.c @@ -12,6 +12,7 @@ #include "lib_aoa.h" #include "WS2812.h" #include "TCPClient.h" +#include "PCA9555.h" extern int simple_main(void); extern int temp_main(void); @@ -534,6 +535,29 @@ // } // anchordata_num=j; //} + +//void TagListUpdate(void) +//{ +//uint16_t i,j=0,k=0; +// for(i=0; i<taglist_num; i++) +// { +// if(tagofflinetime[i]++<TAG_KEEPTIMES) +// { +// tagid_list[j]=tagid_list[i]; +// tagdist_list[j] = tagdist_list[i]; +// anchordata_bat[j]=anchordata_bat[i];//电量随之更新 +// anchor_rssi[j]=anchor_rssi[i]; +// tagofflinetime[j++]=tagofflinetime[i]; +// } +// } +// taglist_num=j; +//} +extern uint8_t in_the_room_flag; +extern uint8_t lounei_flag; +uint8_t ceju_onlinetime; +uint16_t last_id=0; +uint8_t ceju_leave_flag=0; + void TagListUpdate(void) { uint16_t i,j=0,k=0; @@ -546,11 +570,22 @@ anchordata_bat[j]=anchordata_bat[i];//电量随之更新 anchor_rssi[j]=anchor_rssi[i]; tagofflinetime[j++]=tagofflinetime[i]; + last_id=tagid_list[i]; + if(last_id=tagid_list[i]) + { + ceju_onlinetime++; + } + } + } + + if(ceju_onlinetime>0&&taglist_num==0) + { + ceju_onlinetime=0; + ceju_leave_flag=1; } taglist_num=j; } - uint8_t position; uint8_t resp_tx_error; uint8_t Anchor_RecNearPoll(uint8_t ancrec_nearbasepos)//根据自己是否为新基站定制消息去发送,根据是否抢占判断 @@ -774,9 +809,12 @@ uwb_offtime_count=0; current_state = STATE_NORMAL; if(group_id==rx_buf[GROUP_ID_IDX]&&rx_buf[MESSAGE_TYPE_IDX] == MBX_POLL)//判断是否是和自己是同一组通讯的且为poll包 - { flag_recsuccess = 1; + { + PCA9555_Set_One_Value_Output(GPS_POWER,1); + flag_recsuccess = 1; wltag_state=RANGE;//成功后从search切换为range memcpy(&g_com_receive_id,&rx_buf[TAG_ID_IDX],2); + //temp_count2=phy_timer_count_get(); uwb_losttimer=0;//成功测距清0 lost时间 frame_seq_nb2 = rx_buf[SEQUENCE_IDX];//获取包序 -- Gitblit v1.9.3