Když již zvládáme načítání analogových vstupů modulu Arduino a nyní jsme si osvojili ovládání LCD displeje, můžeme si kupříkladu vytvořit digitální voltmetr s rozsahem 0–5 V. Proměnné vstupní napětí budeme simulovat připojeným potenciometrem.
V tomto experimentu využijeme potenciometr k dělení napětí. Výhodou modulu Arduino je, že neumí číst pouze digitální signály, ale umí načítat i analogový signál na výstupu jezdce potenciometru. Na analogových vstupech, které jsou osazeny 10-bitovými analogově-digitálním převodníkem (ADC), dokáže převést tento analogový signál na číselnou podobu. Po přepočítání vstupní hodnoty z rozsahu 0–1023 na interval 0–5 V je získaná hodnota vstupního napětí zobrazena na LCD displeji.
Krok 1: Sestavíme si obvod podle následujícího obrázku nebo schématu. Spojení mezi displejem I²C LCD1602 a modulem Arduino znázorňuje následující tabulka.
Blokové schéma
Elektronické schéma
I²C LCD1602 | modul Arduino | |
---|---|---|
UNO | Mega | |
SDA | A4 | 20 |
SCL | A5 | 21 |
UCC | 5V | 5V |
GND | GND | GND |
Krok 2: V prostředí mBlock vytvoříme následující program. Při tvorbě programu je třeba znát adresu použitého I²C LCD displeje, neboť u každého příkazů pro LCD je třeba nastavit aktuální adresu. (viz rozbalovací pole „adr.“).
Program lze stáhnout z:
http://
V počáteční části programu nastavíme parametry použitého LCD, jako jsou jeho rozměry (sloupce, řádky) a zapnutí podsvícení. Je třeba se zaměřit na správné nastavení adresy použitého I²C převodníku! Před spuštění hlavní nekonečné smyčky „opakuj stále“ je ještě na střed první řádky vypsán text „Napeti:“. Hlavní nekonečná smyčka pak již pracuje jen s druhou řádkou displeje. Nejdříve je načtena analogová hodnota napětí na vstupním pinu A0
, pak je přepočtena ze vstupního rozmezí 0–1023 na interval 0–5. Tím získáme hodnotu vstupního elektrického napětí. Tato hodnota je uložena do proměnné hod. Následuje výpis této hodnoty na druhý řádek LCD. Jelikož při konverzi reálného čísla (hodnota napětí) na text, který bude na LCD vypsán, je číslo vždy uvedeno s dvěma desetinnými místy, není třeba řešit různou délku výstupního řetězce na displeji. Displej tedy není třeba mazat, neboť hodnoty se přepisují a díky stejné délce vypsaných textů se nemůže stát, že by na daném řádku LCD zbyly znaky z předešlého delšího textu.
Krok 3: Zkompilujeme kód a nahrajeme do modulu Arduino tlačítkem .
Krok 4: Při otáčení potenciometrem můžeme na LCD displeji vidět velikost naměřeného elektrického napětí na pinu A0
modulu Arduino.
Pokud chceme výpisy na sériový port sledovat, je třeba modul Arduino odpojit od prostředí mBlock a připojit k aplikaci Serial Monitor.
Krok 5: Nyní modul Arduino odpojíme od prostředí mBlock pomocí tlačítkem . USB kabel modulu Arduino ale od počítače neodpojujeme!
Krok 6: Spustíme na počítači aplikaci Serial Monitor. V Serial Monitoru vybereme port, na které je náš modul Arduino (např. COM5) připojen a nastavíme komunikační rychlost na hodnotu 115200 baudů. Na závěr se tlačítkem „Connect“ připojíme k modulu Arduino. Objeví se okno sériového monitoru, ve kterém budou vypisovány výstupní hodnoty naměřeného elektrického napětí.