From 97ae3565c364be9df5c9d15257461b981f077126 Mon Sep 17 00:00:00 2001 From: zhyinch <zhyinch@gmail.com> Date: 星期四, 12 五月 2022 21:33:49 +0800 Subject: [PATCH] V2.51 CH3 临近切换距离位0基站不回复搜索模式 --- 源码/核心板/Src/application/beep_logic_app.c | 141 ++++++++++++++++++++++++++-------------------- 1 files changed, 79 insertions(+), 62 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/beep_logic_app.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/beep_logic_app.c" index 945a7e9..4545b90 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/beep_logic_app.c" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/beep_logic_app.c" @@ -4,69 +4,86 @@ #include "global_param.h" #include "dw_app.h" +#define ONTIME1 1 // 100ms +#define OFFTIME1 0 // 100ms + +#define ONTIME2 1 // 100ms +#define OFFTIME2 0 // 100ms + +#define ONTIME3 5 // 500ms +#define OFFTIME3 5 // 500ms +u8 distoffset1=0,distoffset2=0; +uint16_t min_dist; void main_logic(void) //主逻辑在这里执行 -{uint16_t i, min_dist; - //除UWB之外的其他代码... - static uint16_t beep_judge_cnt = 0; - if(beep_judge_cnt++ >= 200) - { - beep_judge_cnt = 0; - min_dist=0xffff; - for(i = 0; i < 255;i++) - { - if(g_Tagdist[i] < min_dist) - { - min_dist=g_Tagdist[i]; - } - - } - if(min_dist <= g_com_map[ALARM_DISTANCE]) - { - switch(g_com_map[ALARM_DEV]) - { - case 0: - BEEP2_ON; - BEEP_OFF; - OUT2_OFF; - break; - case 1: - BEEP_ON; - BEEP2_OFF; - OUT2_OFF; - break; - case 2: - OUT2_ON; - BEEP_OFF; - BEEP2_OFF; - break; - default: - BEEP2_ON; - BEEP_ON; - OUT2_ON; - break; - } - } - else - { - switch(g_com_map[ALARM_DEV]) - { - case 0: - BEEP2_OFF; - break; - case 1: - BEEP_OFF; - break; - case 2: - OUT2_OFF; - break; - default: - BEEP2_OFF; - BEEP_OFF; - OUT2_OFF; - break; - } - } - } +{ +// static uint8_t beep_state,timer_state,beep_timer,beep_ontime,beep_offtime; +// uint16_t i; +// //除UWB之外的其他代码... +// static uint16_t beep_judge_cnt = 0; +// if(beep_judge_cnt++ >= 100) +// { +// beep_judge_cnt = 0; +// min_dist=0xffff; +// for(i = 0; i < 255;i++) +// { +// if(g_Tagdist[i] < min_dist&&g_Tagdist[i]>g_com_map[ALARM_DISTANCE1]) +// { +// min_dist=g_Tagdist[i]; +// } +// +// } +// +// if (min_dist <= g_com_map[ALARM_DISTANCE2]+distoffset1) +// { +// beep_ontime = ONTIME2; +// beep_offtime = OFFTIME2; +// beep_state=2; +// distoffset1=0; +// distoffset2=0; +// } +// else if (min_dist <= g_com_map[ALARM_DISTANCE3]+distoffset2) +// { +// beep_ontime = ONTIME3; +// beep_offtime = OFFTIME3; +// beep_state=1; +// distoffset1=0; +// distoffset2=0; +// } +// else{ +// beep_state=0; +// distoffset1=0; +// distoffset2=0; +// } +// +// if(beep_state!=0) +// { +// if(timer_state==1) +// { +// if(beep_timer++ < beep_ontime) +// { +// RELAY1_ON; +// RELAY2_ON; +// }else{ +// timer_state=0; +// beep_timer=0; +// } +// }else{ +// if(beep_timer++ < beep_offtime) +// { +// RELAY1_OFF; +// RELAY2_OFF; +// }else{ +// timer_state=1; +// beep_timer=0; +// } +// +// } +// +// } else { +// RELAY1_OFF; +// RELAY2_OFF; +// } +// } } -- Gitblit v1.9.3