Díl 8 - Zapojení LCD displeje (parallel)
20.05.2014 08:22
Dnešní, již osmý díl našeho seriálu, budu věnovat LCD displejům. Každý kdo někdy s Arduinem něco tvořil, dojde samozřejmě do bodu, kdy potřebuje data zobrazovat uživateli, či nechat uživatele si vybrat nějaké nastavení či cokoliv jiného, k čemu je třeba displej.
Můžete samozřejmě s výhodou použít LCD modul, kde nemusíte nic zapojovat, pouze nasadíte na Arduino (Mega nebo Uno) a vše Vám bez problémů funguje. Jenže, pokud potřebujete LCD displej připojit i k jinému typu desky, například Nano, Mini Pro, Micro Pro - pak je nutná již znalost zapojení a to si dnes ukážeme.
Je to až triviálně jednoduché a zvládne to opravdu každý nadšený amatér.
Nejprve tedy, co budeme potřebovat:
- desku Arduino (já zvolil Uno)
- LCD displej parallelní (pro ukázku jsem zvolil 16x2)
- breadboard
- pin lištu alespoň 16 pinů
- potenciometr - 10Kohm (pro nastavení kontrastu displeje)
- a nějaké propojovací drátky (Dupont)

Potenciometr připojíme tak, že některou z krajních nožiček (jedno kterou) připojíme na +5V a tu druhou krajní na GND. Prostřední nožičku potenciometru připojíme na pin č.3 LCD displeje.

piny na liště LCD | R/W | RS | EN | DB4 | DB5 | DB6 | DB7 |
Arduino (čísla pinů) | GND | 7 | 8 | 9 | 10 | 11 | 12 |
Pokud potřebujete změnit/použít jiné piny pro připojení LCD displeje, tak prostě použijete jiné, jen je potom musíte správně nastavit v programu, který si právě ukážeme.
Ke komunikaci s displejem se používá knihovna LiquidCrystal, která je součástí IDE Arduina.
Otevřete si tedy sketch s názvem HelloWorld, který naleznete v menu - File→Examples→LiquidCrystal→HelloWorld
V programu musíme změnit piny, které používá náš LCD displej, najděte tedy v programu řádek kde je právě toto:
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
A nastavte piny tak, jak je máme připojeny:
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
Připojíme Arduino k PC, nastavíme správný COM port a typ desky a nahrajeme náš program do Arduina tlačítkem Upload.
Na displeji se nám bude zobrazovat nápis HelloWorld na prvním řádku a na druhém se budou "počítat" sekundy od spuštění Arduina.
Pokud potřebujete, otočte potenciometrem a nastavte si správný kontrast, aby bylo písmo dobře čitelné.
Takto jsou zapojeny všechny LCD displeje "paralleního typu", takže takto můžete zapojit nejen LCD 16x2 modrý či žlutý, ale i LCD 20x4 modrý či žlutý, případně jakékoliv jiné parallelní displeje.
Pokud si prostudujete program našeho příkladu, jistě sami celkem jednoduše poznáte, co kde změnit, aby jste mohli použít namísto 2 řádkového ten 4 řádkový displej.
Na závěr ještě přidám tabulku s popisem všech pinů displeje, ať to máme všechno pěkně pohromadě.
Číslování pinů na desce | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
jmenné názvy | VSS | VDD | Contrast | RS | R/W | EN | DB0 | DB1 | DB2 | DB3 | DB4 | DB5 | DB6 | DB7 | backlight | backlight |
Arduino (čísla pinů) | GND | +5V | potenciometr | 7 | GND | 8 | - | - | - | - | 9 | 10 | 11 | 12 | +5V | GND |