LCD.pdf
(
546 KB
)
Pobierz
Politechnika Poznańska
Wydział Elektryczny
Instytut Automatyki i Inżynierii Informatycznej
Systemy mikroprocesorowe
Zajęcia 4
Wyświetlacz LCD ze sterownikiem HD44780
Przygotował:
Krzysztof Siembab
Poznań 2010
1. Wprowadzenie
Wyświetlacz LCD jest tanim i prostym w sterowaniu urządzeniem, umożliwiającym
wyprowadzenie informacji alfanumerycznej (dostępne są także wyświetlacze LCD graficzne).
Ze względu na znaczą ilość danych oraz złożone sterowanie, wyświetlacze LCD są
standardowo wyposażone w specjalizowane procesory, które zarządzają wyświetlaniem.
Takie procesory nazywane są sterownikami wyświetlacza. Typowym ich przedstawicielem
jest układ firmy Hitachi HD44780. Do takiego sterownika mikrokontroler wysyła tylko dane
(które maja być wyświetlone) i instrukcje (w jaki sposób mają być wyświetlane). Natomiast
sposób zamiany danych na punkty, które mają świecić, czy przebiegi sterujące
wyświetlaniem, to już zadanie sterownika. Podłączenie wyświetlacza LCD do
mikrokontrolera ADuC831 przedstawiono poniżej:
Wyświetlacz LCD zawiera dwa rodzaje wewnętrznej pamięci, które mogą być
kontrolowane przez użytkownika: pamięć DD (display data) i pamięć CG (character
generator).
Pamięć CG składa się z dwóch części: pamięci CG ROM zawierającej przygotowane
przez producenta kody znaków do ekspozycji oraz pamięci CG RAM przeznaczonej na kody
znaków definiowanych przez użytkownika. Znaki wyświetlane są w postaci matrycy punktów
o rozmiarach 5x8. Przykładowa definicja polskiego znaku „Ę” ma postać:
Pamięć DD RAM ma zawsze, niezależnie od sterownika taką samą liczbę znaków
równą 2 x 40 (80 bajtów). Jeśli wyświetlacz jest krótszy i nie zawiera wszystkich znaków, to
pewnym pozycją w pamięci DD nie odpowiadają pozycje na wyświetlaczu (tzn. można
przesłać znak do wyświetlacza i go nie zobaczyć).
Wyświetlacz LCD, jak każdy zaawansowany układ wejścia i wyjścia, posiada
następujące rejestry:
DataWR – rejestr danych przeznaczonych do zapisu informacji;
DataRD – rejestr danych przeznaczony do odczytu informacji;
ControlRD – rejestr stanu wyświetlacza przeznaczony do odczytu informacji;
ControlWR – rejestr sterujący wyświetlacza przeznaczony do zapisu informacji.
Wyświetlacz LCD może być sterowany na dwa sposoby:
wyświetlacz sterowany przez 8 linii danych;
wyświetlacz sterowany przez 4 linie danych.
Sterowanie alfanumerycznym wyświetlaczem LCD odbywa się na zasadzie
przesyłania do wyświetlacza prostych komend oraz zapisu i odczytu danych. Sterownik
wyświetlacza rozróżnia komendy i dane na podstawie stanu linii RS (RS = 0 – wysłanie
komendy, RS = 1 – przesłanie danych), zaś kierunek transmisji danych (odczyt/zapis) zależy
od stanu linii R/W. Przy interpretacji i wyborze komend istotne jest jeszcze rozróżnienie
między dwoma rodzajami pamięci, jakie występują w wyświetlaczu. Ostatnia linia
wyświetlacza E (Enable) uaktywnia wyświetlacz LCD, zezwalając na jego pracę.
Rozkazy sterujące alfanumerycznym wyświetlaczem LCD przedstawiono poniżej:
Tablica znaków wyświetlacza LCD:
W układzie programowany w laboratorium magistrale 8-bitową stanowią linie portu
P0. Natomiast linie RS i R/W wyświetlacza są podłączone do wyprowadzeń SCLOCK i
SDATA/MOSI. Są to linie magistrali I2C, w związku z czym wystawianie sygnału na tych
liniach wymaga ustawienia dwóch bitów w rejestrze I2CCON. W stan wysoki należy ustawić
bity I2CM oraz MDE przed inicjalizacją wyświetlacza. Umożliwia to zmianę stanu linii RS i
R/W poprzez zmianę bitów MCO i MDO w rejestrze I2CCON. W związku z tym warto
zadeklarować stałe:
#define LCD_RS MCO
#define LCD_RW MDO
#define LCD_DANE P0
Linia wyświetlacza E została podłączona do P2.0. W celu łatwości użycia warto
zadeklarować:
sbit LCD_E = P2^0;
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Proszę również o zapoznanie się z dokumentacją sterownika HD44780.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Plik z chomika:
bosmin
Inne pliki z tego folderu:
LAB_00_ADuC831_DOKUMENTACJA.pdf
(1211 KB)
LAB_00_ADuC831_SCHEMAT.pdf
(33 KB)
LAB_01_WPROWADZENIE.pdf
(855 KB)
LAB_02_OBSŁUGA_WE_WY.pdf
(631 KB)
LAB_03_UKŁADY_LICZNIKOWE.pdf
(469 KB)
Inne foldery tego chomika:
Programy
Zgłoś jeśli
naruszono regulamin