From 19307baf27ba013e0803363ff1d60a95d0171cdc Mon Sep 17 00:00:00 2001 From: payton Date: Fri, 8 Sep 2023 16:12:56 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E5=8F=82=E6=95=B0=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c | 19 +++++++++++++++++-- .../lib/source/sifar/code/include/sf_common.h | 3 ++- .../sifar/code/source/common/sf_common.c | 12 ++++++++++++ 3 files changed, 31 insertions(+), 3 deletions(-) diff --git a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c index b5e0f2d63..b8b92dd8c 100755 --- a/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c +++ b/code/application/source/cardv/SrcCode/UIWnd/LVGL_SPORTCAM/UIInfo/UIInfo.c @@ -501,6 +501,16 @@ void Load_MenuInfo(void) if(Check_OTA() == TRUE){ DBG_DUMP("OTA success, reset system param\n"); + + #if HUNTING_CAMERA_MCU == ENABLE + if(sf_get_ui_para_flag()) + { + memcpy(&origInfo, ¤tInfo, sizeof(currentInfo)); + memcpy(&origInfo_check, ¤tInfo, sizeof(currentInfo)); + return; + } + #endif + SysResetFlag(); #if HUNTING_CAMERA_MCU == ENABLE @@ -515,7 +525,7 @@ void Load_MenuInfo(void) //origInfo_check = currentInfo; memcpy(&origInfo, ¤tInfo, sizeof(currentInfo)); memcpy(&origInfo_check, ¤tInfo, sizeof(currentInfo)); - sf_share_mem_customer_down(0); + //sf_share_mem_customer_down(0); #endif return; } @@ -698,14 +708,19 @@ EXIT: } if(((UIMenuStoreInfo*)tmpInfo)->uhInfoSize == sizeof(currentInfo)){ - memcpy(¤tInfo, tmpInfo, sizeof(currentInfo)); + #if HUNTING_CAMERA_MCU == ENABLE + if(!sf_get_ui_para_flag()) + { + memcpy(¤tInfo, tmpInfo, sizeof(currentInfo)); + } if(currentInfo.OtaFlag) { SysResetFlag(); currentInfo.uhInfoSize = sizeof(currentInfo); } #endif + } else{ DBG_WRN("menu info size loaded from flash seems incorrect(old:%lu new:%lu), reset menu info\n", diff --git a/code/lib/source/sifar/code/include/sf_common.h b/code/lib/source/sifar/code/include/sf_common.h index e260e189a..5fc9f50e4 100755 --- a/code/lib/source/sifar/code/include/sf_common.h +++ b/code/lib/source/sifar/code/include/sf_common.h @@ -123,5 +123,6 @@ UINT32 sf_cardv_hd_cap_start(void); void sf_cardv_set_wait_shared_condition(int in); int sf_cardv_para_signaling_start(void); UINT32 sf_cardv_wifi_send(void); - +void sf_set_ui_para_flag(UINT8 flag); +UINT8 sf_get_ui_para_flag(void); #endif diff --git a/code/lib/source/sifar/code/source/common/sf_common.c b/code/lib/source/sifar/code/source/common/sf_common.c index f74db15c2..b433bcb87 100755 --- a/code/lib/source/sifar/code/source/common/sf_common.c +++ b/code/lib/source/sifar/code/source/common/sf_common.c @@ -89,6 +89,7 @@ static pthread_cond_t condition; static pthread_mutex_t Param_mutexLock; static int shared_condition = 1; static SINT32 WifiSocket = 0; +static UINT8 UiparaFlag = 0; static SF_THREAD_S UpgradeTskParam = { .IsRun = 0, @@ -1617,6 +1618,7 @@ static SINT32 sf_cardv_proccess_cmd_para_update(SF_MESSAGE_BUF_S *pMessageBuf) { case SF_PARA_CMD_UPDATE: //MLOGI("NeedTimeSyncStartUp = %d\n",puiPara->NeedTimeSyncStartUp); + sf_set_ui_para_flag(1); sf_share_mem_customer_update(); //MLOGI("NeedTimeSyncStartUp = %d\n",puiPara->NeedTimeSyncStartUp); break; @@ -2642,4 +2644,14 @@ UINT32 sf_cardv_wifi_send(void) } } return 0; +} + +UINT8 sf_get_ui_para_flag(void) +{ + return UiparaFlag; +} + +void sf_set_ui_para_flag(UINT8 flag) +{ + UiparaFlag = flag; } \ No newline at end of file