Przeglądaj źródła

版本号为2.0.0.1,10套电池包使用程序,增加can数据发送,最高最低单体电压和SOC

CHENJIE-PC\QiXiang_CHENJIE 3 lat temu
rodzic
commit
8da66fd9f3
3 zmienionych plików z 22 dodań i 6 usunięć
  1. 2 2
      inc/app.h
  2. 19 4
      src/CANTask.c
  3. 1 0
      src/TcpTask.c

+ 2 - 2
inc/app.h

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

+ 19 - 4
src/CANTask.c

@@ -24,9 +24,9 @@
 #include "UDSService.h"
 
 
-
+extern UINT32 Timer_count;
 extern volatile bool Sleep_flag;
-
+extern UartReadMsgType UartReadMsg;
 CAN_Msg_Type CanRxMsg[2];
 /*线程声明*/
 #define 			PROC_CAN_RX_TASK_STACK_SIZE			(1024)
@@ -110,9 +110,24 @@ static void Can_Receive()
 					{	
 						UDS_Service();
 						udsFlag = 0;							
+					}
+					if(Timer_count%10==0&&UartReadMsg.len>0)
+					{
+						CAN_Msg_Type CANSendBuffer ={0};
+						CANSendBuffer.Id = 0x7A9;
+						CANSendBuffer.DLC = 8;
+						CANSendBuffer.Data[0] = UartReadMsg.data[(0x19+BATT_CELL_VOL_NUM+BATT_TEMP_NUM+BATT_OTHER_TEMP_NUM)*2+1];
+						CANSendBuffer.Data[1] = UartReadMsg.data[(0x19+BATT_CELL_VOL_NUM+BATT_TEMP_NUM+BATT_OTHER_TEMP_NUM)*2];
+						CANSendBuffer.Data[2] = UartReadMsg.data[(0x1A+BATT_CELL_VOL_NUM+BATT_TEMP_NUM+BATT_OTHER_TEMP_NUM)*2+1];
+						CANSendBuffer.Data[3] = UartReadMsg.data[(0x1A+BATT_CELL_VOL_NUM+BATT_TEMP_NUM+BATT_OTHER_TEMP_NUM)*2];
+						CANSendBuffer.Data[4] = UartReadMsg.data[(0x0B+BATT_CELL_VOL_NUM+BATT_TEMP_NUM+BATT_OTHER_TEMP_NUM)*2+1];
+						CANSendBuffer.Data[5] = UartReadMsg.data[(0x0B+BATT_CELL_VOL_NUM+BATT_TEMP_NUM+BATT_OTHER_TEMP_NUM)*2];
+						CANSendBuffer.Data[6] = 0x00;
+						CANSendBuffer.Data[7] = 0x00;
+						HAL_Can_Transmit(CANSendBuffer);
 					}		
-				break;
-			}
+					break;
+				}
 	        case PROCESS_CAN_STATE_SLEEP:
 	        {	            
 	            HAL_Can_Sleep();	 

+ 1 - 0
src/TcpTask.c

@@ -468,6 +468,7 @@ static void TcpDataInfoAssembleSend()
         else
         {
             send_counter = 0;
+            return;
         }
     }
     if(send_counter>0xffff)