108 ObjectFLED(uint16_t numLEDs,
void* drawBuf, uint8_t color_order, uint8_t numPins,
const uint8_t* pinList, \
109 uint8_t serpentine = 0);
121 void begin(
float, uint16_t);
125 void begin(
float, uint16_t, uint16_t, uint16_t, uint16_t);
132 void setBrightness(uint8_t);
135 void setBalance(uint32_t);
137 uint8_t getBrightness() {
return brightness; }
139 uint32_t getBalance() {
return colorBalance; }
142 static void isr(
void);
144 void genFrameBuffer(uint32_t);
146 static uint8_t* frameBuffer;
147 static uint32_t numbytes;
148 static uint8_t numpins;
149 static uint8_t pin_bitnum[NUM_DIGITAL_PINS];
150 static uint8_t pin_offset[NUM_DIGITAL_PINS];
151 DMAMEM
static uint32_t bitdata[BYTES_PER_DMA * 64] __attribute__((used, aligned(32)));
152 DMAMEM
static uint32_t bitmask[4] __attribute__((used, aligned(32)));
153 static DMAChannel dma1, dma2, dma3;
154 static DMASetting dma2next;
156 uint32_t update_begin_micros = 0;
157 uint8_t brightness = 255;
158 uint32_t colorBalance = 0xFFFFFF;
159 uint32_t rLevel = 65025;
160 uint32_t gLevel = 65025;
161 uint32_t bLevel = 65025;
165 uint8_t pinlist[NUM_DIGITAL_PINS];
166 uint16_t comp1load[3];
168 float OC_FACTOR = 1.0;
169 uint16_t TH_TL = 1250;
170 uint16_t T0H = TH_TL / 3;
171 uint16_t T1H = TH_TL * 2 / 3;
172 uint16_t LATCH_DELAY = 75;
175 uint32_t bitmaskLocal[4];
176 uint8_t numpinsLocal;
177 uint8_t* frameBufferLocal;
178 uint32_t numbytesLocal;
179 uint8_t pin_bitnumLocal[NUM_DIGITAL_PINS];
180 uint8_t pin_offsetLocal[NUM_DIGITAL_PINS];
186void fadeToColorBy(
void*, uint16_t, uint32_t, uint8_t);