Mon programme ne fonctionne pas pouvez m'aider

voici mon programme je suis débutant sur arduino, merci pour votre aide

// on declare les variables

int moteur = 3;
int repet = 0;
// On configure le moniteur serie
void setup() {
Serial.begin(9600);
pinMode(moteur, OUTPUT);
}

// On programme la boucle loop
void loop() {
int tour =40;

Serial.println("debut normal");
while (tour < 254)

{
analogWrite(moteur, tour);
delay(1000);

tour = tour+10;
Serial.println(tour);
}
int tourinverse = 255;
Serial.println("debut inverse");

while (tourinverse > 40)

{

analogWrite(moteur, tourinverse);
delay(1000);

tourinverse = tourinverse-10;
Serial.println(tourinverse);
}
Serial.println("fin inverse");
}

As-tu contrôlé le Serial Monitor?
Que vois-tu ?
Une valeur qui augmente par 10 de 50 à 260, puis diminue par de 10 de 245 à 35.
C’est ce que ton programme dis de faire.
Maintenant si ton moteur ne tourne pas, tu as un problème de hardware.
Dans le manuel tu peux lire : You do not need to call pinMode() to set the pin as an output before calling analogWrite().
Donc tu peux déjà enlever cette ligne de code… …

c'est difficile de lire voter code.

corrigez votre post ci dessus et rajoutez les code tags autour du code:
[code]`` [color=blue]// votre code ici[/color] ``[/code].

(faites aussi ctrl-T (PC) or cmd-T (Mac) dans l'IDE avant de copier le code pour qu'il soit indenté correctement)

ça doit ressembler à cela:

// on declare les variables
const byte moteur = 3; // j'ai mis de const byte c'est mieux pour les pins...
const byte repet = 0;

// On configure le moniteur serie
void setup() {
  Serial.begin(115200);  // pourquoi communiquer à 9600 alors qu'on peut aller plus vite??
  pinMode(moteur, OUTPUT); // pas obligatoire mais c'est une bonne pratique
}


// On programme la boucle loop
void loop() {
  
  int tour = 40;
  Serial.println("debut normal");
  while (tour < 254) {
    analogWrite(moteur, tour);
    delay(1000);
    tour = tour + 10;
    Serial.println(tour);
  }

  int tourinverse = 255;
  Serial.println("debut inverse");
  while (tourinverse > 40) {
    analogWrite(moteur, tourinverse);
    delay(1000);
    tourinverse = tourinverse - 10;
    Serial.println(tourinverse);
  }
  Serial.println("fin inverse");
}

la question ensuite c'est de savoir comment vous avez connecté votre moteur? vous avez pris quelques précautions j'espère... Avant de jouer, si vous ne l'avez pas déjà fait, lire absolument le Tuto d'eskimon sur les moteurs et la partie où il dit Ne faites SURTOUT PAS le montage qui suit, je vous expliquerai pourquoi !

A lire avant de poster :
http://forum.arduino.cc/index.php?topic=315372.0
http://forum.arduino.cc/index.php?topic=324322.0

Je vous remercie tous pour votre aide j'ai réussi ce que je voulais faire