/*********************************************************************************
o esp32 connected nonpixel matrx 32 by 8 write a code in such a way
that all 8 rows one by one glow with different colors from uppere to
bottam and then from bottan to upper then do same thing with coloms
with diifferen colors from left to right
and then revers
author arvind patil 3 april 2023
************************************************************************************/
#include <Adafruit_NeoPixel.h>
// Define the number of LEDs and the data pin
#define LED_COUNT 256
#define LED_PIN 3
// Define the width and height of the matrix
#define MATRIX_WIDTH 32
#define MATRIX_HEIGHT 8
// Define the colors to use
uint32_t color1 = Adafruit_NeoPixel::Color(255, 0, 0);
uint32_t color2 = Adafruit_NeoPixel::Color(0, 255, 0);
uint32_t color3 = Adafruit_NeoPixel::Color(0, 0, 255);
uint32_t color4 = Adafruit_NeoPixel::Color(255, 100, 0);
uint32_t color5 = Adafruit_NeoPixel::Color(0, 255, 100);
uint32_t color6 = Adafruit_NeoPixel::Color(0, 100, 255);
// Define the delay time between each step
#define DELAY_TIME 100
// Define the LED object
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
// Initialize the LED object
pixels.begin();
pixels.setBrightness(255);
pixels.clear();
pixels.show();
}
void loop() {
// Glow rows from top to bottom
for (int row = 0; row < MATRIX_HEIGHT; row++) {
for (int col = 0; col < MATRIX_WIDTH; col++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, color1);
}
pixels.show();
delay(DELAY_TIME);
for (int col = 0; col < MATRIX_WIDTH; col++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, 0);
}
pixels.show();
}
// Glow rows from bottom to top
for (int row = MATRIX_HEIGHT - 1; row >= 0; row--) {
for (int col = 0; col < MATRIX_WIDTH; col++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, color2);
}
pixels.show();
delay(DELAY_TIME);
for (int col = 0; col < MATRIX_WIDTH; col++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, 0);
}
pixels.show();
}
// Glow columns from left to right
for (int col = 0; col < MATRIX_WIDTH; col++) {
for (int row = 0; row < MATRIX_HEIGHT; row++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, color3);
}
pixels.show();
delay(DELAY_TIME);
for (int row = 0; row < MATRIX_HEIGHT; row++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, 0);
}
pixels.show();
}
// Glow columns from right to left
for (int col = MATRIX_WIDTH - 1; col >= 0; col--) {
for (int row = 0; row < MATRIX_HEIGHT; row++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, color1);
}
pixels.show();{
delay(DELAY_TIME);
for (int row = 0; row < MATRIX_HEIGHT; row++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, 0);
}
}
pixels.show();
}
for (int col = MATRIX_WIDTH - 1; col >= 0; col--) {
for (int row = 0; row < MATRIX_HEIGHT; row++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, color1);
}
pixels.show();
delay(DELAY_TIME);
for (int row = 0; row < MATRIX_HEIGHT; row++) {
int index = row * MATRIX_WIDTH + col;
pixels.setPixelColor(index, 0);
}
}
pixels.show();
}
FPS: 0
Power: 0.00W
Power: 0.00W