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