FastLED 3.10.6
Loading...
Searching...
No Matches

◆ encodeAPA102()

FL_NO_INLINE void fl::Channel::encodeAPA102 ( Channel & channel,
PixelIterator & pixels,
bool managed,
fl::vector_psram< u8 > & output )
staticprivate

Definition at line 688 of file channel.cpp.hpp.

690 {
691 const SpiChipset chipset = spiChipsetFor(channel);
692 if (tryEncodeManagedSpi(channel, pixels, managed, output, chipset)) {
693 return;
694 }
695 const bool hdGamma = chipset == SpiChipset::APA102HD ||
696 chipset == SpiChipset::DOTSTARHD ||
697 chipset == SpiChipset::HD107HD;
698 pixels.writeAPA102(&output, hdGamma);
699}
void writeAPA102(CONTAINER_UIN8_T *out, bool hd_gamma=false) FL_NO_EXCEPT
Encode pixels in APA102/DOTSTAR format (zero allocation)
FL_NO_INLINE bool tryEncodeManagedSpi(Channel &channel, PixelIterator &pixels, bool managed, fl::vector_psram< u8 > &output, SpiChipset chipset) FL_NO_EXCEPT
Shared color-managed SPI override check.
SpiChipset spiChipsetFor(const Channel &channel) FL_NO_EXCEPT
SpiChipset
LED chipsets with SPI interface (clocked protocols) Modern type-safe enum class - prefer this for new...
@ APA102HD
APA102 LED chipset with 5-bit gamma correction.
@ DOTSTARHD
APA102HD LED chipset alias.
@ HD107HD
Same as APA102HD, but in turbo 40-mhz mode.

References Channel(), fl::APA102HD, fl::DOTSTARHD, fl::FL_NO_EXCEPT, and fl::HD107HD.

+ Here is the call graph for this function: