From 4936a48d23b9aef4ef44e4cf333e75cb8d49e37c Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期四, 27 二月 2025 15:02:54 +0800
Subject: [PATCH] 2.15,加入写入参数时候,如果没擦除成功会一直擦除的机制,最多200次  不成功就重启。

---
 Src/application/global_param.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/Src/application/global_param.c b/Src/application/global_param.c
index c60512e..13f7acd 100644
--- a/Src/application/global_param.c
+++ b/Src/application/global_param.c
@@ -33,15 +33,28 @@
     }
     return 0;
 }
+uint8_t resultnum;
 uint32_t save_com_map_to_flash(void)
 {
 	uint32_t result = 0;
+    resultnum=0;
     if(parameter_check()) //参数错误,不保存
     {
         return 1;
     }
 	__disable_irq();
+    while(1)
+    {
 	result = FLASH_Prepare(FLASH_IAP_CTRL_MAP, (COM_MAP_SIZE<<1));
+        if(result)
+        {break;}
+        else
+        {resultnum++;}
+        if(resultnum>200)
+        {
+        HAL_NVIC_SystemReset();
+        }
+    }
 	if(result)
 		result = FLASH_Write(FLASH_IAP_CTRL_MAP, (const uint8_t*)g_com_map, (COM_MAP_SIZE<<1)); 
 	__enable_irq();

--
Gitblit v1.9.3