From 32ec78bbb74df89564f3998fd32bc3411fca5613 Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期二, 11 三月 2025 15:17:35 +0800 Subject: [PATCH] 基本功能调通 --- keil/uwb_app.c | 102 +++++++++++++++++++++++++++++++-------------------- 1 files changed, 62 insertions(+), 40 deletions(-) diff --git a/keil/uwb_app.c b/keil/uwb_app.c index 3bb551b..54ec5b5 100644 --- a/keil/uwb_app.c +++ b/keil/uwb_app.c @@ -9,6 +9,7 @@ #include "global_param.h" #include "board.h" #include "lora_1268.h" +#include "PCA9555.h" #define TAG_KEEPTIMES 30 #define REPORT_TAG_KEEPTIMES 1 @@ -396,6 +397,8 @@ //tagofflinetime[i] = 0; return i; } + + static void resp_msg_set_ts(uint8_t *ts_field, int64_t ts) { int i,ts2; @@ -760,46 +763,65 @@ uint32_t wltag_statetimer,wltag_uwbtimer; int uwb_app_poll(void) { -// switch(wltag_state) -// { -// case RANGE: -// if(HIDO_TimerGetTick()-wltag_uwbtimer>2&&uwb_rx_flag==0) -// { -// wltag_uwbtimer = HIDO_TimerGetTick(); -// OpenUWB(); -// } -// else if(HIDO_TimerGetTick()-wltag_uwbtimer>1&&uwb_rx_flag==1) -// { -// wltag_uwbtimer = HIDO_TimerGetTick(); -// CloseUWB(); -// } -// if(uwb_losttimer>g_com_map[UWB_RNAGE_TIME]) -// { -// wltag_statetimer = HIDO_TimerGetTick(); -// if(uwb_rx_flag==0)//若要切换到搜索模式时没有开启则开启UWB -// { -// OpenUWB(); -// } -// wltag_state = SEARCH; -// } -// break; -// case SEARCH: -// if(HIDO_TimerGetTick()-wltag_statetimer>1) -// { -// wltag_statetimer = HIDO_TimerGetTick(); -// wltag_state = CLOSE; -// CloseUWB(); -// } -// break; -// case CLOSE: -// if(HIDO_TimerGetTick()-wltag_statetimer>g_com_map[UWB_WAIT_TIME]) -// { -// wltag_statetimer = HIDO_TimerGetTick(); -// wltag_state = SEARCH; -// OpenUWB(); -// } -// break; -// } + switch(wltag_state) + { + + case RANGE: +// time_flag=HIDO_TimerGetTick()-wltag_uwbtimer; + if(HIDO_TimerGetTick()-wltag_uwbtimer>2&&uwb_rx_flag==0) + { + UWB_LED_ON; + wltag_uwbtimer = HIDO_TimerGetTick(); + if(UWB_STATE==UWB_STATE_IDLE) + { + UWB_STATE=UWB_RX_STATE_BUSY; + OpenUWB(); + } + } + else if(HIDO_TimerGetTick()-wltag_uwbtimer>1&&uwb_rx_flag==1) + { +// time_flag=HIDO_TimerGetTick()-wltag_uwbtimer; + UWB_LED_OFF; + wltag_uwbtimer = HIDO_TimerGetTick(); + CloseUWB(); + UWB_STATE=UWB_STATE_IDLE; + } + if(uwb_losttimer>g_com_map[UWB_RNAGE_TIME]) + { + wltag_statetimer = HIDO_TimerGetTick(); + if(uwb_rx_flag==0)//若要切换到搜索模式时没有开启则开启UWB + { + if(UWB_STATE==UWB_STATE_IDLE) + { + UWB_STATE=UWB_RX_STATE_BUSY; + OpenUWB(); + } + } + wltag_state = SEARCH; + } + break; + case SEARCH: + if(HIDO_TimerGetTick()-wltag_statetimer>1) + { + wltag_statetimer = HIDO_TimerGetTick(); + wltag_state = CLOSE; + CloseUWB(); + UWB_STATE=UWB_STATE_IDLE; + } + break; + case CLOSE: + if(HIDO_TimerGetTick()-wltag_statetimer>g_com_map[UWB_WAIT_TIME]) + { + wltag_statetimer = HIDO_TimerGetTick(); + wltag_state = SEARCH; + if(UWB_STATE==UWB_STATE_IDLE) + { + UWB_STATE=UWB_RX_STATE_BUSY; + OpenUWB(); + } + } + break; + } UWBIdleTask(); } int Anchor_App(void) -- Gitblit v1.9.3