FastLED 3.9.12
Loading...
Searching...
No Matches
fastspi_types.h
Go to the documentation of this file.
1
3
4#ifndef __INC_FASTSPI_TYPES_H
5#define __INC_FASTSPI_TYPES_H
6
7#include "fl/force_inline.h"
8#include "fl/namespace.h"
9#include "fl/unused.h"
10
12
18
20#define SPI_B0 (RGB_BYTE0(RGB_ORDER) + (MASK_SKIP_BITS & SKIP))
22#define SPI_B1 (RGB_BYTE1(RGB_ORDER) + (MASK_SKIP_BITS & SKIP))
24#define SPI_B2 (RGB_BYTE2(RGB_ORDER) + (MASK_SKIP_BITS & SKIP))
26#define SPI_ADVANCE (3 + (MASK_SKIP_BITS & SKIP))
28
36class DATA_NOP {
37public:
40 static FASTLED_FORCE_INLINE uint8_t adjust(FASTLED_REGISTER uint8_t data) { return data; }
41
46 static FASTLED_FORCE_INLINE uint8_t adjust(FASTLED_REGISTER uint8_t data, FASTLED_REGISTER uint8_t scale) { return scale8(data, scale); }
47
50 static FASTLED_FORCE_INLINE void postBlock(int /* len */, void* context = NULL) {
51 FASTLED_UNUSED(context);
52 }
53};
54
56#define FLAG_START_BIT 0x80
57
60#define MASK_SKIP_BITS 0x3F
61
64
66#define SPEED_DIV_2 2
68#define SPEED_DIV_4 4
70#define SPEED_DIV_8 8
72#define SPEED_DIV_16 16
74#define SPEED_DIV_32 32
76#define SPEED_DIV_64 64
78#define SPEED_DIV_128 128
80
83#define MAX_DATA_RATE 0
84
86
87#endif
Dummy class for output controllers that need no data transformations.
static FASTLED_FORCE_INLINE uint8_t adjust(FASTLED_REGISTER uint8_t data)
Hook called to adjust a byte of data before writing it to the output.
static FASTLED_FORCE_INLINE uint8_t adjust(FASTLED_REGISTER uint8_t data, FASTLED_REGISTER uint8_t scale)
Hook called to adjust a byte of data before writing it to the output.
static FASTLED_FORCE_INLINE void postBlock(int, void *context=NULL)
Hook called after a block of data is written to the output.
LIB8STATIC_ALWAYS_INLINE uint8_t scale8(uint8_t i, fract8 scale)
Scale one byte by a second one, which is treated as the numerator of a fraction whose denominator is ...
Definition scale8.h:34
Implements the FastLED namespace macros.
#define FASTLED_NAMESPACE_END
End of the FastLED namespace.
Definition namespace.h:16
#define FASTLED_NAMESPACE_BEGIN
Start of the FastLED namespace.
Definition namespace.h:14