34#error "Sorry, ObjectFLED only works on Teensy 4.x boards."
37#error "Teensyduino version 1.21 or later is required to compile this library."
42#include "DMAChannel.h"
46#define OUTPUT_PAD_DSE 3
47#define OUTPUT_PAD_SPEED 0
56#define BYTES_PER_DMA 20
110 ObjectFLED(uint16_t numLEDs,
void* drawBuf, uint8_t config, uint8_t numPins,
const uint8_t* pinList, \
111 uint8_t serpentine = 0);
130 void begin(uint16_t, uint16_t, uint16_t, uint16_t = 300);
134 while (!
dma3.complete()) {
135 delayMicroseconds(10);
162 DMAMEM
static uint32_t
bitmask[4] __attribute__((used, aligned(32)));
202void drawSquare(
void*, uint16_t, uint16_t,
int,
int, uint32_t, uint32_t);
void begin(uint16_t, uint16_t, uint16_t, uint16_t=300)
uint8_t * frameBufferLocal
uint8_t pin_bitnumLocal[NUM_DIGITAL_PINS]
uint8_t pinlist[NUM_DIGITAL_PINS]
uint32_t update_begin_micros
void setBalance(uint32_t)
static DMAMEM uint32_t bitdata[BYTES_PER_DMA *64]
void genFrameBuffer(uint32_t)
ObjectFLED(uint16_t numLEDs, void *drawBuf, uint8_t config, uint8_t numPins, const uint8_t *pinList, uint8_t serpentine=0)
static DMAMEM uint32_t bitmask[4]
void waitForDmaToFinish()
static DMASetting dma2next
void setBrightness(uint8_t)
void begin(double, uint16_t=300)
static uint8_t pin_bitnum[NUM_DIGITAL_PINS]
static uint8_t * frameBuffer
static uint8_t pin_offset[NUM_DIGITAL_PINS]
uint8_t pin_offsetLocal[NUM_DIGITAL_PINS]
void drawSquare(void *, uint16_t, uint16_t, int, int, uint32_t, uint32_t)
void fadeToColorBy(void *, uint16_t, uint32_t, uint8_t)
Implements a simple red square effect for 2D LED grids.