33 lines
790 B
C
33 lines
790 B
C
#ifndef APP_MODULES_WS2812_H_
|
|
#define APP_MODULES_WS2812_H_
|
|
|
|
#include "module.h"
|
|
#include "lauxlib.h"
|
|
#include "lmem.h"
|
|
#include "platform.h"
|
|
#include <stdlib.h>
|
|
#include <math.h>
|
|
#include <string.h>
|
|
#include "user_interface.h"
|
|
#include "driver/uart.h"
|
|
#include "osapi.h"
|
|
|
|
#define FADE_IN 1
|
|
#define FADE_OUT 0
|
|
#define SHIFT_LOGICAL 0
|
|
#define SHIFT_CIRCULAR 1
|
|
|
|
|
|
typedef struct {
|
|
int size;
|
|
uint8_t colorsPerLed;
|
|
uint8_t values[0];
|
|
} ws2812_buffer;
|
|
|
|
|
|
void ICACHE_RAM_ATTR ws2812_write_data(const uint8_t *pixels, uint32_t length, const uint8_t *pixels2, uint32_t length2);
|
|
int ws2812_buffer_shift(ws2812_buffer * buffer, int shiftValue, unsigned shift_type, int pos_start, int pos_end);
|
|
int ws2812_buffer_fill(ws2812_buffer * buffer, int * colors);
|
|
|
|
#endif /* APP_MODULES_WS2812_H_ */
|