Problème digitalRead

Bonjour à vous ! :slight_smile:
Je rencontre un petit problème dans mon projet, alors j'ai décidé de vérifier avec un petit programme contenant le problème, dont voici une vidéo :
Vidéo du problème sur la simulation
Mon code :

void setup() {
  Serial.begin(9600);
  Serial.println("Hello Computer");
}
void loop() {
  int valuePIR = digitalRead(13);
  if (valuePIR == HIGH) {
    analogWrite(9, 255);
    Serial.println("HIGH");
  }
  if (valuePIR == LOW) {
    analogWrite(9, 0);
    Serial.println("LOW");
  }
}

J'en ai déduis que digitalRead ne se relançais pas... mais je ne sais pas pourquoi :/.
Merci de toute aide que vous pourrez m'apporter !

Bonjour,
c'est optionnel la déclaration de i/o en entrée ou sortie?(pinMode si sa te parle)

Je viens d'essayer avec pinMode ... et ça fait le même problème :confused: :

void setup() {
  pinMode(9,OUTPUT);
  pinMode(13,INPUT);
  Serial.begin(9600);
  Serial.println("Hello Computer");
}
void loop() {
  int valuePIR = digitalRead(13);
  if (valuePIR == HIGH) {
    analogWrite(9, 255);
    Serial.println("HIGH");
  }
  if (valuePIR == LOW) {
    analogWrite(9, 0);
    Serial.println("LOW");
  }
}

C'est quoi le problème en fin de compte?
Tu pourrais pas expliquer clairement ce qui ne fonctionne pas!

bonjour,
si tu pouvais faire un prog propre :wink:
definition des variables
setup
void

d'après la vidéo tu fais ca via un soft au lieu d'une carte.
la pin 13 a une résistance interne, donc change de pin sur une digitale
pourquoi faire un analogWrite....255 ou 0 au lieu de faire un digitalWrite(pin, HIGH ou LOW) ?

ton code devrait fonctionner et mets un INPUT_PULLUP sur ton bouton pour éviter les rebonds