am venit peste LCD afișează peste tot în jurul nostru. Calculatoare, calculatoare, televizoare, telefoane mobile, ceasuri digitale folosesc un fel de afișaj pentru a afișa ora.
un LCD este un modul electronic de afișare care utilizează cristale lichide pentru a produce o imagine vizibilă. Display-ul LCD 16-2-ul este un modul foarte simplu utilizat în mod obișnuit în DIYs și circuite. 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. Rotiți butonul potențiometrului înainte și înapoi pentru a regla contrastul LCD. |
Vo/VEE |
4 | Selectează registrul de comandă când este scăzut și registrul de date când este ridicat | Rs (register select) |
5 | scăzut pentru a scrie în registru; ridicat pentru a citi din registru | citire/scriere |
6 | trimite date către pinii de date atunci când este dat un impuls înalt până la scăzut; Este necesară o apăsare suplimentară de tensiune pentru a executa instrucțiunea și semnalul EN(enable) este utilizat în acest scop. De obicei, setăm en=0, când vrem să executăm instrucțiunea, o facem ridicată en=1 pentru câteva milisecunde. După aceasta vom face din nou la sol, care este, en=0. | Enable |
7 | 8-bit data pins | DB0 |
8 | DB1 | |
9 | DB2 | |
10 | DB3 | |
11 | DB4 | |
12 | DB5 | |
13 | DB6 | |
14 | DB7 | |
15 | Backlight Vcc (5V) | Led+ |
16 | Backlight Ground (0V) | LED- |
Rs (register select)
un LCD de 16×2 are două registre, și anume comanda și datele. Registrul select este utilizat pentru a comuta de la un registru la altul. RS = 0 pentru registrul de comandă, în timp ce RS = 1 pentru registrul de date.
Command Register: registrul de comenzi stochează instrucțiunile de comandă date ecranului LCD. O comandă este o instrucțiune dată LCD pentru a face o sarcină predefinită. Exemple precum:
- inițializarea acestuia
- ștergerea ecranului
- setarea poziției cursorului
- controlul afișajului etc.
procesarea comenzilor are loc în registrul de comenzi.
Registrul de date: registrul de date stochează datele care vor fi afișate pe ecranul LCD. Datele reprezintă valoarea ASCII a caracterului care va fi afișat pe ecranul LCD. Când trimitem date către LCD, acestea merg în registrul de date și sunt procesate acolo. Când RS = 1, registrul de date este selectat.
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 matrix |
afișarea caracterelor personalizate pe ecranul LCD de 16×2
generarea caracterelor personalizate pe ecranul LCD nu este foarte dificilă. Este nevoie de cunoștințe despre personalizate generate de memorie cu acces aleator (CG-RAM) de LCD și controlerul cip LCD. Majoritatea LCD-urilor conțin controler Hitachi HD4478.
CG-RAM este componenta principală în a face caractere personalizate. Stochează caracterele personalizate odată declarate în cod. Dimensiunea CG-RAM este de 64 octet oferind opțiunea de a crea opt caractere la un moment dat. Fiecare personaj are o dimensiune de opt octeți.
adresa CG-RAM începe de la 0x40 (hexazecimal) sau 64 în zecimal. Putem genera caractere personalizate la aceste adrese. Odată ce ne generăm personajele la aceste adrese, le putem imprima doar prin trimiterea de comenzi pe ecranul LCD. Adresele caracterelor și comenzile de imprimare sunt mai jos.
în tabelul de mai sus puteți vedea adresele de pornire pentru fiecare caracter cu comenzile lor de imprimare.
primul caracter este generat la adresa 0x40 la 0x47 și este imprimat pe LCD doar prin trimiterea unei comenzi 0.
al doilea caracter este generat la adresa 0x48 la 0x55 și este tipărit prin trimiterea unei comenzi 1.
Cum de a genera caractere personalizate în CG-RAM
în Display-uri LCD, fiecare caracter este într-o matrice de 5 la 8. Unde 5 sunt numărul de coloane și 8 este numărul de rânduri.
Iată un exemplu simplu de creare a literei ‘b’ în CG-RAM.
matricea pentru generarea ” b ” este char b={0x10,0x10,0x16,0x19,0x11,0x11,0x1e}; Adică
- trimiteți adresa unde doriți să creați caracter.
- acum Creați-vă personajul la această adresă. Trimiteți valorile matricei de caractere’ b ‘ definite mai sus una câte una în registrul de date al LCD-ului.
- pentru a imprima caracterul generat la 0x40. Trimiteți comanda 0 la registrul de comandă al LCD-ului. Tabelul de mai jos ar explica acest lucru mai clar
interfațarea unui LCD de 16×2 cu Arduino
modulele LCD formează un foarte important în multe modele de sisteme încorporate bazate pe Arduino pentru a îmbunătăți interfața cu utilizatorul a sistemului. Interfațarea cu Arduino oferă programatorului mai multă libertate de a personaliza codul cu ușurință. Orice placă Arduino, un afișaj LCD de 16×2, fire jumper și o placă de pâine sunt suficiente pentru a construi circuitul. Interfațarea Arduino la ecranul LCD de mai jos.
codul sursă pentru 16x2lcd și Arduino.
afișează luminozitatea LED-urilor pe un ecran LCD de 16 x2
combinația dintre un LCD și Arduino produce mai multe proiecte, cel mai simplu fiind LCD pentru a afișa luminozitatea LED-urilor. Tot ce avem nevoie pentru acest circuit este un LCD, Arduino, breadboard, un rezistor, potențiometru, LED și câteva cabluri jumper. Conexiunile circuitului sunt mai jos.
proiectul detaliat este disponibil la afișarea luminozității unui LED pe un ecran LCD
acest articol a fost publicat pentru prima dată la 21 noiembrie 2016 și a fost actualizat recent la 31 iulie 2020.