From 79d5d6bcc3bc634ea2f977c0ecb1f1356554d4b0 Mon Sep 17 00:00:00 2001
From: zhyinch <zhyinch@gmail.com>
Date: 星期四, 07 十一月 2019 15:33:21 +0800
Subject: [PATCH] 修改串口数组个数bug,增加报警距离功能

---
 源码/核心板/Src/application/global_param.c   |    4 ++--
 源码/核心板/Src/application/beep_logic_app.c |   13 +++++++------
 源码/核心板/Src/ExternalDevices/beep.h       |    9 +++++++++
 源码/核心板/Src/stm32f10x_it.c               |    2 ++
 源码/核心板/Src/ExternalDevices/beep.c       |    7 +++++++
 源码/核心板/Src/OnChipDevices/Usart.h        |    2 +-
 6 files changed, 28 insertions(+), 9 deletions(-)

diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.c"
index 85bc0a1..5ef9931 100644
--- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.c"
+++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.c"
@@ -12,6 +12,13 @@
     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
     GPIO_Init(KEY0_GPIO, &GPIO_InitStructure);
 	
+	//    // Enable GPIO used for beep
+    GPIO_InitStructure.GPIO_Pin = RELAY1_PIN|RELAY2_PIN;
+    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
+    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
+    GPIO_Init(RELAY1_GPIO, &GPIO_InitStructure);
+	
+	
 //    // Enable GPIO used for beep
 //    GPIO_InitStructure.GPIO_Pin = BEEP_PIN;
 //    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.h" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.h"
index 130dcc4..b862d84 100644
--- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.h"
+++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/ExternalDevices/beep.h"
@@ -23,6 +23,15 @@
 #define OUT2_ON						GPIO_WriteBit(OUT2_GPIO, OUT2_PIN, Bit_SET)
 #define OUT2_OFF					GPIO_WriteBit(OUT2_GPIO, OUT2_PIN, Bit_RESET)
 
+#define RELAY1_GPIO  			GPIOB
+#define RELAY1_PIN  			GPIO_Pin_1
+#define RELAY1_ON						GPIO_WriteBit(RELAY1_GPIO, RELAY1_PIN, Bit_SET)
+#define RELAY1_OFF					GPIO_WriteBit(RELAY1_GPIO, RELAY1_PIN, Bit_RESET)
+
+#define RELAY2_GPIO  			GPIOB
+#define RELAY2_PIN  			GPIO_Pin_2
+#define RELAY2_ON						GPIO_WriteBit(RELAY2_GPIO, RELAY2_PIN, Bit_SET)
+#define RELAY2_OFF					GPIO_WriteBit(RELAY2_GPIO, RELAY2_PIN, Bit_RESET)
 
 void Beep_Init(void);
 
diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h"
index bdd2c30..320c7dc 100644
--- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h"
+++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/OnChipDevices/Usart.h"
@@ -30,7 +30,7 @@
 #define EUART_RX_DMA_CH	 		DMA1_Channel5
 #define EUART_TX_DMA_CH			DMA1_Channel4
 
-#define EUART_TX_FRM_SIZE		4				//发送队列中的最大帧数
+#define EUART_TX_FRM_SIZE		14				//发送队列中的最大帧数
 #define EUART_TX_FRMBUF_SIZE	200				//发送队列每帧缓存大小
 #define EUART_RX_BUF_SIZE		200				//接收缓存大小
 
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 74c8075..a40b977 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"
@@ -39,12 +39,13 @@
 			beep_state=1;
 		
 		}
-//		else if (min_dist <= g_com_map[ALARM_DISTANCE2])
-//		{
-//			beep_ontime = ONTIME2;
-//			beep_offtime = OFFTIME2;
-//			beep_state=1;
-//		}else if (min_dist <= g_com_map[ALARM_DISTANCE3])
+		else if (min_dist <= g_com_map[ALARM_DISTANCE2])
+		{
+			beep_ontime = ONTIME2;
+			beep_offtime = OFFTIME2;
+			beep_state=1;
+		}
+		//else if (min_dist <= g_com_map[ALARM_DISTANCE3])
 //		{
 //			beep_ontime = ONTIME3;
 //			beep_offtime = OFFTIME3;
diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/global_param.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/global_param.c"
index 3a68e3e..d8930cf 100644
--- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/global_param.c"
+++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/global_param.c"
@@ -30,14 +30,14 @@
 		g_com_map[COM_INTERVAL]=50;
 		g_com_map[MAX_REPORT_ANC_NUM]=2;
 		g_com_map[MIN_REPORT_ANC_NUM]=2;
-		g_com_map[DIST_OFFSET]=-40;
+		g_com_map[DIST_OFFSET]=-13;
 		#ifdef WORK_MODE_TAG
 			g_com_map[DEV_ROLE] =0x1;  //标签
 		#else
 			g_com_map[DEV_ROLE] =0x0;  //基站
 		#endif
 		g_com_map[ANC_POLL]=0;
-		g_com_map[ALARM_DEV] = 1;
+		g_com_map[ALARM_DEV] = 0;
 		g_com_map[ALARM_DISTANCE1] = 100;	//默认报警距离50cm
 		g_com_map[ALARM_DISTANCE2] = 600;	//默认报警距离50cm
 		g_com_map[ALARM_DISTANCE3] = 900;	//默认报警距离50cm
diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/stm32f10x_it.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/stm32f10x_it.c"
index c1e9ce1..96ad665 100644
--- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/stm32f10x_it.c"
+++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/stm32f10x_it.c"
@@ -63,6 +63,8 @@
 	{
 		tag_recv_timer++;
 		TagDistClear();
+		if(g_com_map[ALARM_DEV]!=0)
+			main_logic();
 		if(sync_timer==10)
 		{
 			GPIO_WriteBit(GPIOA, GPIO_Pin_9, Bit_SET);

--
Gitblit v1.9.3