Animazione display

ciao a tutti, durante la mia preparazione per gli esami ho voluto svagarmi un po' con una matrice 8x8 a led.
volevo fare qualche animazione carina ma non so perchè non riesco a trovare il metodo per disegnare dei quadrati concentrici in sequenza...il programma l' ho scritto io e per capirlo basta immagina una matrice dove r sono le righe e l sono i led accesi, con la funzione maxSingle si richaima la scrittura
io ho pensato così :

void loop () {
  int r=0;
  int l=0;
  if(count==4)  //resetta i quadrati
    count=0;
  for(r=1;r<9;c++){    //quadrato
    if(r==1+count||r==8-count){  //disegna i quadrati
      if(count<1){
        countf=0;
      }
      else
        countf=1;
        
      l=(255>>count);
     l=l-countf*(l^(count)-1);
    }
      if(r==-1+count||r==9-count){  //cancella le righe sopra e sotto
        l=0;      
      }
    maxSingle(r,l);

  }
  delay(500);
  count++;
}

non si capisce troppo la domanda scusate, qualcuno conosce qualche metodo per fare delle animazioni di forme geometriche ?

Le animazioni altro non sono che algoritmi. Devi scriverteli tu oppure cercare in rete qualche sorgente libero da cui prendere il codice che ti serve.
Se il programma che hai scritto tu non funziona, ricontrollalo per bene: è al 99,9% un errore logico che non è facile trovare soprattutto da chi non ha scritto il programma perché bisogna prima capire cos'hai in mente e poi vedere come hai cercato di farlo.

 for(r=1;r<9;c++){    //quadrato

Mi sembra che il ciclo for sia sbagliato: la variabile r non viene mai incrementata!

Forse volevi scrivere:

for (r=1; r < 9; r ++){    //quadrato