Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Pętla do while to jedna z podstawowych konstrukcji programistycznych, które można wykorzystać w platformie Arduino.
Jest to struktura, która umożliwia wykonanie określonych instrukcji wielokrotnie, dopóki pewien warunek jest spełniony. W porównaniu do pętli for i while, do while ma pewne unikalne zastosowania i może być użyteczny w różnych scenariuszach.
W przeciwieństwie do pętli while, pętla do while gwarantuje, że kod wewnątrz bloku zostanie wykonany przynajmniej raz, nawet jeśli warunek początkowy nie jest spełniony. Jest to przydatne w sytuacjach, gdy chcemy najpierw wykonać pewne instrukcje, a następnie sprawdzić warunek.
W poniższym artykule przedstawimy kilka przykładów zastosowania pętli do while w Arduino oraz omówimy, jak można wykorzystać tę strukturę do tworzenia efektywnych i responsywnych programów.
Jednym z najprostszych zastosowań pętli do while w Arduino jest tworzenie prostego licznika. W poniższym przykładzie kodu użyjemy pętli do while do zliczania od 1 do 10 i wyświetlenia wartości na monitorze szeregowym:
int i = 1;
do {
Serial.println(i);
i++;
} while (i <= 10);
W tym kodzie zmienna i
inicjalizowana jest na wartość 1, a następnie inkrementowana w każdym przebiegu pętli. Pętla do while będzie kontynuowana, dopóki wartość i
jest mniejsza lub równa 10.
Kolejnym przykładem zastosowania pętli do while w Arduino może być obsługa przycisku. Załóżmy, że mamy prosty układ z jednym przyciskiem, który zmienia stan diody LED. Poniższy kod demonstruje, jak użyć pętli do while do oczekiwania na naciśnięcie przycisku:
const int buttonPin = 2;
const int ledPin = 13;
bool buttonState = false;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop() {
do {
buttonState = digitalRead(buttonPin);
} while (buttonState == LOW);
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
}
W tym przykładzie pętla do while będzie wykonywana, dopóki przycisk nie zostanie naciśnięty (czyli dopóki jego stan jest LOW). Po naciśnięciu przycisku dioda LED zostanie włączona na sekundę.
Ostatnim przykładem, który omówimy, jest odczyt danych z czujnika za pomocą pętli do while. Załóżmy, że mamy czujnik temperatury podłączony do naszego Arduino. Poniższy kod pokazuje, jak użyć pętli do while do odczytywania temperatury co sekundę:
const int sensorPin = A0;
void setup() {
Serial.begin(9600);
}
void loop() {
float voltage = 0;
float temperatureC = 0;
do {
int sensorValue = analogRead(sensorPin);
voltage = (sensorValue / 1024.0) 5.0;
temperatureC = (voltage - 0.5) 100;
delay(1000);
} while (true);
}
W tym przykładzie pętla do while będzie ciągle wykonywana, co sekundę, odczytując wartość z czujnika temperatury. Nie ma warunku zakończenia pętli, więc będzie ona wykonywana w nieskończoność, co sprawia, że jest to przykład tzw. „pętli nieskończonej”.
Pętla do while jest potężnym narzędziem w arsenale każdego programisty Arduino. Jest to przydatna konstrukcja do wykonywania określonych instrukcji wielokrotnie, dopóki pewien warunek jest spełniony. Przykłady przedstawione w tym artykule pokazują różnorodne zastosowania pętli do while, od prostych liczników po bardziej zaawansowane operacje, takie jak odczyt danych z czujników. Biorąc pod uwagę elastyczność i użyteczność tej struktury, warto zapoznać się z jej zasadami i wykorzystywać ją w swoich projektach Arduino.