// Библиотека для работы с графикой #include "VidorGraphics.h" // Библиотека для светодиодов WS2812 #include "Vidor_NeoPixel.h" // Создаём объект np класса Vidor_NeoPixel для работы с матрицей WS2812 Vidor_NeoPixel np(8*8, A6); // Создаём объект vdgfx класса Vidor_GFX для работы с матрицей WS2812 Vidor_GFX vdgfx(np); // Создаём объект matrix класса Vidor_GFXbuffer для работы с матрицей WS2812 Vidor_GFXbuffer matrix(np, vdgfx, 64, 8, true); void setup() { // Открываем Serial-порт для мониторинга данных в консоли Serial.begin(9600); // Ожидаем открытия Serial-порта // Закомментируйте строку ниже, если не нужна отладка while (!Serial) {} // Инициализируем FPGA if (!FPGA.begin()) { Serial.println("Initialization failed!"); while (1) {} } else { Serial.println("Initialization successfully!"); } // Инициализируем матрицу np.begin(); matrix.begin(); // Очищаем матрицу for (int i = 0; i < 64; i++) { // Clear matrix np.setPixelColor(i, 0, 0, 0, 0); } np.show(); // Печатаем в буфер слово «Амперка» vdgfx.text.setColor(vdgfx.Red()); vdgfx.text.setCursor(0, 6); vdgfx.setFont(0); vdgfx.text.setSize(1); vdgfx.print("A"); np.show(); vdgfx.text.setColor(vdgfx.Blue()); vdgfx.print("m"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Green()); vdgfx.print("p"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Yellow()); vdgfx.print("e"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Purple()); vdgfx.print("r"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.Brown()); vdgfx.print("k"); np.show(); matrix.scroll(100); vdgfx.text.setColor(vdgfx.White()); vdgfx.print("a"); // Выводим изображение из буфера на матрицу np.show(); // Скроллим изображение в виде бегущей строки // Если строка «бежит» в неверном направлении, // необходимо сделать фикс в библиотеке Vidor_GFX. Подробности: // http://wiki.amperka.ru/products:arduino-mkr-vidor-4000 matrix.scroll(100); } void loop() { }