Připojení LCD 1602 k Arduinu: popis, funkce, pokyny, vlastnosti, problémy a řešení

Obsah:

Připojení LCD 1602 k Arduinu: popis, funkce, pokyny, vlastnosti, problémy a řešení
Připojení LCD 1602 k Arduinu: popis, funkce, pokyny, vlastnosti, problémy a řešení
Anonim

Každý radioamatér po nějaké jednoduché kutilské práci dospěje k cíli postavit pomocí senzorů a tlačítek něco velkého. Přeci jen je mnohem zajímavější zobrazovat data na displeji než na monitoru portu. Pak ale vyvstává otázka: jaký displej zvolit? A obecně, jak to připojit, co je potřeba k připojení? Odpovědi na tyto otázky budou probrány v tomto článku.

LCD 1602 displej pro připojení k arduinu
LCD 1602 displej pro připojení k arduinu

LCD 1602

Z mnoha možností mezi displeji bych rád vyzdvihl displej LCD1602 založený na řadiči HD4478. Tento displej je ve dvou barvách: bílá písmena na modrém pozadí, černá písmena na žlutém pozadí. Připojení LCD 1602 k Arduinu také nezpůsobí žádné problémy, protože je zde vestavěná knihovna a nemusíte stahovat nic navíc. Displeje se liší nejen cenou, ale také velikostí. Radioamatéři často používají 16x 2, tedy 2 řádky po 16 znacích. Ale existuje i 20 x 4, kde jsou 4 řádky po 20 znacích. Rozměry a barva nehrají při připojení lcd 1602 displeje k Ardunu žádnou roli, připojují se stejně. Pozorovací úhel je 35 stupňů, doba odezvy displeje je 250 ms. Může pracovat při teplotách od -20 do 70 stupňů Celsia. Při práci používá 4 mA pro obrazovku a 120 mA pro podsvícení.

Pinout displeje LCD 1602
Pinout displeje LCD 1602

Kde se používá?

Tento displej má svou oblibu nejen mezi radioamatéry, ale i mezi velkými výrobci. Například tiskárny, kávovary také používají LCD1602. To je způsobeno nízkou cenou, tento displej stojí na čínských stránkách 200-300 rublů. Vyplatí se tam nakupovat, protože v našich obchodech jsou marže u tohoto displeje velmi vysoké.

Připojit k Arduinu

Připojení LCD 1602 k Arduino Nano a Uno není jiné. S displejem můžete pracovat ve dvou režimech: 4 bitový a 8. Při práci s 8bitovým displejem se používají spodní i vyšší bity a u 4bitového pouze spodní. Nemá smysl pracovat s 8-bit, protože pro připojení budou přidány další 4 kontakty, což není vhodné, protože rychlost nebude vyšší, limit aktualizace displeje je 10krát za sekundu. Obecně se pro připojení lcd 1602 k Arduinu používá hodně drátů, což způsobuje určité nepříjemnosti, ale existují speciální štíty, ale o tom později. Fotografie ukazuje připojení displeje k Arduino Uno:

Připojení displeje k arduinu
Připojení displeje k arduinu

Příklad kódu:


zahrnout //Přidejte požadovanou knihovnu LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // (RS, E, DB4, DB5, DB6, DB7) void setup(){ lcd.begin(16, 2); // Nastavení rozměru obrazovky lcd.setCursor(0, 0); // Nastavte kurzor na začátek řádku 1 lcd.print("Ahoj světe!"); // Zobrazení textu lcd. setCursor(0, 1); // Nastavte kurzor na začátek řádku 2 lcd.print("fb.ru"); // Výstupní text } void loop(){

Co kód dělá? V první řadě je připojena knihovna pro práci s displejem. Jak již bylo zmíněno výše, tato knihovna je již součástí Arduino IDE a nemusíte ji stahovat a instalovat dodatečně. Dále jsou definovány kontakty, které jsou připojeny k pinům: RS, E, DB4, DB5, DB6, DB7, resp. Poté se nastaví velikost obrazovky. Protože pracujeme s verzí se 16 znaky a 2 řádky, zapisujeme takové hodnoty. Nastavíme kurzor na začátek prvního řádku a zobrazíme náš první text Hello World. Dále umístěte kurzor na druhý řádek a zobrazte název webu. To je vše! Bylo zvažováno připojení lcd 1602 k Arduino Uno.

Co je I2C a proč je potřeba?

Jak již bylo zmíněno výše, připojení displeje vyžaduje spoustu kolíků. Například při práci s více senzory a LCD displejem nemusí 1602 kontaktů jednoduše stačit. Často radioamatéři používají verze Uno nebo Nano, kde není mnoho kontaktů. Pak lidé přišli se speciálními štíty. Například I2C. Umožňuje připojení displeje pomocí pouhých 4 pinů. To je dvakrát méně. I2C modul se prodává jak samostatně, kde si jej musíte sami připájet, tak již připájenýLCD displej 1602.

I2C modul pro LCD displej 1602
I2C modul pro LCD displej 1602

Připojení s modulem I2C

Připojení LCD 1602 k Arduino Nano s I2C zabírá málo místa, pouze 4 piny: zem, napájení a 2 datové výstupy. Napájení a zem připojíme na 5V a GND na Arduinu, resp. Zbývající dva kontakty: SCL a SDA jsou připojeny k libovolným analogovým pinům. Na fotografii můžete vidět příklad připojení lcd 1602 k arduinu s modulem I2C:

