Merci Ashira, je met ça de coter, ça pourrait bien me servir un jour 
De rien !
Je mets une première version du programme, si vous avez des remarques!
#define led1 12
#define led2 11
#define led3 10
#define led4 9
#define bp 3
#define relai 5
#define pas 8
#define sens 7
#define potar 0
#define step_total 9600
int frequence;
int mode;
int steps;
int tour;
byte led[] = {led1, led2, led3, led4};
byte push;
/////////////////////////////////////////////////////////////////////////////
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(relai, OUTPUT);
pinMode(pas, OUTPUT);
pinMode(sens, OUTPUT);
pinMode(bp, INPUT);
digitalWrite(sens, HIGH);
aquisition(); affichage();
tour = 0;
}
/////////////////////////////////////////////////////////////////////////////
void affichage() {
for (byte i = 0; i < ((mode + 1) % 5); i++)
{
digitalWrite(led[i], HIGH);
}
for (byte i = ((mode + 1) % 5); i < 4; i++) {
digitalWrite(led[i], LOW);
}
}
/////////////////////////////////////////////////////////////////////////////
void aquisition() {
mode = analogRead(potar); mode = map(mode, 0 , 900, 3 , 0);
if (mode == 0) {
steps = 1200;
}
if (mode == 1) {
steps = 480;
}
if (mode == 2) {
steps = 160;
}
if (mode == 3) {
steps = 96;
}
push = digitalRead(bp);
}
////////////////////////////////////////////////////////////////////////////
void loop() {
push = digitalRead(bp);
if (push == 0) {
aquisition();
affichage();
tour = 0;
}
else if (push == 1 && tour < step_total) {
for (int v = 0; v <= steps; v++) {
frequence = (300+300*mode) * abs((v * 20 / steps) - 10) + 1000;
digitalWrite(pas, HIGH); delayMicroseconds(frequence); digitalWrite(pas, LOW); delayMicroseconds(frequence);
}
delay(1000); digitalWrite(relai, HIGH); delay(100); digitalWrite(relai, LOW); delay(500 * (mode + 1)); tour = tour + steps;
}
else if ( push == 1 && tour >= step_total) {
digitalWrite(led1, HIGH);
delay(200);
digitalWrite(led1, LOW);
delay(200);
}
}
Pour le fonctionnement:
-Je sélectionne un nombre de photo grace à un potentiomètre (8, 20, 60 et 100 en exemple dans le programme).
-Pour démarrer j'enclenche un interrupteur, ça bloque le choix du nombre de photo et le plateau démarre.
-Pour stopper le plateau en cours de cycle, je déclenche l'interrupteur.
-Lorsque toutes les photos ont été prises, la led 1 clignote. Le cycle est terminé.