From 6ae3d4efdc752bb9ae0758b54ddf00d3af761f39 Mon Sep 17 00:00:00 2001
From: zhangbo <zhangbo@qq.com>
Date: 星期六, 05 七月 2025 14:44:19 +0800
Subject: [PATCH] V1.30修改了5V输入,反复插拔串口导致的死机问题,现在是关闭所有电源之后,延时200ms的之后才会拉低电源,保留串口DEBUG能看到看门狗的复位日志输出

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

diff --git a/keil/include/main/main.c b/keil/include/main/main.c
index dbfd129..8be9910 100644
--- a/keil/include/main/main.c
+++ b/keil/include/main/main.c
@@ -580,7 +580,7 @@
 //		}
     g_com_map[MODBUS_MODE] = 0;
 		log_4g_enable_flag=g_com_map[LOG_4G_ENABLE];
-    g_com_map[VERSION] = (1<<8)|29;
+    g_com_map[VERSION] = (1<<8)|30;
           
         
     LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id);
@@ -732,19 +732,39 @@
             }
             else 
             {
-                if(state5v==1)
+//                if(state5v==1)
+//                {
+//                    g_com_map[MODBUS_MODE] = 0;
+//                    state5v=0;
+//                    state5V_prase_flag=state5v;
+//                    gps_prase_flag=1;//恢复gps解析
+//                    uart1_change_from_debug_to_gps();//测试
+//    //                PCA9555_Set_One_Value_Output(MCU_A,0);//输出低电平切换为GPS
+//                PCA9555_Set_One_Value_Output(LED_POWER,0);//输出低电平关闭LED
+//                PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);
+//                PCA9555_Set_One_Value_Output(GPS_POWER,0);//关GPS
+//                PCA9555_Set_One_Value_Output(PWR_ENABLE,0);//低电平关闭
+//                                delay_us(1000000);
+//                                  
+//                }
+               if(state5v==1)
                 {
                     g_com_map[MODBUS_MODE] = 0;
                     state5v=0;
                     state5V_prase_flag=state5v;
-                    gps_prase_flag=1;//恢复gps解析
-                    uart1_change_from_debug_to_gps();//测试
-    //                PCA9555_Set_One_Value_Output(MCU_A,0);//输出低电平切换为GPS
+//                    gps_prase_flag=1;//恢复gps解析
+//                    uart1_change_from_debug_to_gps();//测试
+    //                PCA9555_Set_One_Value_Output(MCU_A,0);//输出低电平切换为GPS  
+                    //保留串口输出到debug口这样可以看到看门狗的复位
+                //关闭电源前检查PCA输出脚的电平保证不供电在关闭电源脚    
                 PCA9555_Set_One_Value_Output(LED_POWER,0);//输出低电平关闭LED
+                PCA9555_Set_One_Value_Output(TTS_ENABLE,0);
                 PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);
                 PCA9555_Set_One_Value_Output(GPS_POWER,0);//关GPS
+                delay_ms(200);
+                    
                 PCA9555_Set_One_Value_Output(PWR_ENABLE,0);//低电平关闭
-                                delay_us(1000000);
+
                                   
                 }
             }

--
Gitblit v1.9.3