From 0e4f298824b83e1a1e81ec8ced2e6c007a1c8961 Mon Sep 17 00:00:00 2001 From: guanjiao <sqrgj@163.com> Date: 星期三, 29 八月 2018 21:10:40 +0800 Subject: [PATCH] 1. 修改为外部晶振 2. 修改led与蜂鸣器pin角 --- 源码/核心板/Src/main.c | 25 ++++++++++++++++++++++++- 1 files changed, 24 insertions(+), 1 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/main.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/main.c" index b9fae62..21cdfa8 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/main.c" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/main.c" @@ -6,13 +6,20 @@ #include "beep.h" #include "dw_driver.h" #include "dw_app.h" +#include "filters.h" +#include "stm32f10x_it.h" //#define WORK_MODE_TAG #define WORK_MODE_ANCHOR +#define START_ALARM_DIST_CM 500 +#define BEEM_ON_TIME_MS 200 + +float dis_after_filter = 0; void Device_Init(void) { - Rcc_Init(); +// Rcc_Init(); + SystemInit(); Nvic_Init(); Systick_Init(); Led_Init(); @@ -35,9 +42,11 @@ */ int main(void) { + LPFilter_Frac* p_Dis_Filter; Device_Init(); Dw1000_Init(); + p_Dis_Filter = New_LP_Frac(0.9); /* Loop forever initiating ranging exchanges. */ while(1) @@ -48,6 +57,20 @@ Anchor_App(); #endif //除UWB之外的其他代码... + dis_after_filter = LP_Frac_Update(p_Dis_Filter, dist_cm); + + if(dis_after_filter <= START_ALARM_DIST_CM) + { + g_beep_off_time = (uint32_t)dis_after_filter * 10; + if(g_beep_off_time <= 0) + g_beep_off_time = 0; + g_beep_on_time = BEEM_ON_TIME_MS; + } + else + { + g_beep_on_time = 0; + g_beep_off_time = 0; + } } } -- Gitblit v1.9.3