ajuda em codigo

Boas estou tentar comprender como controlar um cubo 8x8x8, estou com muitas duvidas como se manda os bytes para as shift registers, o cubo está com a primeira shift TPIC6B595N shift e com 8 Mosfets NDP6020P a controlar os patamares(anodes) e 8 shifts TPIC6B595N ligado as 64 colunas(cathodes), se alguem me podesse orientar como programar seria impecavel para ver se começava a entender, nao consigo comprender é como programar sei que necessito de ,mandar 1byte para cada patamar durante 3 ms e 64 bytes para as colunas, :frowning:

int dataPin     = 11;
int clockPin    = 13;
int latchPin    = 10;

int anodesArray[]={B00000001, B00000010, B00000100, B00001000, B00010000, B00100000, B01000000, B10000000};

int cathodesArray[]={B01110001, B01100010, B01110100, B00101000, B00010001, B00100010, B01011100, B10000011};


void setup()
{
  pinMode(latchPin,OUTPUT);
  pinMode(dataPin,OUTPUT);
  pinMode(clockPin,OUTPUT);
}

void loop()
{
  digitalWrite(latchPin, LOW);

  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[0]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[0]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[1]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[1]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[2]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[2]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[3]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[3]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[4]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[4]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[5]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[5]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[6]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[6]);
  
  shiftOut(dataPin, clockPin, MSBFIRST, anodesArray[7]);
  shiftOut(dataPin, clockPin, MSBFIRST, cathodesArray[7]);
  
  
  digitalWrite(latchPin, HIGH);
  delay(3);

}

Viva!
Ainda anda com isto?

Não compreendi bem a pergunta. O código que postou está a funcionar e quer perceber o que ele faz ou quer saber como se faz para colocar o cubo a funcionar?

Boas amigo Silva o cubo 4x4x4 ficou a funcionar bem depois da dica que me deu..

Nao o codigo que postei nao está a funcionar, não devo estar a faze-lo correctamente.

no fundo o que tou a tentar comprender é como com 9 shift registers consigo madar ligar os 8 patamares(anodes) ligar e desligar um de cada vez e mandar 64 bytes(cathodes) para os 64 leds por cada patamar, de maneira a que faça multiplexing para nuncar tar tudo ligado ao mesmo tempo.

Sendo assim, penso que devia começar por ver bem como é o funcionamento do shifter register. Esta página parece-me bastante boa para isso.

ok darei uma vista de olhos sobre o assunto :slight_smile: