Da bi se uspostavila dobra komunikacija između ljudskog svijeta i strojnog svijeta, jedinice zaslona igraju važnu ulogu. Stoga su važan dio ugrađenih sustava. Izložbene jedinice - velike ili male, rade na istom osnovnom principu. Uz složene jedinice zaslona poput grafičkih zaslona i 3D prikaza, treba znati raditi i s jednostavnim zaslonima poput jedinica 16x1 i 16x2. Prikazna jedinica 16x1 imat će 16 znakova i nalazi se u jednom retku. LCD 16x2 imat će ukupno 32 znaka 16 u 1. retku i još 16 u 2. retku. Ovdje moramo shvatiti da u svakom znaku ima 5x10 = 50 piksela, tako da za prikaz jednog znaka svih 50 piksela moraju raditi zajedno. Ali ne trebamo se zbog toga brinuti jer se na jedinici zaslona nalazi još jedan kontroler (HD44780) koji obavlja posao upravljanja pikselima. (možete ga vidjeti na LCD jedinici,to je crno oko straga).
U ovom uputstvu spojit ćemo LCD 16x2 s ARDUINO UNO. Za razliku od normalnih razvojnih ploča, povezivanje LCD-a s ARDUINO-om prilično je jednostavno. Ovdje se ne moramo brinuti o slanju i primanju podataka. Samo moramo definirati brojeve pinova i bit će spremni za prikaz podataka na LCD-u.
Komponente potrebne
Hardver: ARDUINO UNO, napajanje (5v), JHD_162ALCD (16x2LCD), kondenzator 100uF.
Softver: Arduino IDE (Arduino svake noći).
Kružni dijagram i objašnjenje
Na LCD zaslonu 16x2 postoji 16 pinova ako postoji pozadinsko svjetlo, a ako nema pozadinskog svjetla, bit će 14 pinova. Može se napajati ili ostaviti igle stražnjeg svjetla. Sada u 14 pinova postoji 8 podatkovnih pinova (7-14 ili D0-D7), 2 pina za napajanje (1 i 2 ili VSS & VDD ili GND & + 5v), treći pinski za kontrolu kontrasta (VEE - kontrolira koliko debeli znakovi trebaju biti prikazano) i 3 upravljačka zatiča (RS & RW & E).
U krugu možete primijetiti da sam uzeo samo dvije upravljačke igle, to daje fleksibilnost. Kontrastni bit i READ / WRITE se ne koriste često, tako da se mogu kratko spojiti na masu. Ovo LCD postavlja u najveći kontrast i način čitanja. Samo trebamo kontrolirati ENABLE i RS igle da bi u skladu s tim slali znakove i podatke.
Priključci koji se rade za LCD prikazani su u nastavku:
PIN1 ili VSS na masu
PIN2 ili VDD ili VCC do + 5v snage
PIN3 ili VEE na zemlju (daje maksimalni kontrast najbolji za početnike)
PIN4 ili RS (registracijski odabir) na PIN0 ARDUINO UNO
PIN5 ili RW (čitanje / pisanje) na masu (stavlja LCD u način čitanja olakšava komunikaciju za korisnika)
PIN6 ili E (Omogući) do PIN1 ARDUINO UNO
PIN11 ili D4 do PIN8 ARDUINO UNO
PIN12 ili D5 do PIN9 ARDUINO UNO
PIN13 ili D6 do PIN10 ARDUINO UNO
PIN14 ili D7 do PIN11 ARDUINO UNO
ARDUINO IDE omogućuje korisniku upotrebu LCD-a u 4-bitnom načinu. Ova vrsta komunikacije omogućuje korisniku da smanji upotrebu pin-a na ARDUINO-u, za razliku od ostalih ARDUINO-a ne treba programirati zasebno za upotrebu u 4 it načinu, jer je ARDUINO prema zadanim postavkama postavljen za komunikaciju u 4-bitnom načinu. U krugu možete vidjeti da smo koristili 4-bitnu komunikaciju (D4-D7).
Dakle, iz pukog promatranja iz gornje tablice povezujemo 6 pinova LCD-a s kontrolerom u kojem su 4 pina podatkovne i 2 pina za kontrolu.

Gornja slika prikazuje shemu spojeva LCD-a 16x2 spojenog na ARDUINO UNO.
Radno
Da bismo povezali LCD s ARDUINO UNO, moramo znati nekoliko stvari.
|
Kao i prema gornjoj tablici, samo trebamo pogledati ove četiri linije za uspostavljanje komunikacije između ARDUINO i LCD-a.
Prvo moramo omogućiti datoteku zaglavlja ('#include
Drugo, moramo reći ploči koju vrstu LCD-a ovdje koristimo. Budući da imamo toliko različitih vrsta LCD-a (poput 20x4, 16x2, 16x1 itd.). Ovdje ćemo povezati LCD 16x2 s UNO-om, pa ćemo dobiti 'lcd.begin (16, 2);'. Za 16x1 dobivamo 'lcd.begin (16, 1);'.
U ovoj ćemo uputi reći ploči gdje smo spojili iglice. Priključene pinove treba predstaviti po redu kao "RS, En, D4, D5, D6, D7". Ove pribadače treba ispravno predstaviti. Budući da smo RS spojili na PIN0 i tako dalje, kao što je prikazano na shemi spojeva, predstavljamo pin broj na pločicu kao “LiquidCrystal lcd (0, 1, 8, 9, 10, 11);”. Podaci koje treba prikazati na LCD-u trebaju biti napisani kao „cd.print („ bok, svijete! “);“. Pomoću ove naredbe LCD prikazuje 'zdravo, svijet!'.
Kao što vidite, ne trebamo brinuti ni o čemu drugom, samo se moramo inicijalizirati i UNO će biti spreman za prikaz podataka. Ne moramo ovdje pisati programsku petlju da bismo ovdje slali podatke po BYTE.
Način komunikacije između LCD-a i UNO-a objašnjen je korak po korak u C kodu datom u nastavku:
