FastLED 3.10.8
Loading...
Searching...
No Matches

◆ calculate_unscaled_power_mW() [2/3]

fl::u32 calculate_unscaled_power_mW ( fl::span< const CRGB > leds)

Parameters
ledsspan of LED data to check

Definition at line 248 of file power_mgt.cpp.hpp.

248 {
249 fl::u32 red32 = 0, green32 = 0, blue32 = 0;
250
251 // Iterate using span's safe indexing
252 for(size_t i = 0; i < leds.size(); i++) {
253 red32 += map_power_value(leds[i].r);
254 green32 += map_power_value(leds[i].g);
255 blue32 += map_power_value(leds[i].b);
256 }
257
258 red32 *= gPowerModel().red_mW;
259 green32 *= gPowerModel().green_mW;
260 blue32 *= gPowerModel().blue_mW;
261
262 red32 >>= 8;
263 green32 >>= 8;
264 blue32 >>= 8;
265
266 fl::u32 total = red32 + green32 + blue32 + (gPowerModel().dark_mW * leds.size());
267
268 return total;
269}
CRGB leds[1]
static PowerModelRGB & gPowerModel() FL_NO_EXCEPT
Global RGB power model (initialized to WS2812 @ 5V defaults, linear response)
static fl::u8 map_power_value(fl::u8 brightness) FL_NO_EXCEPT
fl::u8 blue_mW
Blue channel power at full brightness (255), in milliwatts.
Definition power_mgt.h:33
fl::u8 dark_mW
Dark LED baseline power consumption, in milliwatts.
Definition power_mgt.h:34
fl::u8 red_mW
Red channel power at full brightness (255), in milliwatts.
Definition power_mgt.h:31
fl::u8 green_mW
Green channel power at full brightness (255), in milliwatts.
Definition power_mgt.h:32

References PowerModelRGB::blue_mW, PowerModelRGB::dark_mW, FL_NO_EXCEPT, gPowerModel(), PowerModelRGB::green_mW, leds, map_power_value(), and PowerModelRGB::red_mW.

Referenced by calculate_max_brightness_for_power_mW(), calculate_unscaled_power_mW(), calculate_unscaled_power_mW(), controller_unscaled_power_mW(), and fl::detail::enable_rgbw_power_estimate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: