Гирлянда на окно, использование внутренней памяти ESP8266 V3 CH340G

Алексей22

✩✩✩✩✩✩✩
25 Фев 2020
41
0
65
Заголовок темы должен отражать содержимое. Исправь или тема будет удалена
C++:
#include <FS.h>
#include <FastLED.h>
#include <SPI.h>

#define NUM_LEDS 322              // Количество светодиодов

File fxdata;
CRGB leds[NUM_LEDS];

int led_speed = 10;               // Скоррость анимации
int led_brigh = 20;            //  Яркость светодиода //

void setup()
{
  Serial.begin(115200);
  FastLED.setBrightness(led_brigh);       //  Яркость светодиода //
  FastLED.addLeds<WS2812B/*CHIPSET*/, 4/*LED_PIN*/, GRB>(leds, NUM_LEDS); //смотрите документацию для различных светодиодных лент
  for (int y = 0 ; y < NUM_LEDS ; y++)
  {
    leds[y] = CRGB::Black;     // установите все светодиоды на черный цвет во время настройки
  }
  FastLED.show();
  //delay(1000);
  //SPIFFS.begin();
  //SPIFFS.format(); //форматирование файловой системы
  //SPIFFS.end();
}

void loop() {
  SPIFFS.begin();
  Dir dir = SPIFFS.openDir("/files");
  while (dir.next())
  {
    Serial.println(dir.fileName());
    fxdata = SPIFFS.open(dir.fileName(), "r");
    if (fxdata)
    {
      Serial.println("file open ok");
    }
    while (fxdata.available())
    {
      Sortled();
     fxdata.readBytes((char*)leds, NUM_LEDS * 3);
      FastLED.setBrightness(led_brigh);
      FastLED.show();
      delay(1000/ led_speed);        // Скоррость анимации
    }
    fxdata.close();
  }
  SPIFFS.end();
}

int Sortled ()
{
  CRGB templeds[NUM_LEDS];
  const uint8_t XYTable[] =
  {
    16,  17,  50,  51,  84,  85, 118, 119, 152, 153, 186, 187, 220, 221, 254, 255, 288, 289, 322,
    15,  18,  49,  52,  83,  86, 117, 120, 151, 154, 185, 188, 219, 222, 253, 256, 287, 290, 321,
    14,  19,  48,  53,  82,  87, 116, 121, 150, 155, 184, 189, 218, 223, 252, 257, 286, 291, 320,
    13,  20,  47,  54,  81,  88, 115, 122, 149, 156, 183, 190, 217, 224, 251, 258, 285, 292, 319,
    12,  21,  46,  55,  80,  89, 114, 123, 148, 157, 182, 191, 216, 225, 250, 259, 284, 293, 318,
    11,  22,  45,  56,  79,  90, 113, 124, 147, 158, 181, 192, 215, 226, 249, 260, 283, 294, 317,
    10,  23,  44,  57,  78,  91, 112, 125, 146, 159, 180, 193, 214, 227, 248, 261, 282, 295, 316,
     9,  24,  43,  58,  77,  92, 111, 126, 145, 160, 179, 194, 213, 228, 247, 262, 281, 296, 315,
     8,  25,  42,  59,  76,  93, 110, 127, 144, 161, 178, 195, 212, 229, 246, 263, 280, 297, 314,
     7,  26,  41,  60,  75,  94, 109, 128, 143, 162, 177, 196, 211, 230, 245, 264, 279, 298, 313,
     6,  27,  40,  61,  74,  95, 108, 129, 142, 163, 176, 197, 210, 231, 244, 265, 278, 299, 312,
     5,  28,  39,  62,  73,  96, 107, 130, 141, 164, 175, 198, 209, 232, 243, 266, 277, 300, 311,
     4,  29,  38,  63,  72,  97, 106, 131, 140, 165, 174, 199, 208, 233, 242, 267, 276, 301, 310,
     3,  30,  37,  64,  71,  98, 105, 132, 139, 166, 173, 200, 207, 234, 241, 268, 275, 302, 309,
     2,  31,  36,  65,  70,  99, 104, 133, 138, 167, 172, 201, 206, 235, 240, 269, 274, 303, 308,
     1,  32,  35,  66,  69, 100, 103, 134, 137, 168, 171, 202, 205, 236, 239, 270, 273, 304, 307,
     0,  33,  34,  67,  68, 101, 102, 135, 136, 169, 170, 203, 204, 237, 238, 271, 272, 305, 306,
  };


fxdata.readBytes((char*)templeds, NUM_LEDS * 3);
  for (int k = 0; k < NUM_LEDS; k++)
  {
    leds[XYTable[k]] = templeds[k];
  }
}
Доброго всем дня Собираю гирлянду на окно, использую плату NodeMCU ESP8266 V3 CH340G, светодиоды WS2812B, также использую вот этот скетч. У меня возникла проблема в том что я создав файл эффектов в прог. Jinx. Загружаю его в модуль на матрице выскакивает какой то хаос , нарисовал не подвижную полосу, по матрице плывет какая то сетка хотя эффект создан не подвижная полоса. Брал примеры из FastLED все работает отлично. Может кто подскажет где можно по рытся ткните носом, я не спец в программировании, но постараюсь разобраться.
 
Изменено: