FastLED 3.9.15
Loading...
Searching...
No Matches

◆ writeByte()

void fl::DigitalMultiWrite8::writeByte ( u8 byte) const
inline

Write a single bitmask byte to the 8 pins.

Same as write() but optimized for the single-byte case in timing-critical hot loops (clockless bit-banging). Avoids span iteration overhead — inlines directly to two nibble LUT lookups.

Definition at line 46 of file pins.h.

46 {
47 const u8 lo_nib = byte & 0x0F;
48 const u8 hi_nib = (byte >> 4) & 0x0F;
49 applyNibble(mSetLo[lo_nib], mClrLo[lo_nib]);
50 applyNibble(mSetHi[hi_nib], mClrHi[hi_nib]);
51 }
PinList mClrLo[16]
Definition pins.h:71
PinList mSetHi[16]
Definition pins.h:72
static void applyNibble(const PinList &set, const PinList &clr)
Definition pins.cpp.hpp:256
PinList mSetLo[16]
Definition pins.h:70
PinList mClrHi[16]
Definition pins.h:73
unsigned char u8
Definition stdint.h:131

References applyNibble(), mClrHi, mClrLo, mSetHi, mSetLo, and writeByte().

Referenced by writeByte().

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