Menu
CoddyTech

Stopniowo rozjaśnij diodę LED

Część sekcji Wyjścia ścieżki Arduino w Coddy. Lekcja 3 z 24.

Zmienna może przechowywać jasność. Za każdym razem, gdy uruchamia się loop(), zapisz jej wartość w diodzie LED, zwiększ ją nieco i chwilę odczekaj. Dioda LED rozjaśnia się stopniowo:

int brightness = 0;

void loop() {
  analogWrite(9, brightness);
  brightness = brightness + 5;
  if (brightness > 255) {
    brightness = 0;
  }
  delay(30);
}

Jasność jest zdefiniowana na początku szkicu, podobnie jak licznik naciśnięć, więc zachowuje swoją wartość od jednego uruchomienia loop() do następnego. Gdyby była utworzona wewnątrz loop(), za każdym razem znów miałaby wartość 0.

255 to największa wartość, jaką przyjmuje analogWrite(), więc if rozpoczyna rozjaśnianie od 0, gdy jasność ją przekroczy.

Krok i czas oczekiwania określają szybkość: około 50 kroków po 30 ms zajmuje półtorej sekundy.

challenge icon

Wyzwanie

Łatwy

Spraw, by dioda LED podłączona do pinu 9 rozjaśniała się, raz za razem:

  • przechowuj jasność w zmiennej utworzonej przed setup(), zaczynając od 0
  • w loop() ustaw ją za pomocą analogWrite(), dodaj 5 i odczekaj 30 ms
  • gdy przekroczy 255, ustaw ją z powrotem na 0

Naciśnij Run i obserwuj diodę LED, a następnie naciśnij Check.

Spróbuj swoich sił

const int ledPin = 9;
// utwórz tutaj zmienną jasności, zaczynając od 0

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // ustaw jasność, dodaj 5, po 255 zacznij od nowa, odczekaj 30 ms
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Wyjścia

Poćwicz samodzielnie: Edytor online Arduino