Stránky /
Displeje /
LCD displej je lacné riešenie, ako zobrazovať údaje a nebyť pritom limitovaný na pripojenie ku počítaču. Na obrázku je zapojený displej, ktorý má v sebe nahraný program Hello world priamo z príkladov.
Je tam aj pár súčiastok (LM317 a tri odpory), ktoré nie sú pripojené a nie sú nutné na zapojenie displeja. Funkčné súčiastky sú tri.
- Dva rezistory tvoria deličku napätia, ktorá definuje kontrast displeja. Lepšie je ale použiť potenciometer a nastaviť vhodnú hodnotu napätia experimentálne.
- Posledný rezistor je pripojený k podsvieteniu a limituje prúd cez LED diódu podsvietenia, pretože tak si to odo mňa vyžadoval datasheet. Iné displeje ho nemusia vyžadovať a vtedy sa tam priamo napojí 5 V.
Letovanie
Displej sa obvykle dodáva bez naletovaných konektorov. Preto je ho potrebné pred prvým použitím doplniť o nejaké pohodlné konektory, ktoré umožnia jeho pohodlné pripájanie a odpájanie. Ja som na oba moje displeje priletoval kolíkové lišty, ktoré umožňujú pohodlne zastrčiť displej do skúšobnej dosky.
Piny
Piny sú na displeji označené a obvykle sa nachádzajú na ľavom hornom okraji displeja. Začína sa z ľavej strany:
- VSS - Sem sa pripája GND z Arduina.
- VDD - Sem sa pripája 5 V z Arduina.
- Vo - Kontrast. Ten je možné nastaviť potenciometrom, alebo komu sa s tým nebude chcieť hrať, stačí to napevno pripojiť cez deličku napätia. V hraničných nastaveniach to nebude ukazovať nič rozumné, takže obvykle aj tak skončíte na tom, že tam dát približne 3 V a viac sa s tým nebudete zabávať. Teraz som ešte podrobnejšie preskúmal všetky displeje, ktoré mám a je to naozaj individuálna záležitosť nastavenia pre každý displej. To čo na jednom svieti pekne, na inom je skoro nečitateľné. Takže treba si vyskúšať a nastaviť podľa svojho.
- RS - High - Data. Low - Inštrukcie. Napríklad na digitálny pin 12 Arduina.
- R/W - Zapisovanie alebo ćítanie dát. Keďže obvykle budeme len zapisovať, pripojí sa sem GND.
- E - Enable signal. Napríklad na digitálny pin 11 Arduina.
- DB0 - Data. V obvyklom štvorbitovom móde býva nezapojený.
- DB1 - Data. V obvyklom štvorbitovom móde býva nezapojený.
- DB2 - Data. V obvyklom štvorbitovom móde býva nezapojený.
- DB3 - Data. V obvyklom štvorbitovom móde býva nezapojený.
- DB4 - Data. V obvyklom štvorbitovom móde býva zapojený. Napríklad na digitálny pin 5 Arduina.
- DB5 - Data. V obvyklom štvorbitovom móde býva zapojený. Napríklad na digitálny pin 4 Arduina.
- DB6 - Data. V obvyklom štvorbitovom móde býva zapojený. Napríklad na digitálny pin 3 Arduina.
- DB7 - Data. V obvyklom štvorbitovom móde býva zapojený. Napríklad na digitálny pin 2 Arduina.
- A - Kladný pól podsvetlenia displeja. Niektoré displeje sú čitateľné aj bez podsvetlenia, iné nie. Toto je dobré nastaviť presne podľa datasheetu, pretože existujú dve možnosti:
- niektoré displeje sem umožňujú pripojiť priamo 5 V a napájajú si LED cez vlastný predradný odpor,
- iné ho nemajú a bez odporu by sa LED spálili.
- Pozor ešte na to, že ak pripojíte sem pin 5 V z Arduina a budete mať displej, ktorý má viac LED diód, bude tadeto tiecť väčší prúd a regulátor na Arduine bude dosť horúci.
- K - Záporný pól podsvetlenia. Sem sa pripojí GND.
LCD v Arduine
LCD pripojíme pomocou dvoch príkazov. V tomto príklade sú použité piny na Arduine podľa predchádzajúceho textu.
// pripojíme si knižnicu na prácu s LCD
#include <LiquidCrystal.h>
// Inicializujeme LCD objekt
// 12 - RS, 11 - E, 5 - DB4, 4 - DB5, 3 - DB6, 2 - DB7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
Následne môžeme používať príkazy na ovládanie displeja:
- lcd.begin(16, 2) - Nastavíme, že displej má 16 stĺpcov a 2 riadky.
- lcd.setCursor(0, 1) - Presun kurzora na prvý stĺpec a druhý riadok.
- lcd.print("xxx") - Vypísanie textu.
- lcd.print(" ") - Medzerami vymažeme text.
Existujú aj iné príkazy, ale na bežné použitie stačia tieto.
06.04.2016