Can someone PLEASE have a look at this and guide me as to why it doesn't work
#include <MD_Parola.h>
#include <MD_MAX72xx.h>
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 12
#define NUM_ZONES 5
#define CLK_PIN 13
#define DATA_PIN 11
#define CS_PIN 10
MD_Parola P = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);
struct animations {
textEffect_t anim_in; // Animation type
textEffect_t anim_out; // Animation type
const char* textOut; // Text to display
uint16_t speed; // Animation speed (multiplier for library default)
uint16_t pause; // pause (multiplier for library default)
textPosition_t just;
};
animations animList[] = {
{ PA_SCROLL_LEFT, PA_SCROLL_UP_RIGHT, "Test 1", 1, 6, PA_LEFT },
{ PA_RANDOM, PA_RANDOM, "Test 2", 1, 8, PA_LEFT },
{ PA_SCROLL_LEFT, PA_SCROLL_UP_RIGHT, "Test 3", 1, 6, PA_LEFT },
{ PA_SCROLL_LEFT, PA_SCROLL_LEFT, "Test 4", 2, 0, PA_LEFT },
};
void setup() {
P.begin(NUM_ZONES);
P.setZone(0, 0, 3);
P.setZone(1, 4, 5);
P.setZone(2, 6, 7);
P.setZone(3, 8, 11);
P.setZone(4, 0, 11);
P.setIntensity(2);
for (uint8_t i = 0; i < ARRAY_SIZE(animList); i++) {
animList[i].speed *= P.getSpeed();
animList[i].pause *= 500;
}
}
void loop() {
static uint8_t i = 0; // text effect index
if (P.displayAnimate()) // animates and returns true when an animation is completed
{
if (i == ARRAY_SIZE(animList)) i = 0; // reset loop index
P.displayZoneText(4, animList[i].textOut, animList[i].just, animList[i].speed,
animList[i].pause, animList[i].anim_in, animList[i].anim_out);
delay(1000);
i++; // then set up for next text effect
}
}