95
Elektronika Praktyczna 11/99
N O W E P O D Z E S P O Ł Y
Standardowe, alfanumeryczne wy-
úwietlacze LCD zintegrowane s¹ za-
zwyczaj ze specjalnym sterownikiem,
ktÛry poúredniczy w†wymianie danych po-
miÍdzy mikrokontrolerem i†matryc¹ ciek³ok-
rystaliczn¹. NajwiÍksz¹ i†uzasadnion¹ popu-
larnoúÊ zdoby³ sterownik firmy Hitachi
HD44870 (karta katalogowa jest dostÍpna
w†Internecie, pod adresem www.ep.com.pl/
ftp/hd44780.pdf), wyposaøony w†prosty
w†obs³udze interfejs rÛwnoleg³y. Interfejs ten
umoøliwia wymianÍ danych z†otoczeniem
w†dwÛch trybach: 8†i†4-bitowym, przy czym
w†obydwu przypadkach niezbÍdne s¹ trzy
dodatkowe sygna³y steruj¹ce.
Bez wykonywania specjalnych obliczeÒ
moøna stwierdziÊ, øe do³¹czenie wyúwietla-
cza LCD do mikrokontrolera ìpozbawiaî go
7†lub nawet 11 wyprowadzeÒ! Bior¹c pod
uwagÍ, øe zazwyczaj cena mikrokontrolera
jest powi¹zana (miÍdzy innymi) z†iloúci¹ wy-
prowadzeÒ, moøe okazaÊ siÍ, øe wyposaøe-
nie projektowanego urz¹dzenia w†wyúwiet-
lacz jest doúÊ kosztowne.
Alternatyw¹ dla standardowych rozwi¹zaÒ
s¹ wyúwietlacze programowane szyn¹ szere-
gow¹ I2C lub SPI. Wad¹ dostÍpnych rozwi¹-
zaÒ tego typu jest znacz¹co wyøsza cena
wyúwietlaczy ze sterownikami szeregowymi,
ich trudna dostÍpnoúÊ i†koniecznoúÊ stoso-
wania programowych ì³atî.
I s t n i e j e
jednak rozwi¹zanie
alternatywne i†- co bardzo
waøne - oszczÍdne! Wystarczy
tylko jedno wyprowadzenie mikro-
kontrolera lub dowolnego innego uk³adu
cyfrowego, aby bez trudu, w†praktycznie do-
wolny sposÛb sterowaÊ prac¹ sterownika
HD44870. Jak to zrobiÊ? Trzeba zastosowaÊ
jeden z†uk³adÛw produkowanych przez fir-
mÍ E-Lab Engeneering.
Rozwi¹zanie pierwsze: EDE700
EDE700 jest specjalizowanym konwerte-
rem szeregowo-rÛwnoleg³ym, wyposaøonym
w†asynchroniczne wejúcie danych, kompaty-
bilne ze standardem RS232 i†8-bitowe wy-
júcie danych, z†dodatkowymi trzema sygna-
³ami steruj¹cymi sterownik wyúwietlacza
LCD.
Na rys. 1 znajduje siÍ schemat ideowy
systemu wykorzystuj¹cego szeregowo pro-
gramowany wyúwietlacz LCD. Uk³ad kon-
wersji szeregowo-rÛwnoleg³ej odpowiada tak-
øe za poprawne stany wyjúÊ steruj¹cych wy-
úwietlacz oraz zachowanie wymaganych
przez uk³ad HD44870 odstÍpÛw czasu pod-
czas zapisu i†odczytu danych.
Schemat elektryczny typowego sterowni-
ka-konwertera z†uk³adem EDE700 znajduje
siÍ na rys. 2. Konwerter EDE700 jest przy-
stosowany do odbioru transmisji danych
z†szybkoúci¹ 2400 lub 9600 bitÛw/s w†for-
macie 8n1 (8-bitowa ramka danych, brak
parzystoúci, 1†bit stopu). ZarÛwno polaryza-
cjÍ odbieranego sygna³u, jak i†szybkoúÊ trans-
misji moøna samodzielnie ustaliÊ przy po-
mocy stanÛw logicznych przy³oøonych do
dwÛch wyprowadzeÒ uk³adu. Jest on ponad-
to wyposaøony w†wejúcie (TEST) inicjuj¹ce
Szeregowe interfejsy do alfanumerycz−
nych wyświetlaczy LCD
Alfanumeryczne wyúwietlacze
LCD oraz VFD zdobywaj¹ coraz
wiÍksz¹ popularnoúÊ wúrÛd
konstruktorÛw w†naszym kraju.
Stosowanie ich w†typowych
aplikacjach, gdzie spe³niaj¹ rolÍ
fragmentu lokalnego panelu
operatora nie sprawia zazwyczaj
projektantom øadnych trudnoúci.
Nieco bardziej skomplikowane
jest zdalne sterowanie
wyúwietlacza, poniewaø zazwyczaj
wi¹øe siÍ z†zastosowaniem
dodatkowego interfejsu.
Okazuje siÍ, øe ktoú juø
przewidzia³ i†dawno rozwi¹za³
takie problemy...
Tab. 1. Zestawienie podstawowych
możliwości i parametrów układów
EDE700 i EDE702.
✓ Napięcie zasilania: 3..5,5V
✓ Pobór prądu: 15mA
✓ Wydajność prądowa wyjść: 5mA (sink/source)
✓ Szybkość transmisji danych: 2400/9600 bd
✓ Częstotliwość taktowania:
EDE700
20MHz
EDE702
4MHz
✓ Obsługiwane wyświetlacze: 1x8..2x40
✓ Współpracują z kontrolerem LCD: HD44870
✓ Użytkownik ma dostęp do wszystkich
standardowych poleceń sterownika HD44870
✓ Można wybrać polaryzację odbieranych bitów
danych
✓ Linię RS232 lub TTL można dołączyć bezpośrednio
do wejścia układu
✓ Wbudowane polecenia sterujące, obsługiwane przez
sterownik
✓ Układ EDE700 umożliwia odczyt kodu znaku na
wybranej pozycji i przesłanie go przez szeregowy
port asynchroniczny
✓ Układ EDE702 jest wyposażony w 1−bitowe,
programowane wyjście cyfrowe
Tab. 2. Kody sterujące zajęte dla własnych potrzeb przez EDE700.
Kod (hex) Polecenie ASCII
Zadanie realizowane przez EDE700
Zadanie realizowane przez EDE702
08
Backspace
Przesunięcie kursora na poprzednią
Przesunięcie kursora na poprzednią
pozycję i zastąpienie znaku spacją
pozycję i zastąpienie znaku spacją
0A
Line Feed
Przesunięcie wiersza 2 do wiersza 1
Ignoruje
i przeniesienie kursora na początek
wiersza 2
0C
Form Feed
Wyczyszczenie wyświetlacza, kursor
Wyczyszczenie wyświetlacza, kursor
na pozycji początkowej
na pozycji początkowej
0D
Carriage Return
Podobne, jak dla kodu 0A
Ignoruje
FE
Słowo sterujące
Następny bajt zawiera słowo
Następny bajt zawiera słowo
konfigurujące EDE700 (tab. 3)
konfigurujące EDE702 (tab. 3)
Rys. 1.
N O W E P O D Z E S P O Ł Y
Elektronika Praktyczna 11/99
96
N O W E P O D Z E S P O Ł Y
prosty test, pozwalaj¹cy stwierdziÊ popra-
wnoúÊ pod³¹czenia modu³u LCD do uk³adu.
Jeøeli wejúcie to bÍdzie do³¹czone do masy
zasilania podczas w³¹czania zasilania, na
wyúwietlaczu pojawi siÍ tekst ìEDE700 Ver-
sion 1.00,N-8-1 (C) E-Lab, Incî, a†na wyjúciu
szeregowym (XMIT) generowany bÍdzie ci¹g
znakÛw ìAî.
Jak widaÊ na rys. 2†poprawna wspÛ³praca
uk³adu EDE700 ze standardowym portem
RS232 wymaga zastosowania tylko jednego
rezystora, ktÛry jest w³¹czony szeregowo
z†wejúciem RCV. W†przypadku sterowania
uk³adu sygna³em zgodnym ze standardem
TTL lub CMOS-5V rezystora 33k
Ω
nie naleøy
montowaÊ, a†zamiast niego naleøy zastoso-
waÊ rezystor podci¹gaj¹cy o†wartoúci 4,7k
Ω
do³¹czony pomiÍdzy wejúcie RCV i†plus za-
silania.
Bardzo interesuj¹ca s¹ programowe moø-
liwoúci uk³adu EDE700.
Po pierwsze, jest on praktycznie ìprzeüro-
czystyî dla przesy³anych danych, w†zwi¹zku
z†czym dopuszczalne s¹ przy jego pomocy
wszystkie ìchwytyî dostÍpne dla HD44870.
Moøna wiÍc programowo ustalaÊ sposÛb wy-
úwietlania danych, moøliwe jest takøe samo-
dzielne definiowanie kszta³tu wyúwietlanych
znakÛw.
Po drugie, 5†kodÛw steruj¹cych (wed³ug
standardu ASCII) wykorzystano jako pole-
cenia dla uk³adu EDE700. W†wyniku tego
zabiegu nie s¹ dostÍpne znaki o†kodach:
08h, 0Ah, 0Ch, 0Dh (obszar znakÛw defi-
niowanych przez uøytkownika w†CGRAM)
oraz znak o†kodzie FEh (alternatywna spa-
cja). Ostatni z†wymienionych kodÛw s³uøy
do zapisywania do EDE700 s³Ûw steruj¹-
Tab. 3. Kody sterujące pracą EDE700 i EDE702 (wysyłane po poleceniu FEh − tab. 2)
Bity słowa (D7..0)
Opis
0
0
0
0
0
0
0
1
Czyszczenie wyświetlacza i powrót kursora na początek
0
0
0
0
0
0
1
X
Powrót kursora na początek pola wyświetlania
0
0
0
0
0
1 I/D S
Polecenie sterujące dla HD44870 (zgodne z jego specyfikacją)
0
0
0
0
1
D
C
B
Polecenie sterujące dla HD44870 (zgodne z jego specyfikacją)
0
0
0
1 S/C R/L X
X
Polecenie sterujące dla HD44870 (zgodne z jego specyfikacją)
0
0
1 DL N
F
X
X
Polecenie sterujące dla HD44870 (zgodne z jego specyfikacją)
0
1
X
X
X
X
X
X
Polecenie sterujące dla HD44870 (zgodne z jego specyfikacją)
1
X
X
X
X
X
X
X
Polecenie sterujące dla HD44870 (zgodne z jego specyfikacją)
1
1
1
1
1
1
1
0
Specjalne polecenie EDE70X − umożliwia odczyt kodu znaku znajdującego
się na wybranej pozycji (1)
1
1
1
1
1
1
0
0
Ustawia "0" na wyjściu OUT (2)
1
1
1
1
1
1
0
1
Ustawia "1" na wyjściu OUT (2)
(1) Tylko dla EDE700
(2) Tylko dla EDE702
cych, identycznych ze s³owami steruj¹cymi
dla uk³adu HD44870. DziÍki temu uøytkow-
nik moøe korzystaÊ z†szeregowo programo-
wanego wyúwietlacza w†sposÛb identyczny,
jak podczas bezpoúredniego programowania
kontrolera.
W†tab. 1 znajduje siÍ zestawienie funkcji
steruj¹cych zaimplementowanych w†EDE700,
a†w†tab. 2 skrÛcony opis poleceÒ wysy³a-
nych po kodzie steruj¹cym FEh. Poniewaø
polecenia te maj¹ identyczny format, jak
w†przypadku sterownika HD44870 ich opis
pomin¹³em. SzczegÛ³y moøna znaleüÊ w†do-
k u m e n t a c j i : h t t p : / / w w w . e l a b i n c . c o m /
e d e 7 0 0 . p d f, h t t p : / / w w w . e p . c o m . p l / f t p /
hd44780.pdf.
Alternatyw¹ dla uk³adu EDE700 jest znacz-
nie taÒszy - EDE702. Tak wiÍc prezentujemy
rozwi¹zanie drugie: EDE702
Uk³ad ten powsta³ ponad pÛ³tora roku po
EDE700, w†zwi¹zku z†czym jego moøliwoúci
zoptymalizowano pod k¹tem najbardziej ty-
powych wymagaÒ uøytkownikÛw. Wydatnie
zmniejszono takøe czÍstotliwoúÊ taktowania
uk³adu, co znalaz³o korzystne dla uøytkow-
nika odbicie w†cenie.
Podstawowe moøliwoúci uk³adu EDE702
s¹ identyczne, jak pierwowzoru. Bardzo po-
dobny jest takøe jego schemat aplikacyjny
(rys. 3).
Najwaøniejsze rÛønice to:
- wyeliminowanie procedury testowania po-
prawnoúci po³¹czeÒ uk³adu z†wyúwietla-
czem LCD,
- zast¹pienie rzadko wykorzystywanego wyj-
úcia szeregowego XMIT, standardowym
wyjúciem logicznym, ktÛrego stan logicz-
ny moøna okreúlaÊ programowo. Moøna je
wykorzystaÊ np. do w³¹czania podúwiet-
lenia wyúwietlacza, sterowania sygnaliza-
torem akustycznym, itp.,
- modyfikacja sposobu obs³ugi przez uk³ad
kodÛw 0Ah i†0Dh (tab. 1),
- minimalna modyfikacja listy rozkazÛw
(tab. 2).
Pozosta³e funkcje i†moøliwoúci uk³adu
EDE702 s¹ identyczne, jak EDE700. W†tab.
3 znajduje siÍ zestawienie podstawowych
parametrÛw elektrycznych obydwu uk³a-
dÛw.
Ciekawostka na koniec
Podczas prÛb z†uk³adami EDE700 i†EDE702
ich aplikacja doúÊ szybko wyda³a mi siÍ
bardzo podobna do typowych aplikacji mik-
rokontrolerÛw PIC16Cxx. Okaza³o siÍ, øe trop
by³ s³uszny: otÛø obydwa prezentowane w†ar-
tykule uk³ady, to zaprogramowane mikro-
kontrolery PIC (EDE702 - PIC16C54B,
a†EDE700 - PIC16C621)!
Kolejny przyk³ad ogromnej uniwersalnoú-
ci i†³atwoúci ich specjalizowania.
Piotr Zbysiñski, AVT
piotr.zbysinski@ep.com.pl
Przedstawicielem firmy E-Lab Engeneering
w†Polsce jest Micros tel. (0-12) 636-94-55.
Materia³y katalogowe dotycz¹ce uk³adÛw
EDE700/702 oraz HD44870 s¹ dostÍpne
w†Internecie pod adresami:
- E D E 7 0 0 : h t t p : / / w w w . e l a b i n c . c o m /
ede700.pdf oraz www.ep.com.pl/ftp/
ede700.pdf,
- E D E 7 0 2 : h t t p : / / w w w . e l a b i n c . c o m /
ede702.pdf oraz www.ep.com.pl/ftp/
ede702.pdf,
- H D 4 4 8 7 0 : h t t p : / / w w w . e p . c o m . p l / f t p /
hd44780.pdf.
Rys. 3.
Rys. 2.