Create README.md
This commit is contained in:
parent
8835190e1b
commit
f6b2129593
1 changed files with 44 additions and 0 deletions
44
README.md
Normal file
44
README.md
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# esp_ws28xx
|
||||
A light and simple ESP-IDF lib for WS2812/WS2815 led strips. Works via SPI with DMA.
|
||||
A fork of https://github.com/8-DK/ESP32_SPI_WS2812_idf/ with a lot of fixes, refactoring, improvements and flexability. Fixed bit format, added correct reset pulses and support of WS2815.
|
||||
Tested with esp-idf v5.1 and esp32-c3.
|
||||
|
||||
# Example of usage
|
||||
|
||||
Just create folder `components` in the root of your project and clone this repo to the created folder.
|
||||
|
||||
Minimal working example (blink):
|
||||
```
|
||||
#include <stdio.h>
|
||||
#include "freertos/FreeRTOS.h"
|
||||
#include "freertos/task.h"
|
||||
#include "esp_log.h"
|
||||
#include "esp_ws28xx.h"
|
||||
|
||||
#define LED_GPIO 13
|
||||
#define LED_NUM 10
|
||||
|
||||
static const char *TAG = "example";
|
||||
static uint8_t led_state_off = 0;
|
||||
|
||||
|
||||
void blink_led(void) {
|
||||
for(int i = 0 ; i < LED_NUM ; i++) {
|
||||
if (led_state_off) ws28xx_pixels[i] = (CRGB){.r=0,.g=0,.b=0};
|
||||
else ws28xx_pixels[i] = (CRGB){.r=50,.g=0,.b=0};
|
||||
}
|
||||
ws28xx_update();
|
||||
}
|
||||
|
||||
|
||||
void app_main(void) {
|
||||
ws28xx_init(LED_GPIO, WS2812B, LED_NUM);
|
||||
while (1) {
|
||||
ESP_LOGI(TAG, "Turning the LED strip %s!", led_state_off == true ? "ON" : "OFF");
|
||||
blink_led();
|
||||
led_state_off = !led_state_off;
|
||||
vTaskDelay(1000 / portTICK_PERIOD_MS);
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
Loading…
Add table
Reference in a new issue