wszędzie wokół nas spotykamy wyświetlacze LCD. Komputery, kalkulatory, telewizory, telefony komórkowe, zegarki Cyfrowe używają pewnego rodzaju wyświetlacza do wyświetlania czasu.
LCD to elektroniczny moduł wyświetlający, który wykorzystuje ciekłokrystaliczny do uzyskania widocznego obrazu. Wyświetlacz LCD 16×2 jest bardzo podstawowym modułem powszechnie stosowanym w DIY i obwodach. The 16×2 translates o a display 16 characters per line in 2 such lines. In this LCD each character is displayed in a 5×7 pixel matrix.
16X2 LCD pinout diagram
Pin No. |
Function |
Name |
1 |
Ground (0V) |
Ground |
2 |
Supply voltage; 5V (4.7V – 5.3V) |
Vcc |
3 |
Contrast adjustment; the best way is to use a variable resistor such as a potentiometer. The output of the potentiometer is connected to this pin. Obróć pokrętło potencjometru do przodu i do tyłu, aby dostosować kontrast LCD. |
Vo / VEE |
4 | wybiera rejestr poleceń, gdy jest niski, i rejestr danych, gdy jest wysoki | |
5 | niski do zapisu do rejestru; wysoki do odczytu z rejestru | odczyt/zapis |
6 | wysyła dane do pinów danych, gdy podano impuls od wysokiego do niskiego; Do wykonania instrukcji wymagane jest dodatkowe naciśnięcie napięcia i do tego celu wykorzystywany jest sygnał EN (enable). Zwykle ustawiamy en=0, gdy chcemy wykonać instrukcję, robimy to wysoko en = 1 przez kilka milisekund. Po tym ponownie robimy to na ziemi, czyli en=0. | Enable |
7 | 8-bit data pins | DB0 |
8 | DB1 | |
9 | DB2 | |
10 | DB3 | |
11 | DB4 | |
12 | DB5 | |
13 | DB6 | |
14 | DB7 | |
15 | podświetlenie VCC (5V) | Led+ |
16 | podświetlenie uziemienia (0V) | LED- |
RS (register select)
wyświetlacz lcd 16×2 ma dwa rejestry, mianowicie polecenie i dane. Wybór rejestru służy do przełączania się z jednego rejestru na drugi. RS=0 dla rejestru poleceń, RS = 1 dla rejestru danych.
rejestr poleceń: rejestr poleceń przechowuje instrukcje poleceń podane na wyświetlaczu LCD. Polecenie jest instrukcją przekazywaną do LCD w celu wykonania predefiniowanego zadania. Przykłady takie jak:
- inicjalizacja
- wyczyszczenie ekranu
- ustawienie pozycji kursora
- sterowanie wyświetlaczem itp.
przetwarzanie poleceń odbywa się w rejestrze poleceń.
rejestr danych: rejestr danych przechowuje dane do wyświetlenia na wyświetlaczu LCD. Dane są wartością ASCII znaku, który ma być wyświetlany na wyświetlaczu LCD. Po wysłaniu danych do LCD trafiają one do rejestru danych i tam są przetwarzane. Gdy RS=1, wybierany jest rejestr danych.
Important command codes for LCD
Sr.No. | Hex Code | Command to LCD instruction Register |
1 | 01 | Clear display screen |
2 | 02 | Return home |
3 | 04 | Decrement cursor (shift cursor to left) |
4 | 06 | Increment cursor (shift cursor to right) |
5 | 05 | Shift display right |
6 | 07 | Shift display left |
7 | 08 | Display off, cursor off |
8 | 0A | Display off, cursor on |
9 | 0C | Display on, cursor off |
10 | 0E | Display on, cursor blinking |
11 | 0F | Display on, cursor blinking |
12 | 10 | Shift cursor position to left |
13 | 14 | Shift cursor position to right |
14 | 18 | Shift the entire display to the left |
15 | 1C | Shift the entire display to the right |
16 | 80 | Force cursor to beginning ( 1st line) |
17 | C0 | Force cursor to beginning ( 2nd line) |
18 | 38 | 2 lines and 5×7 matryca |
wyświetlanie niestandardowych znaków na wyświetlaczu LCD 16X2
generowanie niestandardowych znaków na wyświetlaczu LCD nie jest zbyt trudne. Wymaga wiedzy na temat niestandardowej generowanej pamięci o dostępie losowym (CG-RAM) LCD i kontrolera układów LCD. Większość monitorów LCD zawiera kontroler Hitachi HD4478.
CG-RAM jest głównym komponentem w tworzeniu niestandardowych znaków. Przechowuje niestandardowe znaki raz zadeklarowane w kodzie. Rozmiar CG-RAM to 64 bajty dające możliwość utworzenia ośmiu znaków na raz. Każdy znak ma rozmiar ośmiu bajtów.
adres CG-RAM zaczyna się od 0x40 (szesnastkowy) lub 64 w układzie dziesiętnym. Możemy generować niestandardowe znaki pod tymi adresami. Po wygenerowaniu naszych znaków pod tymi adresami możemy je wydrukować wysyłając komendy na wyświetlacz LCD. Adresy znaków i polecenia drukowania znajdują się poniżej.
w powyższej tabeli można zobaczyć adresy początkowe dla każdego znaku z ich poleceniami drukowania.
pierwszy znak jest generowany pod adresem 0x40 do 0x47 i jest drukowany na wyświetlaczu LCD przez wysłanie polecenia 0.
drugi znak jest generowany pod adresem 0x48 do 0x55 i jest drukowany przez wysłanie polecenia 1.
jak wygenerować własne znaki w CG-RAM
w wyświetlaczach LCD, każdy znak jest w matrycy 5×8. Gdzie 5 to liczba kolumn, a 8 to liczba wierszy.
Oto prosty przykład jak utworzyć literę 'b’ w CG-RAM.
Tablica do generowania 'b’ to char b={0x10,0x10,0x16,0x19,0x11,0x11,0x1e}; Oznacza to, że
- Wyślij adres, na który chcesz utworzyć znak.
- teraz Utwórz swoją postać pod tym adresem. Prześlij wartości tablicy znaków’ b ’ zdefiniowane powyżej jeden po drugim do rejestru danych LCD.
- aby wydrukować wygenerowany znak w 0x40. Wyślij komendę 0 do rejestru komend LCD. Poniższa tabela wyjaśni to jaśniej
łączenie wyświetlacza LCD 16×2 z modułami Arduino
LCD stanowi bardzo ważne w wielu projektach systemów wbudowanych opartych na Arduino, aby poprawić interfejs użytkownika systemu. Współpraca z Arduino daje programiście więcej swobody w łatwym dostosowywaniu kodu. Każda płyta Arduino, wyświetlacz LCD 16×2, przewody połączeniowe i deska do krojenia chleba są wystarczające do zbudowania obwodu. Połączenie Arduino z wyświetlaczem LCD poniżej.
kod źródłowy dla 16X2LCD i Arduino.
wyświetl jasność LED na wyświetlaczu LCD 16×2
połączenie LCD i Arduino daje kilka projektów, z których najprostszym jest Wyświetlacz LCD do wyświetlania jasności LED. Wszystko, czego potrzebujemy do tego układu to LCD, Arduino, breadboard, Rezystor, potencjometr, LED i kilka kabli połączeniowych. Połączenia obwodu znajdują się poniżej.
szczegółowy projekt jest dostępny pod adresem wyświetlanie jasności LED na wyświetlaczu LCD
ten artykuł został opublikowany po raz pierwszy na stronie