#include #include #define CLK_PIN 13 #define DT_PIN 14 #define SW_PIN 15 #define LED_PIN 38 #define NUM_LEDS 1 ESP32Encoder encoder; CRGB leds[NUM_LEDS]; void setup() { Serial.begin(115200); ESP32Encoder::useInternalWeakPullResistors = puType::up; encoder.attachHalfQuad(DT_PIN, CLK_PIN); encoder.setCount(0); pinMode(SW_PIN, INPUT_PULLUP); FastLED.addLeds(leds, NUM_LEDS); } void loop() { if (encoder.getCount() < 0) encoder.setCount(0); if (encoder.getCount() > 40) encoder.setCount(40); float t = encoder.getCount() / 40.0; uint8_t hue = 160 - (t * 140); uint8_t sat = t * 220; uint8_t val = 180; leds[0] = CHSV(hue, sat, val); FastLED.show(); Serial.println(t); if (digitalRead(SW_PIN) == LOW) { encoder.setCount(0); delay(200); } delay(50); }