Připojení displeje pomocí modulu I2C
Připojení displeje pomocí modulu I2C

Kód programu

Pokud bylo nutné pro práci s displejem bez modulu použít pouze jednu knihovnu, pak jsou pro práci s modulem potřeba dvě knihovny. Jeden z nich je již v Arduino IDE - Wire. Další knihovnu, LiquidCrystal I2C, je třeba stáhnout samostatně a nainstalovat. Chcete-li nainstalovat knihovnu v Arduinu, obsah staženého archivu musí být nahrán do kořenové složky knihoven. Příklad kódu pomocí I2C:


include include LiquidCrystal_I2C lcd(0x27, 16, 2); // Nastavení zobrazení void setup() { lcd.init(); lcd.backlight();// Zapnutí podsvícení displeje lcd.print("FB.ru"); lcd.setCursor(8, 1); lcd.print("LCD 1602"); } void loop() { // Nastaví kurzor na druhý řádek a znak null. lcd.setCursor(0, 1); // Vytiskne počet sekund od spuštění arduina lcd.print(millis()/1000);

Jak vidíte, kód je téměř stejný.

Jak přidám svůj vlastní symbol?

Problém s těmito displeji je, že žádné nejsoupodpora azbuky a symbolů. Například je potřeba načíst nějaký znak do displeje, aby ho mohl odrážet. K tomu vám displej umožňuje vytvořit až 7 vašich postav. Předložte tabulku:

0 0 0 1 0
0 0 0 0 1
1 1 0 0 1
0 0 0 0 1
1 1 0 0 1
0 0 0 0 1
0 0 0 1 0
0 0 0 0 0

Pokud 0 – nic tam není, pokud 1 – je to stínovaná oblast. Ve výše uvedeném příkladu můžete vidět vytvoření postavy „usmívajícího se smajlíka“. Pomocí příkladu programu v Arduinu by to vypadalo takto:


include include // Zahrnout požadovanou knihovnu // Smile symbol bitmask byte smile[8]={ B00010, B00001, B11001, B00001, B11001, B00001, B00010 LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // (RS, E, DB4, DB5, DB6, DB7) void setup(){ lcd.begin(16, 2); // Nastavení rozměru obrazovky lcd.createChar(1, smile); // Vytvoří znak číslo 1 lcd.setCursor(0, 0); // Nastaví kurzor na začátek řádku 1 lcd.print("\1"); // Zobrazení smajlíka (číslo znaku 1) - "\1" } void loop(){

Jak můžete vidět, byla vytvořenabitová maska je stejná jako tabulka. Jakmile je vytvořen, může být výstupem jako proměnná na displej. Pamatujte, že do paměti lze uložit pouze 7 znaků. V zásadě to stačí. Pokud například chcete zobrazit symbol stupně.

Přidání vlastních znaků do LCD 1602
Přidání vlastních znaků do LCD 1602

Problémy, kdy nemusí fungovat displej

Jsou chvíle, kdy displej nefunguje. Například se zapne, ale nezobrazuje znaky. Nebo se nezapne vůbec. Nejprve zkontrolujte, zda jste správně připojili kontakty. Pokud jste dříve připojovali lcd 1202 k Arduinu bez I2C, pak je velmi snadné se zamotat do vodičů, což může způsobit nesprávnou funkci displeje. Měli byste se také ujistit, že je zvýšen kontrast displeje, protože při minimálním kontrastu není ani vidět, zda je LCD 1602 zapnutý nebo ne. Pokud to nepomůže, problém může spočívat v pájení kontaktů, to je při použití modulu I2C. Častým důvodem, proč nemusí displej fungovat, je také nesprávné nastavení adresy I2C. Faktem je, že výrobců je mnoho a mohou nastavit jinou adresu, musíte to opravit zde:


LiquidCrystal_I2C lcd(0x27, 16, 2);

V závorkách můžete vidět dvě hodnoty, 0x27 a 16, 2 (16, 2 je velikost displeje a 0x27 je pouze adresa I2C). Místo těchto hodnot můžete zkusit zadat 0x37 nebo 0x3F. Dalším důvodem je prostě vadný LCD 1602. Vzhledem k tomu, že téměř vše pro Arduino je vyrobeno v Číně, nemůžete si být 100% jisti, že zakoupenéprodukt není vadný.

LCD 1602 výhody a nevýhody

Podívejme se na výhody a nevýhody LCD 1602.

Pros

  • Cena. Tento modul lze zakoupit za velmi přijatelnou cenu v čínských obchodech. Cena je 200-300 rublů. Někdy se dokonce prodává s modulem I2C.
  • Snadné připojení. LCD 1602 bez I2C v dnešní době asi nikdo nepřipojí. A s tímto modulem připojení trvá pouze 4 piny, nebudou zde žádné "pavučiny" drátů.
  • Programování. Díky připraveným knihovnám je práce s tímto modulem snadná, všechny funkce jsou již zaregistrovány. A pokud potřebujete přidat svou postavu, zabere to jen pár minut.

Nevýhody

Za dobu používání tisíci radioamatérů nebyly identifikovány žádné velké mínusy, pouze existují případy koupě manželství, protože se používají hlavně čínské možnosti zobrazení

Tento článek pojednával o tom, jak připojit displej LCD 1602 k Arduinu, a také představil ukázkové programy pro práci s tímto displejem. Je skutečně jedním z nejlepších ve své kategorii, nejde jen o to, že si ho pro své projekty vybírají tisíce radioamatérů!

Doporučuje: