Z MiS
(Rozdíly mezi verzemi)
|
|
Řádka 50: |
Řádka 50: |
| = RGB LEDka = | | = RGB LEDka = |
| | | |
− | == Popis ==
| + | [[ Letní IoT: LEDka # RGB LEDka | RGB LEDka ]] |
− | 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 18. 11. 2020, 12:31
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
Sériový IO
RGB led
NTP
NTP
NTP na LCD
Čidlo
BMP280
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.
čidlo na LCD
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
RGB LEDka