Proyecto detector de objetos con matrix y sensor ( Matrix no Imprime).

Saludos, Mi proyecto se compone de un arduino uno, sensor ultrasonico y una matrix. el funcionamiento que quiero es el siguiente: cuando el sensor detecte un obstáculo la matrix imprima un NO de lo contrario se mantenga la matrix con un si, estuve realizando el programa lo compile y lo corrí en proteus pero no vi nada en matrix, les dejo en adjunto todo lo necesario para que prueben y así me puedan dar una solución. Gracias de antemano.

#include "LedControl.h"
#define trigPin 8
#define echoPin 7
LedControl lc=LedControl(12,11,10,1);  // Pins: DIN,CLK,CS, # of Display connected
unsigned long delayTime=50;  // Delay between Frames
// Put values in arrays
byte invader1a[] =
{
B01111111, B01000000, B01000000, B01000000, B00000000  // First frame of invader #1
};
byte invader1b[] =
{
B00111111, B01000000, B01000000, B00111111, B00000000 // U // Second frame of invader #1
};
byte invader2a[] =
{
B01000001, B01111111, B01000001, B00000000, B00000000 // I //First frame of invader #2

};
byte invader2b[] =
{
B01000110, B01001001, B01001001, B00110010, B00000000 // S// Second frame of invader #2
};
void setup()
{
Serial.begin (9600);  
pinMode(trigPin, OUTPUT);  //Trig est une sortie
pinMode(echoPin, INPUT);   //Echo est le retour, en entrée 
lc.shutdown(0,false);  // Wake up displays
lc.shutdown(1,false);
lc.setIntensity(0,5);  // Set intensity levels
lc.setIntensity(1,5);
lc.clearDisplay(0);  // Clear Displays
lc.clearDisplay(1);
}
//  Take values in Arrays and Display them
void sinvader1a()
{
for (int i = 0; i < 8; i++)  
{
lc.setRow(0,i,invader1a[i]);
}
}
void sinvader1b()
{
for (int i = 0; i < 8; i++)
{
lc.setRow(0,i,invader1b[i]);
}
}
void sinvader2a()
{
for (int i = 0; i < 8; i++)
{
lc.setRow(1,i,invader2a[i]);
}
}
void sinvader2b()
{
for (int i = 0; i < 8; i++)
{
lc.setRow(1,i,invader2b[i]);
}
}
void loop()
{
Serial.begin (9600);  
 long duration, distance;
  digitalWrite(trigPin, LOW);  
  delayMicroseconds(2); 
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10); //Trig déclenché 10ms sur HIGH
  digitalWrite(trigPin, LOW);
   // Calcul de l'écho
  duration = pulseIn(echoPin, HIGH);
  // Distance proportionnelle à la durée de sortie
  distance = duration*340/(2*10000);  //Vitesse du son théorique
  
 if (distance < 5) {  // Distance trop près
    sinvader1a();
delay(delayTime);
sinvader2a();
delay(delayTime);
}
  else {   //Trop loin
 sinvader1b();
delay(delayTime);
sinvader2b();
delay(delayTime);
}
//Hors de portée (duration)
  if ( distance <= 3){  
    //Serial.print(duration);
    Serial.println("Hors de portee");
  }
  else {
    Serial.println(distance);
    Serial.println(" cm ");
   
  }
  delay(100);  //0.1 sec entre deux mesures

}

Matrix con sensor ultra arduino.zip (161 KB)

LedControlMod.zip (13.9 KB)

Y donde esta el proyecto en Proteus?
Sube ambos y si usas alguna librería especial también

esta en formato de proteus en la carpeta .zip acompanado de la libreria especial que use en este codigo.