Huyi 1 年之前
父节点
当前提交
d1822ee0fd

+ 6 - 3
Drivers/Modules/bc260y/Bc260y_Initialize.c

@@ -162,10 +162,13 @@ void INITIALIZE_ProcessHandle(void)
 // ³õʼ»¯ÓÕÒò´¦Àí
 void INITIALIZE_TriggerHandle(void)
 {
-	enum Result result =bc260y.ready();
-	if(result==Result_Success)
+	if((REGIST_GetStatus() != REGIST_Status_Being) && (UDPCLIENT_GetStatus() != UDPCLIENT_Status_Being))
 	{
-		INITIALIZE_Start();
+		enum Result result =bc260y.ready();
+		if(result==Result_Success)
+		{
+			INITIALIZE_Start();
+		}
 	}
 }
 

+ 11 - 7
Drivers/Modules/bc260y/bc260y.c

@@ -1699,13 +1699,17 @@ enum Result bc260y_ready(void)
 	uint8_t  RDY[5]="RDY";
 	if(memmem(AT_result(),AT_result_length(),RDY,strlen((char *)RDY)) != 0)
 	{
-		// 发送日志
-		Log_Printf_Debug("AT返回: %d\r\n", AT_result_length());
-		Log_SendArray_Debug(AT_result(), AT_result_length());
-		// 成功结果
-		result = Result_Success;
-		// 清理一下AT返回结果缓存
-		AT_Clear_Result();
+		uint32_t last_time = AT_wait_time();
+		if(last_time > 20) // 过10ms之后再取数据,避免数据截断。
+		{
+			// 发送日志
+			Log_Printf_Debug("AT返回: %d\r\n", AT_result_length());
+			Log_SendArray_Debug(AT_result(), AT_result_length());
+			// 成功结果
+			result = Result_Success;
+			// 清理一下AT返回结果缓存
+			AT_Clear_Result();
+		}
 	}
 	return result;
 }

+ 6 - 3
Drivers/Modules/ec800m/Ec800m_Initialize.c

@@ -164,10 +164,13 @@ void INITIALIZE_ProcessHandle(void)
 // ³õʼ»¯ÓÕÒò´¦Àí
 void INITIALIZE_TriggerHandle(void)
 {
-	enum Result result =ec800m.ready();
-	if(result==Result_Success)
+	if((REGIST_GetStatus() != REGIST_Status_Being) && (UDPCLIENT_GetStatus() != UDPCLIENT_Status_Being))
 	{
-		INITIALIZE_Start();
+		enum Result result =ec800m.ready();
+		if(result==Result_Success)
+		{
+			INITIALIZE_Start();
+		}
 	}
 }
 

+ 11 - 7
Drivers/Modules/ec800m/ec800m.c

@@ -1380,13 +1380,17 @@ enum Result ec800m_ready(void)
 	uint8_t  RDY[5]="RDY";
 	if(memmem(AT_result(),AT_result_length(),RDY,strlen((char *)RDY)) != 0)
 	{
-		// 发送日志
-		Log_Printf_Debug("AT返回: %d\r\n", AT_result_length());
-		Log_SendArray_Debug(AT_result(), AT_result_length());
-		// 成功结果
-		result = Result_Success;
-		// 清理一下AT返回结果缓存
-		AT_Clear_Result();
+		uint32_t last_time = AT_wait_time();
+		if(last_time > 20) // 过10ms之后再取数据,避免数据截断。
+		{
+			// 发送日志
+			Log_Printf_Debug("AT返回: %d\r\n", AT_result_length());
+			Log_SendArray_Debug(AT_result(), AT_result_length());
+			// 成功结果
+			result = Result_Success;
+			// 清理一下AT返回结果缓存
+			AT_Clear_Result();
+		}
 	}
 	return result;
 }