原理图中ADC为差分采样,连在单片机的PC0和PC1引脚,我cubeMx中配置的为ADC1的IN1的差分采样,
我现在要计算出通过R27的电流,按照下面的公式计算对吗?
[C] 纯文本查看 复制代码 /* 其中,dat为获得的差分通道ADC的值,ref为内部参考电压(单位为mV) */
static float getDiffCurrent(const int16_t dat, float ref)
{
// float voltage_diff = (dat * ref) / 2048.0f; // 差分电压(单位:V)
float voltage_diff = (dat * ref ) / 4095.0f; // 差分电压(单位:mV)
float current = (voltage_diff / 100.0f) * 1000.0f; // 电流(单位:mA,R27 = 0.1Ω)
return current;
}
|