int ClkPin=12;
int LoadPin=13;
int ClockEnablePin=11;
int DataPin=10;

//set number of shift register
#define num_Shift_reg 6
#define DataWidth num_Shift_reg * 8

//You can set Aphabet cahracter to the corresponding key in the below array
char *Alpha[]={"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43","44","45","46","47","48"};
char *data[48];
unsigned long Pinvalues;
unsigned long oldPinValues;

void setup(){

    Serial.begin(9600);

    pinMode(ClkPin, OUTPUT);
    pinMode(LoadPin, OUTPUT);
    pinMode(ClockEnablePin, OUTPUT);
    pinMode(DataPin, INPUT);
    digitalWrite(ClockEnablePin, LOW);
    digitalWrite(LoadPin, HIGH);
}
void loop(){
    long bitVal;
    unsigned long BytesVal=0;
    digitalWrite(ClockEnablePin, HIGH);
    digitalWrite(LoadPin, LOW);
    delayMicroseconds(5);
    digitalWrite(ClockEnablePin, LOW);
    digitalWrite(LoadPin, HIGH);

    for(int i=0;i<DataWidth;i++){

        bitVal=digitalRead(DataPin);
        Serial.print("Pin");
        Serial.print(i);
        Serial.print(":");
        Serial.print("(");
        Serial.print(bitVal);
        Serial.print(")");
        data[i]=bitVal;
        BytesVal |= ( BytesVal<< ((DataWidth-1)-i));
        digitalWrite(ClkPin, HIGH);
        delayMicroseconds(5);
        digitalWrite(ClkPin, LOW);

    }
    Serial.println();
    for(int i=0; i<DataWidth ;i++){
        if(data[i]==1){
            Serial.print("--(");
            Serial.print(Alpha[i]);
            Serial.print(")--");
        }
    
    }


}

74HC165
74HC165
74HC165
74HC165
74HC165
74HC165