Selaa lähdekoodia

确保采集器获得传感器数据后,再启动服务给控制器

guoqiang 2 vuotta sitten
vanhempi
commit
3859ba8bf5
2 muutettua tiedostoa jossa 12 lisäystä ja 14 poistoa
  1. 8 14
      Core/Src/kzq.c
  2. 4 0
      Core/Src/main.c

+ 8 - 14
Core/Src/kzq.c

@@ -311,7 +311,7 @@ void Sen_CangState_old(uint8_t* F_STATE)
 	F_STATE[3] = 0x11;
 	F_STATE[4] = 0x00;
 	
-	
+
 	for(k = 0;k < 8;k++)								//查询1-8仓状态
 	{//for(k = 0;k < 8;k++)								//查询1-8仓 状态   开始
 		i = k*2;
@@ -376,15 +376,6 @@ void Sen_CangState_old(uint8_t* F_STATE)
 	}////for(k = 0;k < 8;k++)								//查询1-8仓 状态   结束
 	
 	
-		 //李伟添加  20211027   上电的10s之内  强制输出状态是受控的   全部是关闭状态
-		if(tickMain<PowerOnTime_Delay)
-		{
-				for(k = 0;k < 16;k++)								//查询1-8仓状态
-				{
-						F_STATE[5+k] = 0;
-				}
-		
-		}
 }
 #define Angle_cs  (180.0f/32768.0f)
 uint16_t Read_ZhencheSensorData1(uint8_t* pTx)
@@ -3413,20 +3404,23 @@ uint16_t Get_CangData(uint8_t* buffer, uint16_t buffer_size, uint8_t CangNo) //
 	}
 	
 	
-	// xj status
+	// xj status , just one per cang
 	if((2 != pcang->XYF_Type )&& (pcang->XYF_Num[CangNo - 1] > 0)){
-		for(i = 0; i < pcang->XYF_Num[CangNo - 1]; i++){
 
+		for(i = 0; i < pcang->XYF_Num[CangNo - 1]; i++){
+			
 			if((offset + IO_VALUE_SIZE) <= buffer_size){
 				buffer[offset] = SENSOR_TYPE_UNLOADSTATUS;
 				buffer[offset+1] = ((CangNo << 4)|i);   //cang & id
 				buffer[offset+2] = 0x00;  //IO type
-				buffer[offset+3] = pxyf[XYF_Start+i+1].XYF_Error? State_Error:pxyf[XYF_Start+i+1].XYF_State2;
+				buffer[offset+3] = (pxyf[XYF_Start+i+1].XYF_Error? State_Error:pxyf[XYF_Start+i+1].XYF_State2);
 				offset += IO_VALUE_SIZE;
 			}else{
 				return offset;
 			}
+
 		}
+
 	}
 	
 
@@ -4581,7 +4575,7 @@ uint16_t Tem_SetType(uint8_t* pTx)
 		return 0;
 }
 
-uint32_t Version_Soft[8] = {2, 2, 3, 13, 1, 1, 0, 20221013};
+uint32_t Version_Soft[8] = {2, 2, 3, 13, 1, 1, 0, 20221109};
 uint16_t Read_SoftVersion(uint8_t *pTx)
 {
 	int i;

+ 4 - 0
Core/Src/main.c

@@ -2883,6 +2883,10 @@ void StartTask04(void *argument)                                    //
 	extern int data_lengthU2;	
 	extern int flagU2Rx;
 	extern uint8_t USART2_RX_BUF002_print[Uart2_BUF_SIZE];
+	
+	//ÑÓʱ1S Æô¶¯
+	osDelay(1000); 
+	
   /* Infinite loop */
   for(;;)
   {