example: update led strip example with new rmt driver

This commit is contained in:
morris
2022-04-07 13:12:16 +08:00
parent 977a2830dd
commit d537da5bfb
25 changed files with 803 additions and 532 deletions

View File

@@ -24,19 +24,20 @@ static const char *TAG = "example";
static uint8_t s_led_state = 0;
#ifdef CONFIG_BLINK_LED_RMT
static led_strip_t *pStrip_a;
static led_strip_handle_t led_strip;
static void blink_led(void)
{
/* If the addressable LED is enabled */
if (s_led_state) {
/* Set the LED pixel using RGB from 0 (0%) to 255 (100%) for each color */
pStrip_a->set_pixel(pStrip_a, 0, 16, 16, 16);
led_strip_set_pixel(led_strip, 0, 16, 16, 16);
/* Refresh the strip to send data */
pStrip_a->refresh(pStrip_a, 100);
led_strip_refresh(led_strip);
} else {
/* Set all LED off to clear all pixels */
pStrip_a->clear(pStrip_a, 50);
led_strip_clear(led_strip);
}
}
@@ -44,9 +45,13 @@ static void configure_led(void)
{
ESP_LOGI(TAG, "Example configured to blink addressable LED!");
/* LED strip initialization with the GPIO and pixels number*/
pStrip_a = led_strip_init(CONFIG_BLINK_LED_RMT_CHANNEL, BLINK_GPIO, 1);
led_strip_config_t strip_config = {
.strip_gpio_num = BLINK_GPIO,
.max_leds = 1, // at least one LED on board
};
ESP_ERROR_CHECK(led_strip_new_rmt_device(&strip_config, &led_strip));
/* Set all LED off to clear all pixels */
pStrip_a->clear(pStrip_a, 50);
led_strip_clear(led_strip);
}
#elif CONFIG_BLINK_LED_GPIO