Fix charge calculation

This commit is contained in:
2025-02-15 22:41:34 +01:00
parent ca37aa972b
commit 7ed58afea0
6 changed files with 14 additions and 13 deletions

View File

@@ -115,10 +115,10 @@ float InfraredLED::modelChargeConsumptionOn(uint16_t durationMs) {
constexpr float resolution = 1 << DUTY_RESOLUTION;
if (this->ledPin == IR_BOTTOM_PIN) {
return durationMs *
PowerParameters::CurrentConsumptions::CURRENT_LED_IR_BOTTOM * 10e6;
(PowerParameters::CurrentConsumptions::CURRENT_LED_IR_BOTTOM) / 10e6f;
} else if (this->ledPin == IR_FRONT_PIN) {
return durationMs *
PowerParameters::CurrentConsumptions::CURRENT_LED_IR_FRONT * 10e6;
(PowerParameters::CurrentConsumptions::CURRENT_LED_IR_FRONT) / 10e6f;
}
return NAN;
}
@@ -126,6 +126,6 @@ float InfraredLED::modelChargeConsumptionOn(uint16_t durationMs) {
float InfraredLED::modelChargeConsumptionSendFrequency(uint16_t durationMs) {
// Float to force float division without casting
return durationMs * this->modelCurrentConsumption(DUTY_CYCLE_FREQUENCY) *
10e6;
return (durationMs * this->modelCurrentConsumption(DUTY_CYCLE_FREQUENCY)) /
10e6f;
}