Caracter LCD controler HD44780
Fig.1 LCD bazat pe controlerul HD44780
În ceea ce privește ordinare 7-segment, LCD module controler HD44780 au un ordin de mărime mai multe oportunități. Numărul de linii de pe ecran în diferite modele - 1,2 sau 4; numărul de caractere pe linie: 8,10,16,20,24,30,32 sau 40. Fiecare familiarizare pe display-ul este o dimensiune matrice de pixeli 5x8. Indicatorul poate fi un LED sau iluminare fluorescentă aproape orice strălucire de culoare. Figura 1 prezintă o vedere exterioară a modulului A162-D simbolurile firmei Ampire cu o rezoluție de 16 x 2 linii. Controler HD44780 5V tensiune de alimentare (mai puțin 3B). Controler de consum curent este foarte mic (100 ... 200 mA), care nu se poate spune despre iluminatul cu LED-uri. În funcție de producător, valoarea sa este de 80 ... 120 mA. Pentru a opera anumite tipuri de LCD poate avea nevoie de o sursă suplimentară de polaritate negativa. producția de acest tip de tehnologie modul este în mod continuu îmbunătățite, care, în ansamblul său, are un efect pozitiv asupra dimensiunii lor și caracteristicile electrice.
Figura 2. Tabelul caracterelor CGRAM
Figura 3. Utilitate HD44780
Numerotare și LCD Funcționalitate constatările sunt prezentate în Tabelul 1. Mai mult decât atât controler de tensiune de alimentare VCC, modulul are o ajustare de contrast al imaginii V0 de intrare. iluminare din spate Putere (dacă este disponibilă) este furnizat la terminalele A și K.
secvență de date Fig.4 în HD44780
și - 8-biți comandă autobuz / date
B - 4-biți de comandă autobuze / date
HD44780 a reacționat cu AVR prin intermediul unui bidirecțional DB7 bus comanda / date de 8 biți: DB0. Timing Diagrama de autobuz prezentat în Fig.4a. La momentul înregistrării informațiilor în microcontroler LCD de master pune pe liniile DB7 ... DB0 cod de 8-biți, apoi generează la ieșire Strobe impuls E (Active Front - spate). Până la sfârșitul pulsului trebuie să fie susținută de pauză înainte de a începe o nouă tranzacție. Un semn de scriere comanda / date este starea liniei RS. Când RS = 0 există o comandă de scriere, atunci când RS = 1 - date. Atunci când este necesar pentru a citi datele de la indicatorul, concluziile DB7 portul: DB0 microcontroler configurat pentru a intra. Urmată de puls de confirmare la linia E, și octet de date este rescrisă într-un registru intern pentru prelucrare ulterioară. Direcția de date determină nivelul pe linia R / W (R / W = 1 - citirea indicatorului, R / W = 0 - Intrare Indicator). În aplicațiile reale, de obicei nu este nevoie să citească date. Astfel, puterea R / W este întotdeauna conectat la masă. Cablare la AVR A162-D prezentat în ris.5a.
Figura 5. Cablarea de caractere LCD la microcontroler
și - folosind autobuz de comandă / date de 8 biți
b - în cazul în care un autobuz de comandă / date 4-biți
Pentru a controla LCD poate fi utilizat, de asemenea, într-o interfață cu 4 fire (vezi. Schema de conectare Ris.5b) care salvează 4 linii IO, cu o complicație nesemnificativă a programului.
Tabelul 1. Concluzii funcționale caracter LCD D44780 pe bază de:
În acest caz, linii de comandă / date autobuz 4-biți format DB7 ... DB4 (linia DB3 ... DB0 rămân neutilizate). Viteza de inregistrare este redus de 2 ori, dar de obicei nu cauzează probleme în timpul funcționării. secvența de transmisie de date prezentată în fig.4b. Comanda / datele sunt transferate în două cicluri. Primul ar trebui să fie de ronțăit de mare, al doilea - cel mai tânăr. Fiecare tetradă trebuie să fie în mod natural fixat puls pe linia E.
Figura 7. caractere personalizate în tabelul CGRAM
După cum sa menționat mai sus, comanda de citire nu are nici o valoare practică. Acesta poate fi de interes numai BF de pavilion. Cu toate acestea, mult mai convenabil pentru a configura programatic timpul de întârziere pentru a asigura finalizarea operațiunilor de citire / scriere decât sondaj în mod constant starea pavilion de funcționare. Necesitatea de a utiliza linia R / W în timp ce, de asemenea, eliminate.
Un set de rutine pentru a lucra cu un LCD de caracter prezentat mai sus. Rutine write_com, write_dat comanda de înregistrare a datelor și, respectiv. subrutină Show_char afișează un simbol pe ecran; show_string rescrie șirul stocate în programele de memorie flash, indicator de DDRAM. Ambele subrutine iau ca parametrii coordonatele înregistrării inițiale - rând și o coloană. În show_string, cu excepția faptului că trebuie să treacă, de asemenea, un pointer la un șir de caractere în ZH registru: ZL.
Separat, trebuie spus despre inițializarea hd44780_init de rutină, care trebuie să fie numit după alimentarea cu energie a unității. Numai ar putea exista unele probleme. Secvența de comenzi în această procedură pot fi mici diferențe în diferitele tipuri de indicatori. Prin urmare, este necesar să contactați documentația tehnică pentru un anumit model. inițializare incorectă, de obicei duce la un eșec copie de funcționare completă.