From 08187305f2971d0e46fc919bb16ffd7d0a27b81a Mon Sep 17 00:00:00 2001
From: guanjiao <sqrgj@163.com>
Date: 星期六, 15 九月 2018 16:20:26 +0800
Subject: [PATCH] 1. 增加Flash读写功能 2. 增加map表读写功能 3. 修改一些全局变量的名称

---
 源码/核心板/Src/main.c |   81 +++++++++++++++++++++++++++++++++++++++-
 1 files changed, 79 insertions(+), 2 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..b0e5590 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,22 +6,38 @@
 #include "beep.h"
 #include "dw_driver.h"
 #include "dw_app.h"
+#include "filters.h"
+#include "stm32f10x_it.h"
+#include "serial_at_cmd_app.h"
+#include "global_param.h"
 
 //#define WORK_MODE_TAG
 #define WORK_MODE_ANCHOR
+#define START_ALARM_DIST_CM			200
+#define BEEM_ON_TIME_MS				200
+
+float dis_after_filter = 500;
 
 void Device_Init(void)
 {
-	Rcc_Init();
+//	Rcc_Init();
+	SystemInit();
 	Nvic_Init();
 	Systick_Init();
 	Led_Init();
 	Beep_Init();
 	DW_GPIO_Init();
-	Usart_Init();
+	Uart1_Init();
 	Spi_Init();
 	
+	
 	GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
+}
+
+void Program_Init(void)
+{
+	Usart1ParseDataCallback = UsartParseDataHandler;
+	parameter_init();
 }
 
 /*! ------------------------------------------------------------------------------------------------------------------
@@ -35,9 +51,12 @@
  */
 int main(void)
 {
+	LPFilter_Frac* p_Dis_Filter;
 	
 	Device_Init();
+	Program_Init();
 	Dw1000_Init();
+	p_Dis_Filter = New_LP_Frac(0.7);
 
     /* Loop forever initiating ranging exchanges. */
 	while(1)
@@ -46,8 +65,66 @@
 		Tag_App();
 #else 
 		Anchor_App();
+
 #endif
+		
 		//除UWB之外的其他代码...
+		dis_after_filter = LP_Frac_Update(p_Dis_Filter, dist_cm);
+		
+		if(dis_after_filter <= g_com_map[ALARM_DISTANCE])
+		{
+//			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;
+			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
+		{
+//			g_beep_on_time = 0;
+//			g_beep_off_time = 0;
+			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;
+			}
+		}
+		
+
 		
 	}
 }

--
Gitblit v1.9.3