const int buttonPin = 2;
int buttonState = 0;
void setup() {
Serial.begin(9600);
pinMode(buttonPin, INPUT);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) {
Serial.println("1");
buttonState=LOW;
delay(20000);
while(0);
}
}
Fondamentalement, le code fonctionne comme ceci:Code Arduino - Quelle est l'utilisation de while (0)?
- le numéro de la broche de poussoir variables
- pour lire l'état du bouton-poussoir
- initialiser la tige de poussoir en entrée:
- lire l'état de la valeur du bouton-poussoir:
- vérifier si le bouton-poussoir est enfoncé. Dans ce cas, le ButtonState est HIGH: envoyer ombles 1 via Bluetooth:
j'ai un Arduino, HC 06 module Bluetooth, un bouton et une application qui fait un appel téléphonique lorsque le bouton est pressé (HC 06 Envoyer un octet, 1, à l'application)
Ma question est, quelle est la while (0);
pour?
---- CODE ORIGINAL ---- const int PirSensor = 2; int motionState = 0;
void setup() {
Serial.begin(9600);
pinMode(PirSensor, INPUT);
}
void loop() {
motionState = digitalRead(PirSensor);
if (motionState == HIGH) {
Serial.println("1");
motionState = LOW;
delay(20000);
// while(0);
}
}
Il ne fait rien, comme ça. Pourquoi l'avez-vous mis là? – hobbs
Parce que j'ai rajouté mon code d'un autre que, au lieu d'un bouton, il avait un détecteur de mouvement PIR. Et je ne pouvais pas comprendre quel était le sens du moment. –
@PedroFerreita Pouvez-vous s'il vous plaît montrer l'exemple original alors? – orhtej2