mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-03 15:28:53 +08:00
board config: add define for adc voltage scaling
This commit is contained in:
@@ -147,6 +147,14 @@
|
||||
#define ADC_3V3_SCALE (2.0f) // The scale factor defined by HW's resistive divider (Rt+Rb)/ Rb
|
||||
#endif
|
||||
|
||||
#ifndef BOARD_ADC_POS_REF_V_FOR_CURRENT_CHAN
|
||||
#define BOARD_ADC_POS_REF_V_FOR_CURRENT_CHAN (3.3f) // Reference voltage for reading out the current channel
|
||||
#endif
|
||||
|
||||
#ifndef BOARD_ADC_POS_REF_V_FOR_VOLTAGE_CHAN
|
||||
#define BOARD_ADC_POS_REF_V_FOR_VOLTAGE_CHAN (3.3f) // Reference voltage for reading out the voltage channel
|
||||
#endif
|
||||
|
||||
/* Provide define for Bricks and Battery */
|
||||
|
||||
/* Define the default maximum voltage resulting from the bias on ADC termination */
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "parameters.h"
|
||||
|
||||
#include <px4_platform_common/log.h>
|
||||
#include <px4_platform_common/px4_config.h>
|
||||
#include <drivers/drv_adc.h>
|
||||
|
||||
namespace battery_status
|
||||
@@ -68,7 +69,7 @@ int update_parameters(const ParameterHandles ¶meter_handles, Parameters &par
|
||||
|
||||
} else if (parameters.battery_voltage_scaling < 0.0f) {
|
||||
/* apply scaling according to defaults if set to default */
|
||||
parameters.battery_voltage_scaling = (3.3f / px4_arch_adc_dn_fullcount());
|
||||
parameters.battery_voltage_scaling = (BOARD_ADC_POS_REF_V_FOR_VOLTAGE_CHAN / px4_arch_adc_dn_fullcount());
|
||||
param_set_no_notification(parameter_handles.battery_voltage_scaling, ¶meters.battery_voltage_scaling);
|
||||
}
|
||||
|
||||
@@ -78,7 +79,7 @@ int update_parameters(const ParameterHandles ¶meter_handles, Parameters &par
|
||||
|
||||
} else if (parameters.battery_current_scaling < 0.0f) {
|
||||
/* apply scaling according to defaults if set to default */
|
||||
parameters.battery_current_scaling = (3.3f / px4_arch_adc_dn_fullcount());
|
||||
parameters.battery_current_scaling = (BOARD_ADC_POS_REF_V_FOR_CURRENT_CHAN / px4_arch_adc_dn_fullcount());
|
||||
param_set_no_notification(parameter_handles.battery_current_scaling, ¶meters.battery_current_scaling);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user