RGB LED dioda

V minulých hodinách jsme si ukázali práci s jednobarevnými LED diodami. Že byli jednobarevné píšu z toho důvodu, že na našem Arduinu s EduShieldem se nachází také vícebarevná LED dioda. Tato dioda je připojena ke třem pinům, kde na každém definujeme jednu barvu z RGB (+ jeden pin k uzemnění. Celkem tedy 4, ale s tím čtvrtým neinteragujeme).

Začněme jednoduchým kódem, kdy na naší RGB diodě rozsvítíme jen červenou:

#define rgb_red 9
#define rgb_green 5
#define rgb_blue 6

void setup() {
  // put your setup code here, to run once:

  // Nastavení odporů na diodě
  pinMode(rgb_red,OUTPUT);
  pinMode(rgb_green,OUTPUT);
  pinMode(rgb_blue,OUTPUT);

  // Nastavení barvy
  digitalWrite(rgb_red, LOW);
  digitalWrite(rgb_green, HIGH);
  digitalWrite(rgb_blue, HIGH);
}

void loop() {
  // put your main code here, to run repeatedly:
}

Pokud chceme rozsvítit zelenou, můžeme prostě nastavit rgb_green na LOW a všechny ostatní barvy (rgb_red a rgb_blue) nastavit na HIGH.

#define rgb_red 9
#define rgb_green 5
#define rgb_blue 6

void setup() {
  // put your setup code here, to run once:

  // Nastavení odporů na diodě
  pinMode(rgb_red,OUTPUT);
  pinMode(rgb_green,OUTPUT);
  pinMode(rgb_blue,OUTPUT);

  // Nastavení barvy
  digitalWrite(rgb_red, HIGH);
  digitalWrite(rgb_green, LOW);
  digitalWrite(rgb_blue, HIGH);
}

void loop() {
  // put your main code here, to run repeatedly:
}

Zadání: vytvořte kód, který bude na diodě střídat

Vytvořte program, který bude po nějakém časovém intervale (například vteřina) střídat všechny barvy.

Nápověda: Pro kód ohledně nastavování barev budete chtít použít void loop().
Nápověda 2: Pokud chcete běh kódu na chvíli pozastavit, využijte delay(), například delay(500); pozastaví kód na 500 ms = polovina sekundy.

Nezapomeňte odevzdat váš kód do Google Classroom: https://classroom.google.com/c/NTkwMDUxNjcyMjUy/a/Njc1NjAyNDAyMjY4/details

Příliš snadné?

V jedné z minulých hodin jsme si vytvořili semafor. Upravte ten semafor tak, aby fungoval s touto RGB LED diodou.