modif_para_ronde[12]=byte(stop_ronde)>>24;
le cast est fait avant le décalage
Je pense que ce que tu voulais faire c'était plutôt ça;
modif_para_ronde[12]=(byte)(stop_ronde>>24);
stop_ronde=((reception[12]<<24)+((reception[13]& 0xFF)<<16)+((reception[14]& 0xFF)<<8)+(reception[15]& 0xFF))*1000;
Je crois comprendre que reception est un tableau de byte donc convertir en unsigned long avant de décaler.
stop_ronde=(((unsigned long)reception[12]<<24)+(((unsigned long)reception[13]& 0xFF)<<16)+(((unsigned long)reception[14]& 0xFF)<<8)+((unsigned long)reception[15]& 0xFF))*1000L;
Edit : ajout du L à la constante