Questions about 74HC574

Hallo everyone,

I am pretty new to arduino- I hope I post this in the correct section.
After some testing I managed to use 2x 74HC595N ( QJ88D4 25 UnG1403D dont know if these numbers are important.), these got 8 pins each side. Then I wanted to build one of these 8x8x8 LED Cubes in these projekts they use simular/same. The ones I ordered had now 10 pins each side ( 35C593KE4 SN74HC574N) .

I didnt find any example wiring for these so here are my questions:

  • How much are these different from how these are working
  • Can I use the same Code which I used for the ones with 8 pins- how to wire it then?
  • How much LEDs could I controll with 10 of these

The code I used for the 8pin model ( from the internet)

int SER_Pin = 8;   //pin 14 on the 75HC595
int RCLK_Pin = 9;  //pin 12 on the 75HC595
int SRCLK_Pin = 10; //pin 11 on the 75HC595

//How many of the shift registers - change this
#define number_of_74hc595s 2 

//do not touch
#define numOfRegisterPins number_of_74hc595s * 8

boolean registers[numOfRegisterPins];

void setup(){
  pinMode(SER_Pin, OUTPUT);
  pinMode(RCLK_Pin, OUTPUT);
  pinMode(SRCLK_Pin, OUTPUT);


  //reset all register pins
  clearRegisters();
  writeRegisters();
}               


//set all register pins to LOW
void clearRegisters(){
  for(int i = numOfRegisterPins - 1; i >=  0; i--){
     registers[i] = LOW;
  }
} 


//Set and display registers
//Only call AFTER all values are set how you would like (slow otherwise)
void writeRegisters(){

  digitalWrite(RCLK_Pin, LOW);

  for(int i = numOfRegisterPins - 1; i >=  0; i--){
    digitalWrite(SRCLK_Pin, LOW);

    int val = registers[i];

    digitalWrite(SER_Pin, val);
    digitalWrite(SRCLK_Pin, HIGH);

  }
  digitalWrite(RCLK_Pin, HIGH);

}

//set an individual pin HIGH or LOW
void setRegisterPin(int index, int value){
  registers[index] = value;
}


void loop(){
  for(int i=0;i<numOfRegisterPins;i++){
  setRegisterPin(i, HIGH);
   writeRegisters();
  delay(100);
  }
   for(int i = numOfRegisterPins - 1; i >=  0; i--){
  setRegisterPin(i, LOW);
   writeRegisters();
  delay(100);
  
 }

  writeRegisters();  //MUST BE CALLED TO DISPLAY CHANGES
  //Only call once after the values are set how you need.
}

The 74HC574 is not a shift register, it is an octal D type flipflop.

The way it works is you change the values of the the 8 input pins, then pulse the clock pin to latch the values - then when OE is low, the output pins will output a low or high, depending on which value was latched from the corresponding input pin.

Not very useful for driving LEDs from Arduino! You want the 74HC595, not the 574.

Ok thank you alot for explaining

You can also google the datasheets for 74HC parts.