Quellcode durchsuchen

adc 采集for V3版本修正

Signed-off-by: huhui <huhui@sharkgulf.com>
huhui vor 3 Jahren
Ursprung
Commit
79ae59b035
4 geänderte Dateien mit 33 neuen und 11 gelöschten Zeilen
  1. 2 0
      Applications/app/app.c
  2. 24 11
      Applications/bsp/adc.c
  3. 4 0
      Applications/foc/motor/motor.c
  4. 3 0
      Applications/foc/samples.c

+ 2 - 0
Applications/app/app.c

@@ -29,6 +29,7 @@ static u32 _app_plot_task(void *args);
 extern void PMSM_FOC_LogDebug(void);
 extern void err_code_log(void);
 extern void encoder_log(void);
+extern void sample_log(void);
 extern void thro_torque_log(void);
 extern void eCtrl_debug_log(void);
 extern measure_time_t g_meas_hall;
@@ -139,6 +140,7 @@ static u32 _app_report_task(void *p) {
 		//thro_torque_log();
 		//sys_debug("fan rpm %d, %d\n", mc_params()->fan[0].rpm, mc_params()->fan[1].rpm);
 		encoder_log();
+		sample_log();
 		///PMSM_FOC_LogDebug();
 		//eCtrl_debug_log();
 		//err_code_log();

+ 24 - 11
Applications/bsp/adc.c

@@ -348,13 +348,21 @@ static void adc_gpio_init(void) {
 	/* configure ADC pin, bus voltage sampling -- ADC_IN0(PA0) */
 	gpio_init(THROTTLE_V_ADC_GROUP, THROTTLE_V_ADC_MODE, GPIO_OSPEED_50MHZ, THROTTLE_V_ADC_PIN);
 #endif
-
-#ifdef TEMP_V_ADC_GROUP
-	rcu_periph_clock_enable(TEMP_V_ADC_GROUP);
-	/* configure ADC pin, temperature sampling -- ADC_IN11(PC1) */
-	gpio_init(TEMP_V_ADC_GROUP, TEMP_V_ADC_MODE, GPIO_OSPEED_50MHZ, TEMP_V_ADC_PIN);
+#ifdef THROTTLE2_V_ADC_GROUP
+	rcu_periph_clock_enable(THROTTLE2_V_ADC_RCU);
+	gpio_init(THROTTLE2_V_ADC_GROUP, THROTTLE2_V_ADC_MODE, GPIO_OSPEED_50MHZ, THROTTLE2_V_ADC_PIN);
 #endif
 
+#ifdef THROTTLE_5V_ADC_GROUP
+	rcu_periph_clock_enable(THROTTLE_5V_ADC_RCU);
+	/* configure ADC pin, bus voltage sampling -- ADC_IN0(PA0) */
+	gpio_init(THROTTLE_5V_ADC_GROUP, THROTTLE_5V_ADC_MODE, GPIO_OSPEED_50MHZ, THROTTLE_5V_ADC_PIN);
+#endif
+#ifdef THROTTLE2_5V_ADC_GROUP
+	rcu_periph_clock_enable(THROTTLE2_5V_ADC_RCU);
+	/* configure ADC pin, bus voltage sampling -- ADC_IN0(PA0) */
+	gpio_init(THROTTLE2_5V_ADC_GROUP, THROTTLE2_5V_ADC_MODE, GPIO_OSPEED_50MHZ, THROTTLE2_5V_ADC_PIN);
+#endif
 
 #ifdef U_VOL_ADC_GROUP
 	rcu_periph_clock_enable(U_VOL_ADC_RCU);
@@ -368,18 +376,23 @@ static void adc_gpio_init(void) {
 	rcu_periph_clock_enable(W_VOL_ADC_RCU);
 	gpio_init(W_VOL_ADC_GROUP, W_VOL_ADC_MODE, GPIO_OSPEED_50MHZ, W_VOL_ADC_PIN);
 #endif
-#ifdef MOS_TEMP_ADC_CHAN
+#ifdef MOS_TEMP_ADC_GROUP
 	rcu_periph_clock_enable(MOS_TEMP_ADC_RCU);
-	gpio_init(MOS_TEMP_ADC_CHAN, MOS_TEMP_ADC_MODE, GPIO_OSPEED_50MHZ, MOS_TEMP_ADC_PIN);
+	gpio_init(MOS_TEMP_ADC_GROUP, MOS_TEMP_ADC_MODE, GPIO_OSPEED_50MHZ, MOS_TEMP_ADC_PIN);
 #endif
-#ifdef MOS_TEMP1_ADC_CHAN
+#ifdef MOS_TEMP1_ADC_GROUP
 	rcu_periph_clock_enable(MOS_TEMP1_ADC_RCU);
-	gpio_init(MOS_TEMP1_ADC_CHAN, MOS_TEMP1_ADC_MODE, GPIO_OSPEED_50MHZ, MOS_TEMP1_ADC_PIN);
+	gpio_init(MOS_TEMP1_ADC_GROUP, MOS_TEMP1_ADC_MODE, GPIO_OSPEED_50MHZ, MOS_TEMP1_ADC_PIN);
 #endif
 
-#ifdef MOTOR_TEMP_ADC_CHAN
+#ifdef MOTOR_TEMP_ADC_GROUP
 	rcu_periph_clock_enable(MOTOR_TEMP_ADC_RCU);
-	gpio_init(MOTOR_TEMP_ADC_CHAN, MOTOR_TEMP_ADC_MODE, GPIO_OSPEED_50MHZ, MOTOR_TEMP_ADC_PIN);
+	gpio_init(MOTOR_TEMP_ADC_GROUP, MOTOR_TEMP_ADC_MODE, GPIO_OSPEED_50MHZ, MOTOR_TEMP_ADC_PIN);
+#endif
+
+#ifdef ZERO_ADC_GROUP
+	rcu_periph_clock_enable(ZERO_ADC_RCU);
+	gpio_init(ZERO_ADC_GROUP, ZERO_ADC_MODE, GPIO_OSPEED_50MHZ, ZERO_ADC_PIN);
 #endif
 
 }

+ 4 - 0
Applications/foc/motor/motor.c

@@ -126,16 +126,20 @@ static u32 _self_check_task(void *p) {
 		}
 	}
 	if (fan_pwm_is_running()) {
+	#ifdef GPIO_FAN1_IN_GROUP
 		if ((get_delta_ms(motor.fan[0].start_ts) >= 5000) && (motor.fan[0].rpm == 0)) {
 			mc_set_critical_error(FOC_CRIT_Fan1_Err);
 		}else if (motor.fan[0].rpm > 0) {
 			mc_clr_critical_error(FOC_CRIT_Fan1_Err);
 		}
+	#endif
+	#ifdef GPIO_FAN2_IN_GROUP
 		if ((get_delta_ms(motor.fan[1].start_ts) >= 5000) && (motor.fan[1].rpm == 0)) {
 			mc_set_critical_error(FOC_CRIT_Fan2_Err);
 		}else if (motor.fan[1].rpm > 0) {
 			mc_clr_critical_error(FOC_CRIT_Fan2_Err);
 		}
+	#endif
 	}
 	return 5;
 }

+ 3 - 0
Applications/foc/samples.c

@@ -266,4 +266,7 @@ void sample_mos_temp(void) {
 #endif
 }
 
+void sample_log(void) {
+	sys_debug("Thro Vol %f-%f, %f-%f\n", get_thro_5v_float(), get_throttle_float(), get_thro2_5v_float(), get_throttle2_float());
+}