2 outputs at the same time on 74HC595

Hello,
On my last card (ARDUINO-->2 HC595--> ULN), when In sent "1", Q7 is high (it's OK), but when I sent "2", Q6 and Q7 are High and so on: "4" = Q5 and Q6, "8" = Q4 and Q5, "16" = Q3 and Q4, "32" = Q2 and Q3, "64" = Q1 and Q2 (all are not OK), but for "128", it's only Q0.
The wiring is the same that my other cards, my ARDUINO programm is the same that on another ARDUINO.
Can sommebody help-me? What'is the problem?

What'is the problem?

You.

Now that is clear the problem is what have you done wrong? No one will know until you post your code and schematic.

The wiring is the same that my other cards

Clearly they are not or your other cards are also wrong.

OK, I will post my code if useful.
The schematic is exactly the same that in Eskimon Blog (How to add outputs to ARDUINO) and, I confirm, the same code (except number of pin for CLOCK, LATCH and DATA) works good on another ARDUINO (command of Railway Signal).
The real question is: how is it possible, by sending 1, 2, 4, 8, 16, 32, 64 or 128 to have 2 outputs HIGH?

The schematic is exactly the same that in Eskimon Blog

Which is at what URL, link please.

how is it possible, by sending 1, 2, 4, 8, 16, 32, 64 or 128 to have 2 outputs HIGH?

You can't, those numbers only set one bit high. To set two high at the same time you send a different number, on that has two bits.
If you look at those numbers in binary you will see that only one bit is high.
To set bits 1 and 2 high you need to send the number 6.

Edit corrected as below, Thanks CrossRoads.

2 and 1 high requires sending in 6 (110), 5 (101) would be 2 and 0. Minor point.

Anyway, do you have a 0.1uF cap from the 595’s VCC pin to Gnd, and not on any other control lines?
If you have the Clock (SRCLK) and Latch (RCLK) pins swapped you may also get odd results.

Are you using shiftOut() or SPI.transfer() to send data to the shift register?

The used schématic is on this link: https://forum.arduino.cc/index.php?topic=479676.0

I don’t use a 0.1uF capacitor (VCC - GND) as all in my other system.
I check CLOCK and LATCH ans all is OK.

Here is my code. It is not very smart, I do it quikcly.

I explain my code: This is not my real code but a test code to see my problem.
I use the DCC system to start the test by sending ADRESS = 100.
After, I switch each OUTPUT of the 595 by sending 1, 2, 4, 8, 16, 32, 64, 128.
The result is:
1 = Q0
2 = Q1 and Q2
4 = Q2 and Q3
8 = Q3 and Q4
16 = Q4 and Q5
32 = Q5 and Q6
64 = Q6 and Q7
128 = Q7

#include <DCC_Decoder.h>
#define kDCC_INTERRUPT    0    // pin 2 for UNO

int old_address = 0;
int old_action = 0;

//pour le 595

const int CLOCK2 = 10;
const int LATCH2 = 11;
const int DATA2 = 12;


int CDE5 = 0;
int CDE6 = 0;
int CDE7 = 0;

//Handler DCC

void BasicAccDecoderPacket_Handler(int address, boolean activate, byte data)
{
  // Conversion de l'adresse NMRA en adresse decodeur d'accessoire
  address -= 1;
  address *= 4;
  address += 1;
  address += (data & 0x06) >> 1;

  int action = (data & 0x01);
  if ((address != old_address) || (action != old_action)){
    old_address = address;
    old_action = action;

    Serial.print ("      ");
    Serial.print(address);
    Serial.print("            ");
    Serial.println(action);

 //Début du test
  if(address == 100) {
 
    CDE5 = 1;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);

    CDE5 = 2;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);

    CDE5 = 4;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);

    CDE5 = 8;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);

    CDE5 = 16;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);

    CDE5 = 32;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);

    CDE5 = 64;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);
    CDE5 = 128;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    delay (1000);
    CDE5 = 0;
    Serial.println (CDE5);
   
    digitalWrite(LATCH2, LOW);
    shiftOut(DATA2, CLOCK2, LSBFIRST, CDE5);           
    digitalWrite(LATCH2, HIGH);

    
      
       }


      } //fin boucle si nouveaux data   
  }  //fin programme principal

void setup() {

  pinMode(LATCH2, OUTPUT);
  pinMode(CLOCK2, OUTPUT); 
  pinMode(DATA2, OUTPUT);


//mise à zéro OUT5, OUT6, et OUT7
   digitalWrite(LATCH2, LOW);
  shiftOut(DATA2, CLOCK2, MSBFIRST, 0);
  shiftOut(DATA2, CLOCK2, MSBFIRST, 0);
  shiftOut(DATA2, CLOCK2, MSBFIRST, 0);    
  digitalWrite(LATCH2, HIGH);

  Serial.begin(115200);
  
  DCC.SetBasicAccessoryDecoderPacketHandler(BasicAccDecoderPacket_Handler, true);
  
//  ConfigureDecoder();
  DCC.SetupDecoder( 0x00, 0x00, kDCC_INTERRUPT );
  
  Serial.println("     ADRESSE      ACTION");
}

void loop() {
  
  DCC.loop();
  
}

As you can see, I use SHIFTOUT

I don't use a 0.1uF capacitor (VCC - GND) as all in my other system.

Unless you do then there is no point in even looking at the code. These things are not optional they are compulsory.
http://www.thebox.myzen.co.uk/Tutorial/De-coupling.html

The used schématic is on this link: 2 outputs at the same time on 74HC595 - LEDs and Multiplexing - Arduino Forum

No it is not, that link is this thread.

OK, try this link: http://eskimon.fr/269-arduino-annexe-1-ajouter-des-sorties-a-arduino-74hc595

I'm looking capacitor for de-coupling VCC-GND

As tu essayé avec un autre 74HC595, celui ci dit être mort.
Il existe aussi un sous forum pour la communauté francophone au cas ou tu ne le saurais pas.

Have you try with an other 74HC595, this one seems to be in defect.
A "francophone sub-forum" exist.

I solve my problem by using an auxiliary power (5V) for my card instead using 5V of ARDUINO who was near 3,8V, probably because the number of 595 (6), perhaps the wiring (with a lot of screw terminals, .....)