V článku pripojíme k Arduinu displej z tekutých kryštálov 1602 s modulom FC-113 I2C, kvôli ktorému sa pripojenie uskutoční iba pomocou dvoch dátových a dvoch napájacích vodičov.
Je to nevyhnutné
- - Arduino;
- - LCD displej 1602 (16 znakov, 2 riadky);
- - adaptér I2C FC-113;
- - spojovacie vodiče.
Inštrukcie
Krok 1
Modul FC-113 je založený na mikroobvode PCF8574T, čo je 8-bitový posuvný register - I / O expandér pre sériovú zbernicu I2C. Na obrázku je mikroobvod označený ako DD1.
R1 je trimovací rezistor na nastavenie kontrastu LCD.
Jumper J1 slúži na zapnutie podsvietenia displeja.
Kolíky 1 … 16 sa používajú na pripojenie modulu k kolíkom LCD displeja.
Na zmenu adresy zariadenia I2C sú potrebné kontaktné podložky A1 … A3. Spájkovaním zodpovedajúcich prepojok môžete zmeniť adresu zariadenia. Tabuľka zobrazuje korešpondenciu adries a prepojok: „0“zodpovedá prerušenému obvodu, „1“- nainštalovanému prepojku. V predvolenom nastavení je adresa zariadenia 0x27, t.j. všetky 3 prepojky sú otvorené.
Krok 2
Modul je štandardne pripojený k Arduinu na zbernici I2C: pin SDA modulu je pripojený k analógovému portu A4, SCL pin je pripojený k analógovému portu A5 Arduina. Modul je napájaný z +5 V z Arduina. Samotný modul je spojený pinmi 1 … 16 s príslušnými pinmi 1 … 16 na LCD displeji.
Krok 3
Teraz potrebujeme knižnicu na prácu s LCD displejmi cez rozhranie I2C. Môžete použiť napríklad tento: https://www.dfrobot.com/wiki/index.php?title=I2C/TWI_LCD1602_Module_(SKU:_DFR0063)#Sample_Code (odkaz v riadku „Stiahnutie ukážkového kódu a knižnice“)).
Stiahnutý archív „LiquidCrystal_I2Cv1-1.rar“sa rozbalí do priečinka „\ libraries \“, ktorý sa nachádza v adresári Arduino IDE.
Knižnica podporuje súbor štandardných funkcií pre LCD obrazovky:
LiquidCrystal () - vytvorí premennú typu LiquidCrystal a akceptuje parametre pripojenia displeja (čísla pinov), start () - inicializácia LCD displeja, nastavenie parametrov (počet riadkov a symbolov);
clear () - vymaže obrazovku a vráti kurzor do začiatočnej polohy;
home () - vráti kurzor na začiatočnú pozíciu;
setCursor () - nastavenie kurzora na zadanú pozíciu;
write () - zobrazí znak na obrazovke LCD;
print () - zobrazí text na obrazovke LCD;
cursor () - zobrazí kurzor, t.j. podčiarknutie pod miestom nasledujúceho znaku;
noCursor () - skryje kurzor;
blink () - blikanie kurzora;
noBlink () - zrušiť blikanie;
noDisplay () - vypne displej a uloží všetky zobrazené informácie;
display () - zapnutie displeja pri ukladaní všetkých zobrazených informácií;
scrollDisplayLeft () - posúva obsah displeja o 1 pozíciu doľava;
scrollDisplayRight () - posúva obsah displeja o 1 pozíciu doprava;
autoscroll () - povoliť autoscroll;
noAutoscroll () - vypne autoscroll;
leftToRight () - nastavuje smer textu zľava doprava;
rightToLeft () - smer textu sprava doľava;
createChar () - Vytvorí vlastný znak pre obrazovku LCD.
Krok 4
Poďme otvoriť ukážku: Súbor -> Vzorky -> LiquidCrystal_I2C -> CustomChars a trošku to prerobiť. Poďme zobraziť správu, na konci ktorej bude blikajúci symbol. Všetky nuansy náčrtu sú komentované v komentároch ku kódu.
Krok 5
Pozrime sa podrobnejšie na otázku vytvárania vlastných symbolov pre LCD obrazovky. Každá postava na obrazovke pozostáva z 35 bodov: 5 širokých a 7 vysokých (+1 vyhradené podčiarknutie). V riadku 6 vyššie uvedeného náčrtu sme nastavili pole 7 čísel: {0x0, 0xa, 0x1f, 0x1f, 0xe, 0x4, 0x0}. Prevodme hexadecimálne čísla na binárne: {00000, 01010, 11111, 11111, 01110, 00100, 00000}. Tieto čísla nie sú ničím iným ako bitovými maskami pre každý zo 7 riadkov postavy, kde „0“označuje svetlý bod a „1“tmavý bod. Na obrazovke sa napríklad zobrazí symbol srdca špecifikovaný ako bitová maska, ako je to znázornené na obrázku.
Krok 6
Nahrajte náčrt do Arduina. Na obrazovke sa zobrazí nápis, ktorý sme určili, s blikajúcim kurzorom na konci.