#include "beep_logic_app.h"
|
#include "led.h"
|
#include "beep.h"
|
#include "global_param.h"
|
#include "dw_app.h"
|
|
#define ONTIME1 1 // 100ms
|
#define OFFTIME1 0 // 100ms
|
|
#define ONTIME2 1 // 100ms
|
#define OFFTIME2 1 // 100ms
|
|
#define ONTIME3 1 // 500ms
|
#define OFFTIME3 5 // 500ms
|
int32_t min_dist;
|
void main_logic(void) //Ö÷Âß¼ÔÚÕâÀïÖ´ÐÐ
|
{
|
static uint8_t beep_state,timer_state,beep_timer,beep_ontime,beep_offtime;
|
int16_t i;
|
//³ýUWBÖ®ÍâµÄÆäËû´úÂë...
|
static uint16_t beep_judge_cnt = 0;
|
if(beep_judge_cnt++ >= 100)
|
{
|
beep_judge_cnt = 0;
|
min_dist=0x7fffff;
|
for(i = 0; i < 255; i++)
|
{
|
if(g_Tagdist[i] < min_dist)
|
{
|
min_dist=g_Tagdist[i];
|
}
|
|
}
|
|
if(min_dist <= g_com_map[ALARM_DISTANCE1])
|
{
|
beep_ontime = ONTIME1;
|
beep_offtime = OFFTIME1;
|
beep_state=1;
|
RELAY1_ON;
|
RELAY2_ON;
|
|
}
|
else if (min_dist <= g_com_map[ALARM_DISTANCE2])
|
{
|
beep_ontime = ONTIME2;
|
beep_offtime = OFFTIME2;
|
beep_state=1;
|
RELAY2_ON;
|
}
|
//else if (min_dist <= g_com_map[ALARM_DISTANCE3])
|
// {
|
// beep_ontime = ONTIME3;
|
// beep_offtime = OFFTIME3;
|
// beep_state=1;
|
// }
|
else {
|
beep_state=0;
|
}
|
if (min_dist >= g_com_map[ALARM_DISTANCE1]+20)
|
{
|
RELAY1_OFF;
|
}
|
|
if (min_dist >= g_com_map[ALARM_DISTANCE2]+20)
|
{
|
RELAY2_OFF;
|
}
|
|
//
|
// if(beep_state==1)
|
// {
|
// if(timer_state==1)
|
// {
|
// if(beep_timer++ < beep_ontime)
|
// {
|
// 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{
|
// timer_state=0;
|
// beep_timer=0;
|
// }
|
// }else{
|
// if(beep_timer++ < beep_offtime)
|
// {
|
// 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;
|
// }
|
// }else{
|
// timer_state=1;
|
// beep_timer=0;
|
// }
|
//
|
// }
|
//
|
// } 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;
|
// }
|
// }
|
}
|
}
|