Pārlūkot izejas kodu

V2.1.9_20211008 TC011000-MS0000HK-V0r0_1
1、修改I2C操作SDA方式,解决频繁封波导致电机异常的问题。

dail 3 gadi atpakaļ
vecāks
revīzija
8bde0b7f45

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 1781 - 1781
MDK-ARM/QD007A_CTL_APP/QD007A_CTL_APP_CRC.hex


BIN
MDK-ARM/bin/MC_VL65XX&VS75XX(125K)-TC011000-MS0000HK-V2.1.9.0.0_20211008_1.bin


BIN
MDK-ARM/bin/QD007A_CTL_APP.bin


+ 4 - 15
User/Src/I2C_Analog.c

@@ -2,23 +2,12 @@
 
 static void _SDA_IN(I2C_Handle_Struct_t* I2C_Handle)
 {
-  GPIO_InitTypeDef GPIO_InitStruct;
-
-  GPIO_InitStruct.Pin = I2C_Handle->SDA_GPIO_Pin;
-  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
-  GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
-	GPIO_InitStruct.Pull = GPIO_PULLUP;
-  HAL_GPIO_Init(I2C_Handle->SDA_GPIOx, &GPIO_InitStruct);
+	HAL_GPIO_WritePin(I2C_Handle->SDA_GPIOx, I2C_Handle->SDA_GPIO_Pin, GPIO_PIN_SET);
 }
 
 static void _SDA_OUT(I2C_Handle_Struct_t* I2C_Handle)
 {
-  GPIO_InitTypeDef GPIO_InitStruct;
-
-  GPIO_InitStruct.Pin = I2C_Handle->SDA_GPIO_Pin;
-  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
-	GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
-  HAL_GPIO_Init(I2C_Handle->SDA_GPIOx, &GPIO_InitStruct);
+	__NOP();
 }
 
 static void _GPIO_CLK_Init(GPIO_TypeDef* GPIOx)
@@ -59,12 +48,12 @@ void I2C_GPIO_Config(I2C_Handle_Struct_t* I2C_Handle)
 
   GPIO_InitStruct.Pin = I2C_Handle->SCL_GPIO_Pin;
   GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
-  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD;
   HAL_GPIO_Init(I2C_Handle->SCL_GPIOx, &GPIO_InitStruct);
 	
 	GPIO_InitStruct.Pin = I2C_Handle->SDA_GPIO_Pin;
   GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_MEDIUM;
-  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
+  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD;
   HAL_GPIO_Init(I2C_Handle->SDA_GPIOx, &GPIO_InitStruct);
 }
 

+ 2 - 4
修改说明.txt

@@ -423,7 +423,5 @@ V2.1.9_20211008 TC011000-MS0000HK-V0r0
 1、里程统计增加过滤,避免干扰信号导致里程统计不准;
 2、针对开机后母线电压采集上升缓慢,优化SOC初始值的计算方法。
 
-
-
-
-
+V2.1.9_20211008 TC011000-MS0000HK-V0r0_1
+1、修改I2C操作SDA方式,解决频繁封波导致电机异常的问题。

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels