16 × 2 LCD es diu així perquè; té 16 columnes i 2 files. Hi ha moltes combinacions disponibles, com ara 8 × 1, 8 × 2, 10 × 2, 16 × 1, etc. Però la més utilitzada és la pantalla LCD de 16 * 2, per tant la fem servir aquí.
Totes les pantalles LCD esmentades tindran 16 pins i l’enfocament de programació també és el mateix i, per tant, us queda l’elecció. A continuació es mostra el Pinout i Pin Description del mòdul LCD de 16x2:

|
Sr. |
Pin núm. |
Nom del pin |
Tipus de pin |
Descripció del pin |
Connexió de pins |
|
1 |
Pin 1 |
Terra |
Pin de la font |
Es tracta d’un pin de terra de la pantalla LCD |
Connectat a terra de la font d'alimentació / MCU |
|
2 |
Pin 2 |
VCC |
Pin de la font |
Aquest és el pin de tensió d'alimentació de la pantalla LCD |
Connectat al pin d'alimentació de la font d'alimentació |
|
3 |
Pin 3 |
V0 / VEE |
Pin de control |
Ajusta el contrast de la pantalla LCD. |
Connectat a un POT variable que pot obtenir 0-5V |
|
4 |
Pin 4 |
Selecciona el registre |
Pin de control |
Alterna entre el registre d’ordres / dades |
Connectat a un pin MCU i obté 0 o 1. 0 -> Mode d'ordres 1-> Mode de dades |
|
5 |
Pin 5 |
Llegir escriure |
Pin de control |
Canvia la pantalla LCD entre l’operació de lectura / escriptura |
Connectat a un pin MCU i obté 0 o 1. 0 -> Operació d'escriptura 1-> Llegir operació |
|
6 |
Pin 6 |
Activa |
Pin de control |
Cal mantenir-lo alt per realitzar una operació de lectura / escriptura |
Connectat a MCU i sempre en posició alta. |
|
7 |
Pin 7-14 |
Bits de dades (0-7) |
Pin de dades / ordre |
Pins utilitzats per enviar comandes o dades a la pantalla LCD. |
En mode de 4 fils Només hi ha 4 pins (0-3) connectats a MCU En mode de 8 fils Els 8 pins (0-7) estan connectats a MCU |
|
8 |
Pin 15 |
LED positiu |
Pin LED |
LED normal com a operació per il·luminar la pantalla LCD |
Connectat a + 5V |
|
9 |
Pin 16 |
LED negatiu |
Pin LED |
Funcionament normal del LED per il·luminar la pantalla LCD connectada amb GND. |
Connectat a terra |
Està bé si no enteneu la funció de tots els pins, us ho explicaré detalladament a continuació. Ara, tornem la pantalla LCD:

Aquests cercles negres consisteixen en una IC d'interfície i els components associats que ens ajuden a utilitzar aquest LCD amb l'MCU. Com que el nostre LCD és un LCD de matriu de 16 * 2 punts i, per tant, tindrà (16 * 2 = 32) 32 caràcters en total i cada caràcter estarà format per 5 * 8 píxels. A la imatge següent es mostra un caràcter únic amb tots els píxels activats.

Ara sabem que cada personatge té (5 * 8 = 40) 40 píxels i per a 32 caràcters tindrem (32 * 40) 1280 píxels. A més, també s'hauria d'informar la pantalla LCD sobre la posició dels píxels.
Serà una tasca trepidant gestionar-ho tot amb l'ajut de l'MCU, de manera que s'utilitza un IC d'interfície com HD44780, que es munta al mòdul LCD mateix. La funció d’aquest CI és obtenir els comandaments i les dades de l’MCU i processar-los per mostrar informació significativa a la nostra pantalla LCD.
Analitzem els diferents tipus de mode i opcions disponibles a la nostra pantalla LCD que han de ser controlats pels nostres pins de control.
Mode de LCD de 4 i 8 bits:
La pantalla LCD pot funcionar en dos modes diferents, és a dir, el mode de 4 bits i el mode de 8 bits. En el mode de 4 bits enviem les dades nibble per nibble, primer pinyol superior i després picat inferior. Per a aquells que no sabeu què és un rosegador: un rosegador és un grup de quatre bits, de manera que els quatre bits inferiors (D0-D3) d’un byte formen el rosegador inferior mentre que els quatre bits superiors (D4-D7) d'un byte formen el picat superior. Això ens permet enviar dades de 8 bits.
Mentre que en el mode de 8 bits podem enviar les dades de 8 bits directament en un sol cop, ja que fem servir totes les línies de dades de 8.
Ara ho heu d’haver endevinat, sí, el mode de 8 bits és més ràpid i impecable que el mode de 4 bits. Però el principal inconvenient és que necessita 8 línies de dades connectades al microcontrolador. Això ens farà quedar sense pins d'E / S a la nostra MCU, de manera que s'utilitza molt el mode de 4 bits. No s’utilitzen pins de control per configurar aquests modes. És només la manera de programar que canvia.
Mode de lectura i escriptura de la pantalla LCD:
Com s'ha dit, la pròpia pantalla LCD consisteix en un CI d'interfície. La MCU pot llegir o escriure en aquesta interfície IC. La majoria de les vegades només escrivim a l’IC, ja que la lectura ho farà més complex i aquests escenaris són molt rars. Es pot llegir informació com la posició del cursor, les interrupcions de finalització de l'estat, etc., si cal, però està fora de l'abast d'aquest tutorial.
La interfície IC present a la majoria de les pantalles LCD és HD44780U, per tal de programar la nostra pantalla LCD hauríem d’aprendre el full de dades complet de l’IC. El full de dades es proporciona aquí.
Ordres LCD:
Hi ha algunes instruccions d’ordres predefinides a LCD, que hem d’enviar a LCD mitjançant algun microcontrolador. A continuació es donen algunes instruccions d’ordres importants:
|
Codi hexadecimal |
Ordre al registre d'instruccions LCD |
|
0F |
LCD activat, cursor activat |
|
01 |
Esborra la pantalla |
|
02 |
Tornar a casa |
|
04 |
Redueix el cursor (desplaça el cursor cap a l'esquerra) |
|
06 |
Incrementa el cursor (desplaça el cursor cap a la dreta) |
|
05 |
Canviar la pantalla cap a la dreta |
|
07 |
Majúscules a l'esquerra |
|
0E |
Pantalla ACTIVADA, el cursor parpelleja |
|
80 |
Força el cursor al començament de la primera línia |
|
C0 |
Força el cursor al començament de la segona línia |
|
38 |
2 línies i matriu 5 × 7 |
|
83 |
Posició 3 de la línia 1 del cursor |
|
3C |
Activeu la segona línia |
|
08 |
Visualització OFF, cursor OFF |
|
C1 |
Saltar a la segona línia, posició 1 |
|
OC |
Pantalla ON, cursor OFF |
|
C1 |
Saltar a la segona línia, posició 1 |
|
C2 |
Saltar a la segona línia, posició 2 |
Consulteu els nostres articles d'interfície LCD amb diferents microcontroladors:
- Interfície LCD amb microcontrolador 8051
- Interfície LCD amb microcontrolador ATmega32
- Interfície LCD amb microcontrolador PIC
- Interfície LCD 16x2 amb Arduino
- Interfície LCD de 16x2 amb Raspberry Pi mitjançant Python
