IT3 – RBT – Arduino – I2C LCD displej
CV-09b
I2C LCD displej
LCD displej je vhodný pro zobrazování údajů a zlepšují tím pádem naši interakci s přístroji. LCD panely se běžně připojují na kontroler, na kterém obsadí několik I/O portů, kterých je omezený počet. Proto byl vyvinut převodník se I2C sběrnicí pro 1602 a 2004 LCD displej, který daný problém vyřešil.
I²C (anglicky Inter-Integrated Circuit, čteme I-squared-C, nesprávně I-two-C) je multi-masterová počítačová sériová sběrnice vyvinutá firmou Philips, která je používána k připojování nízkorychlostních periferií k základní desce, mikrokontroléru, aj.
Praktická identická sběrnice se skrývá i pod zkratkou TWI (Two Wire Interface - dvoudrátové rozhraní), kterou používá firma Atmel a další výrobci, namísto chráněné značky I2C.
Modrý potenciometr na převodníky se používá k nastavení podsvícení. I²C používá pouze dva obousměrné kanály - datový kanál SDA a hodinový signál SCL s pull-up rezistory. Používá se napětí +5 V nebo +3,3 V, povoleny jsou však i systémy s jiným napětím.
Budeme potřebovat
-
Arduino Uno (nebo jinou desku).
-
USB kabel.
-
Nepájivé kontaktní pole.
-
Vodiče
-
I²C zařízení např. I2C LCD displej
Zapojení
Dle obrázku:
| I2C LCD1602 | Arduino UNO |
|---|---|
| GND | GND |
| VCC | 5V |
| SDA | A4 |
| SCL | A5 |
_ IT3 – RBT – Arduino – I2C LCD displej
CV-09b
Obrázek 1: Zapojení LCD displaye na Arduino na sběrnici I2C
Obrázek 2: Připojení Arduina na LCD display – Zadní strana
Obrázek 3: LCD disply - Přední strana
Program bude vycházet z předchozího programu na skenování adresy zařízení připojeného ke sběrnici I2C.
Tentokráte necháme zobrazit text na LCD displeji pomocí programování.
Instalace knihoven
Staženou knihovnu „ LiquidCrystal_I2C.zip “ rozbalte do adresáře:
„ C:\Users\uživatelské_jméno\Documents\Arduino\Libraries “ ještě před kompilací programu.
Program
Do Arduino IDE vložíme kód programu a nahrajeme jej do Arduina:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
char array1[]=" Martinik je BOSS ";// první řádek
displeje (26 znaků!)
char array2[]=" Ahoj ajtaci! ";// druhý řádek
displeje (26 znaků!)
_ IT3 – RBT – Arduino – I2C LCD displej
CV-09b
int tim = 500; //délka pauzy
// inicializace knihovny displejeLiquidCrystal_I2C lcd(0x27,16,2);//displeje na 0x27 pro 1602 displej | nastavit adresu |
|---|---|
void setup() {lcd.init(); | // |
inicializace lcdlcd.backlight(); | // |
zapnout podsvícení} | |
void loop() {lcd.setCursor(15,0); | // |
nastavení kurzoru na sloupec 15, řádek 0for (int positionCounter1 = 0; positionCou | nter1 < 26; |
positionCounter1++) { | |
lcd.scrollDisplayLeft();obsah zprávy na displeji zprava do leva.lcd.print(array1[positionCounter1]);/displeji.delay(tim); | // Protáhnout/ Zobrazit zprávu na// |
počkat 500 ms}lcd.clear(); | // |
vyčistit displej a přesunout kurzor na začátek.lcd.setCursor(15,1); | // |
nastavení kurzoru na sloupec 15, řádek 1for (int positionCounter = 0; positionCoun | ter < 26; |
positionCounter++) {lcd.scrollDisplayLeft();obsah zprávy na displeji zprava do leva.lcd.print(array2[positionCounter]);zprávu na displeji.delay(tim); | // protáhnout// zobrazit// |
počkat 500 ms}lcd.clear(); | // |
vyčistit displej a přesunout kurzor na začátek.} |
Po spuštění programu se na LCD displeji objeví posunující se text.
Pokud nejde na displeji nic vidět, tak je potřeba změnit nastavení odporového trimru (modrý čtverec) na spodní straně displeje.
_ Obrázek 4: Kontrola podsvícení LCD displeje
IT3 – RBT – Arduino – I2C LCD displej
CV-09b
Úkol:
Upravte program tak, aby text zobrazovaném na druhém řádku probíhal zleva doprava.
Citace:
Arduino MAXI Starter kit OD BASTLÍŘŮ BASTLÍŘŮM - Lekce 6 Lekce 6 I2C LCD displej
_