Letní IoT: Den 3
| Řádka 47: | Řádka 47: | ||
# ve void setup() napsat vše, co potřebuje čidlo i display  | # ve void setup() napsat vše, co potřebuje čidlo i display  | ||
# ve void loop() nastavit, aby se na display vypsala teplota a na další řádek vlhkost (aktualizace každou sekundu)  | # ve void loop() nastavit, aby se na display vypsala teplota a na další řádek vlhkost (aktualizace každou sekundu)  | ||
| + | |||
| + | = RGB LEDka =  | ||
| + | |||
| + | == Popis ==  | ||
| + | RGB LEDka má v sobě jakoby 3 LEDky - Red, Green, Blue  | ||
| + | Má 3 katody (+) a jednu anodu (-) [[https://ampul.cz/image/cache/catalog/image/data/led-dioda-katoda-600x600-product_popup.jpg schéma]]  | ||
| + | |||
| + | Abychom ji mohli rozsvítit do námi požadované barvy, musíme něco vědět o [[https://www.w3schools.com/colors/colors_rgb.asp RGB mobelu]]  | ||
| + | Teoreticky je 16milionů 255natřetí možných kombinací, jak může svítit.  | ||
| + | |||
| + | Budeme chtít zelenou - tak přivedeme napětí ke katodě která je spojena přechodem pn emitujícím zelené světlo.  | ||
| + | == Zapojení ==  | ||
| + | |||
| + | GPIO pin - rezistor - katoda   | ||
| + | |||
| + | == Příklady ==  | ||
| + | |||
| + |  #define red ...  | ||
| + |  #define gre ...  | ||
| + |  #fefine blu ...  | ||
| + | |||
| + |  ''Chceme čevenou''  | ||
| + |  digitalWrite(red, HIGH);  | ||
| + | |||
| + |  ''Chceme žlutou''  | ||
| + |  digitalWrite(red, HIGH);  | ||
| + |  digitalWrite(gre, HIGH);  | ||
| + | |||
| + | == Samostatný úkol ==  | ||
| + | #zelená barva  | ||
| + | #bílá barva  | ||
| + | #Vaše oblíbená barva  | ||
| + | #černá barva  | ||
| + | |||
| + | Moc kombinací není, co?  | ||
| + | |||
| + | == Příklady 2 ==  | ||
| + | |||
| + | Metodu analogWrite() již znáne,  | ||
| + | |||
| + | Pomocí ní můžeme dát RGB diodě ''jakoukoliv'' barvu.  | ||
| + | |||
| + | Víme, že [https://www.w3schools.com/colors/colors_rgb.asp RGB model] je 0 - 255 a že metoda analogWrite() má rozsah 0 - 1023  | ||
| + | |||
| + | == Samostatný úkol 2 ==  | ||
| + | Tak hurá do práce, zkuste!  | ||
| + | #Zkuste použít tento [https://create.arduino.cc/projecthub/muhammad-aqib/arduino-rgb-led-tutorial-fc003e kód] - není přímo na naše zařízení, upravte si ho :D  | ||
| + | |||
| + | == Úkoly navíc ==  | ||
| + | # RGB dioda - červená, modrá, zelená, žlutá, bílá barva (každá barva bude 3 sekundy)  | ||
| + | # -//- a na display se napíše, která barva svítí  | ||
Verze z 15. 7. 2020, 09:25
Obsah | 
Opakování
- Vypíšou se všechny sudá čísla do 20
 -  LEDka 4 × blikne a pak pauza
- Vlastní metoda bez parametru
 - Vlastní metoda s parametrem
 
 - Na displeji bude "Hrajeme si s IoT" - na 10 sekund se display rozsvítí, na 10 s zhasne
 - na 1. řádek vypiš "Hrajeme si s IoT" a na druhý dnešní datum
 
Co zopakujeme / naučíme se nového?
- LCD
 - Metoda, co vrátí něco
 
Sériový vstup
NTP
Čidlo
Display a čidlo
Teď si vyrobíme takovou "meteostanici", kterou si můžete dát na stůl a sledovat aktuální teplotu a vlhkost.
zobrazí se:
50 °C
kód:
lcd.print("50 ");
lcd.write(B11011111);
lcd.print("C");
Co musíme udělat?
- Naimportovat knihovny pro čidlo i pro display
 - Definovat všechny věci, co potřebuje čidlo i display
 - ve void setup() napsat vše, co potřebuje čidlo i display
 - ve void loop() nastavit, aby se na display vypsala teplota a na další řádek vlhkost (aktualizace každou sekundu)
 
RGB LEDka
Popis
RGB LEDka má v sobě jakoby 3 LEDky - Red, Green, Blue Má 3 katody (+) a jednu anodu (-) [schéma]
Abychom ji mohli rozsvítit do námi požadované barvy, musíme něco vědět o [RGB mobelu] Teoreticky je 16milionů 255natřetí možných kombinací, jak může svítit.
Budeme chtít zelenou - tak přivedeme napětí ke katodě která je spojena přechodem pn emitujícím zelené světlo.
Zapojení
GPIO pin - rezistor - katoda
Příklady
#define red ... #define gre ... #fefine blu ... Chceme čevenou digitalWrite(red, HIGH); Chceme žlutou digitalWrite(red, HIGH); digitalWrite(gre, HIGH);
Samostatný úkol
- zelená barva
 - bílá barva
 - Vaše oblíbená barva
 - černá barva
 
Moc kombinací není, co?
Příklady 2
Metodu analogWrite() již znáne,
Pomocí ní můžeme dát RGB diodě jakoukoliv barvu.
Víme, že RGB model je 0 - 255 a že metoda analogWrite() má rozsah 0 - 1023
Samostatný úkol 2
Tak hurá do práce, zkuste!
- Zkuste použít tento kód - není přímo na naše zařízení, upravte si ho :D
 
- RGB dioda - červená, modrá, zelená, žlutá, bílá barva (každá barva bude 3 sekundy)
 - -//- a na display se napíše, která barva svítí