diff --git a/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c b/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c index 7d3b725..e445818 100644 --- a/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c +++ b/APELib/Receiver_sync/src/receiver_Sync_Proc.s.c @@ -288,6 +288,7 @@ void Receiver_Sync_Proc( if(SYNC_FIRST_RUNING == sync_status) { TRACE(TRACE_RECEIVER_SYNC_ADDR, 3, 2); + Receiver_Sync_Memory_Free(); return ; } else if(SYNC_IDLE == sync_status) @@ -295,8 +296,10 @@ void Receiver_Sync_Proc( //只有指定地址标志位置位,才开始recv的处理 volatile uint32_t recv_start_first_sync_flag = LOAD_EX_W((uint32_t)RECV_FIRST_SYNC_START_FLAG); if(0xa5a55a5a != recv_start_first_sync_flag) + { + Receiver_Sync_Memory_Free(); return ; - + } TRACE(TRACE_RECEIVER_SYNC_ADDR, 3, 3); STORE_EX_W(&g_receiver_sync_status_SM_ptr->sync_status ,SYNC_FIRST_RUNING); __ucps2_synch(0); @@ -354,6 +357,7 @@ void Receiver_Sync_Proc( else { TRACE(TRACE_RECEIVER_SYNC_ADDR, 3, 7); + Receiver_Sync_Memory_Free(); return; }