Lekcja 4: Diodowy wąż.
W czasie tej lekcji stworzymy "diodowego węża" składającego się 5 diód. Schemat układu poniżej.
Składamy układ według rysunku jak niżej:
Kod naszego układu wygląda następująco:
int czas = 100; void setup(){ pinMode(5,OUTPUT); pinMode(4,OUTPUT); pinMode(3,OUTPUT); pinMode(2,OUTPUT); pinMode(1,OUTPUT); } void loop(){ for (int i=1; i<6; i++){ digitalWrite(i, HIGH); delay(czas); digitalWrite(i, LOW); delay(czas); } }
Mamy tu klika nowości w kodzie. Po pierwsze w linii 1 znajduje się deklaracja zmiennej czas.
Deklaracja składa się ze słowa kluczowego int, które oznacza typ liczby całkowitej. W tym wypadku przybiera ona wartość 100.
Będzie to nasz czas oczekiwania w funkcji delay czyli 100ms.
W liniach od 5 do 7 deklarujemy pięć kolejnych pinów od 5 do 1.
W linii 10 widzimy pętlę for, której zadaniem będzie wykonanie pięciokrotnego włączenia i wyłączenia kolejnych diód.
Pętla for składa się z zadeklarowanej zmiennej iteracyjnej i, która zmienia się od wartości 1 do 5
(i<6 oznacza, że do wartości poprzedzającej 6). Symbol i++ nazywamy inkrementacją - w tym wypadku o wartość jeden. Symbol ten zastępuje
i jest równoważny zapisowi i=i+1.
W liniach 11 i 13 mamy znaną już funkcję digitalWrite, której argumentem jest i. Będzie się ona zmieniać w takt
kolejnych przejść pętli for czyli kolejno: 1, 2, 3, 4, 5.
W ten sposób zmniejszyliśmy liczbę linii kodu by nie pisać 5 razy kolejnych włączeń i wyłączeń diód jak to było w poprzednim projekcie.
Teraz można sprawdzić działanie nowego układu. Powodzenia!
Pamiętaj:
- i++ - to post-inkrementacja, czyli zwiększanie wartości o 1 (najpierw użyj potem dodaj),
- i-- - to post-dekrementacja, czyli zmniejszanie wartości o 1 (najpierw użyj potem odejmij),
- ++i - to pre-inkrementacja, czyli zwiększanie wartości o 1 (najpierw dodaj potem użyj),
- --i - to pre-dekrementacja, czyli zmniejszenie wartości o 1 (najpierw odejmij potem użyj).
Powrót do spisu materiałów