Procházet zdrojové kódy

北京6060-001测试,增加升级BMS时,UART接收为0的复位,版本号为1.2.1.17

CHENJIE-PC\QiXiang_CHENJIE před 3 roky
rodič
revize
6a5edc0b78
2 změnil soubory, kde provedl 17 přidání a 1 odebrání
  1. 1 1
      inc/app.h
  2. 16 0
      src/UartTask.c

+ 1 - 1
inc/app.h

@@ -34,7 +34,7 @@ extern "C" {
 #define HWVERSION		    0x0102    //硬件主版本,现为V1.2板
 #define	BLSWVERSION		0x01020000    //BootLoader版本号V1.2.0.0
 #define	DRVSWVERSION		0x01040000     //驱动层版本号V1.4.0.0
-#define	APPSWVERSION		0x01020110     
+#define	APPSWVERSION		0x01020111     
 
 //--------------------------------------------------------------------------------
 

+ 16 - 0
src/UartTask.c

@@ -1669,6 +1669,22 @@ UINT8 SP_BMS_Update_Query(UINT8* pSend,UINT32 sendLen, UINT8* pRead, UINT32 read
 		if (isRecvComplete == true)
 		{
 			isRecvComplete = false;
+			if(*(pRead+0)!=0xEB)
+			{
+				USARTdrv->Uninitialize();
+				osDelay(100);
+				USARTdrv->Initialize(USART_callback);
+				USARTdrv->PowerControl(ARM_POWER_FULL);
+				USARTdrv->Control(ARM_USART_MODE_ASYNCHRONOUS |
+						ARM_USART_DATA_BITS_8 |
+						ARM_USART_PARITY_NONE |
+						ARM_USART_STOP_BITS_1 |
+						ARM_USART_FLOW_CONTROL_NONE, 9600);
+				#ifdef USING_PRINTF
+					printf("\nuart reset in \n");	
+				#endif
+				return  0;
+			}
 			return readLen;
 		}
 		else