From 45c860b9fb73046004be9665b09c20e5fa3a6ea8 Mon Sep 17 00:00:00 2001
From: chen <15335560115@163.com>
Date: 星期四, 24 四月 2025 18:27:40 +0800
Subject: [PATCH] V1.18版本,修改按钮为按下就震动,松开停止,心跳包改为原来60s一次

---
 keil/include/main/main.c |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/keil/include/main/main.c b/keil/include/main/main.c
index 72d51b7..6b17a2d 100644
--- a/keil/include/main/main.c
+++ b/keil/include/main/main.c
@@ -165,6 +165,7 @@
 }
 uint8_t control_close_flag;
 int16_t control_close_count;
+uint8_t close_state_flag;
 static void adc_callback(void *data, uint32_t number)
 {
     uint32_t *result = (uint32_t *)data;
@@ -195,6 +196,7 @@
 						userkey_state=2;
 					TCPHeartBeatUpload();//低电量休眠
 						control_close_flag=1;
+						close_state_flag=2;
 //						delay_ms(1000);//等待发送完成
 					}
 					power_low_flag=1;
@@ -258,6 +260,7 @@
 			TCPHeartBeatUpload();//静止休眠
 			//		delay_ms(1000);
 		control_close_flag=1;
+		close_state_flag=3;
 	}
 }
 
@@ -285,6 +288,8 @@
 		gps_need_data_flag=1;
 		gps_wait_count2=0;
 		gps_wait_count=0;
+		beepontime=0;
+		beep_start_flag=0;
 		}
 		if(control_close_flag)
 		{
@@ -292,18 +297,23 @@
 			{
 			gps_air780_power_change(0,0);//gps,4G关闭
 				
-			control_close_flag=0;
-			control_close_count=0;
-				if(userkey_state==4)
-				active_flag=0;
-				else if(userkey_state==3)
+
+				if(close_state_flag==4)
+				{active_flag=0;
+					TCP_reconnect_timer=0;//重置4G重连条件
+					flag_TCP_reconnectting = 1;
+				}else if(close_state_flag==3)
 				{
 				mcu_deep_sleep();
 				}
+				close_state_flag=0;
+			  control_close_flag=0;
+			  control_close_count=0;
 			}
 		}else{
 		control_close_count=0;
 		}
+//		HIDO_TimerTick();
 		LED_Task();
     //UWB状态检测
 if(!power_low_flag&&active_flag)//低供电下不需要检测重连
@@ -378,6 +388,7 @@
 	{	userkey_state=4;
 		TCPHeartBeatUpload();//立即上传心跳包
 		control_close_flag=1;
+		close_state_flag=4;
     //air_send_Task();
 //		gps_air780_power_change(0,0);//gps,4G关闭
 //		active_flag=0;
@@ -388,8 +399,11 @@
 }
 void  handle_single_click(void)
 {
-beepontime=1;
-beep_start_flag=1;
+//beepontime=1;
+//beep_start_flag=1;
+motor_off();
+//		motor_on_and_off(&motor_power_state);
+//		motor_power_state=1;
 }
 
 // 时间阈值定义
@@ -411,6 +425,7 @@
 {
 sos_state=WAIT_NEXT_RISING;
 falling_time=HIDO_TimerGetTick();
+motor_on();
 }
 void click_Task(void)
 {
@@ -479,11 +494,13 @@
 		{
 		click_count=0;
 		long_press_flag=1;
+			
 		sos_state=IDLE;	
 		}else{
 		click_count=0;
 		sos_state=IDLE;	
 		}
+		motor_off();
 		temp_rising_time=rising_time;
 	}
 }else if(sos_state==WAIT_NEXT_FALLING)
@@ -498,6 +515,7 @@
 			click_count=0;
 			sos_state=IDLE;
 		}
+
 	}
 }
 void UserKeyTask(void)
@@ -571,7 +589,7 @@
     ip2 = (g_com_map[TCP_IP_2]>>12&0xf)*1000+(g_com_map[TCP_IP_2]>>8&0xf)*100+(g_com_map[TCP_IP_2]>>4&0xf)*10+(g_com_map[TCP_IP_2]&0xf);
     ip3 = (g_com_map[TCP_IP_3]>>12&0xf)*1000+(g_com_map[TCP_IP_3]>>8&0xf)*100+(g_com_map[TCP_IP_3]>>4&0xf)*10+(g_com_map[TCP_IP_3]&0xf);
     port = g_com_map[TCP_PORT];
-    g_com_map[VERSION] = (1<<8)|15;
+    g_com_map[VERSION] = (1<<8)|18;
     LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id);
     LOG_INFO(TRACE_MODULE_APP,"固件版本:4G-GPS定位手环 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff);
     LOG_INFO(TRACE_MODULE_APP,"服务器地址: %d.%d.%d.%d:%d.\r\n",ip0,ip1,ip2,ip3,port);

--
Gitblit v1.9.3