#define _STB 2
#define _SCK 3
#define _SISO 4
int i,j,n,m;
int cmd;
void futab(int x1, int x2){
 digitalWrite(_STB,0);
 for (j=1; j<3; j++){
 
  if (j==1)  {cmd = x1;} else {cmd = x2;}     
  for (i=7; i>-1; i--) {
                      digitalWrite(_SCK,0);
                      digitalWrite(_SISO,bitRead(cmd,i));
                      delayMicroseconds(2);
                      digitalWrite(_SCK,1);
                      delayMicroseconds(2);
                      }
                     }
 digitalWrite(_STB,1);
 delay(50);
}
void setup() {
  
  Serial.begin(9600);               
  pinMode(_STB, OUTPUT);        
  pinMode(_SCK, OUTPUT);
  pinMode(_SISO, OUTPUT);
  
  digitalWrite(_STB,1);       
  digitalWrite(_SCK,1);
 futab(248,1);  
 delay(2000);    
 futab(250,0x87);   
 futab(250,0x50);   
 futab(250,0x84);   
 futab(250,0x42);   
 futab(250,0x45);   
 futab(250,0x54);   
futab(248,0b11000011); 
 futab(250,0x48);   
 futab(250,0x61);   
 futab(250,0x62);   
 futab(250,0x72);   
futab(248,0b11011111); 
 futab(250,0x35);   
 futab(250,0x65);   
 futab(250,0x72);   
 futab(250,0x47);   
 futab(250,0x30);   
futab(248,0b10011011); 
 futab(250,0x30);   
 futab(250,0x37);   
 futab(250,0x2E);   
 futab(250,0x30);   
 futab(250,0x34);   
 futab(250,0x2E);   
 futab(250,0x32);   
 futab(250,0x30);   
 futab(250,0x31);   
 futab(250,0x36);   
 
for (m=1; m<5; m++){
 for (n=1; n<4; n++){
   futab(248,0b00011100);   
   delay(100);
                  }
 for (n=1;n<4;n++){
   futab(248,0b00011000);    
   delay(100);
                  }
                   } 
 
 delay(1500);
 for (n=1;n<5;n++){
   futab(248,0b00001000);   
   delay(100);
   futab(248,0b00001100);   
   delay(100);
                  }
 delay(1500);
                  
 for (n=1;n<5;n++){
 
 futab(248,0b00111101);  
 delay(100);
 futab(248,0b00111110);  
 delay(100);
 futab(248,0b00111111);  
 delay(100);
 futab(248,0b00111110);  
 delay(100);
 futab(248,0b00111101);  
 delay(100);
 futab(248,0b00111100);  
 delay(100);
 }
 delay(1000);
 
 futab(248,0b01001000);  
 futab(250,0b00001110); 
 futab(250,0b00010001); 
 futab(250,0b00010001); 
 futab(250,0b00010011); 
 futab(250,0b00010111); 
 futab(250,0b00011111); 
 futab(250,0b00011111); 
 futab(250,0b00011111); 
 futab(248,0b01010000);  
 futab(250,0b00000000); 
 futab(250,0b00000001); 
 futab(250,0b00000110); 
 futab(250,0b00001100);  
 futab(250,0b00010001); 
 futab(250,0b00000110); 
 futab(250,0b00001100); 
 futab(250,0b00010000); 
 
 futab(248,0b10010011); 
 futab(250,0b00000001);  
 futab(248,0b11010011); 
 futab(250,0b00000010);  
}
void loop() {
 
}