Obsługa kolorowego wyświetlacza graficznego 96x64, część 1

Podobne dokumenty
Obsługa kolorowego wyświetlacza graficznego 96x64, część 2

Programowanie Mikrokontrolerów

Wyświetlacz alfanumeryczny LCD zbudowany na sterowniku HD44780

Programowanie mikrokontrolerów - laboratorium

Komunikacja w mikrokontrolerach Laboratorium

Wyświetlacze graficzne : 162x64 z kontrolerem S1D x60 z kontrolerem S1D15710

Programowanie mikrokontrolerów - laboratorium

Technika Mikroprocesorowa

WIZUALIZACJA DANYCH SENSORYCZNYCH MINISTACJA METEOROLOGICZNA

Programowanie mikrokontrolerów. 8 listopada 2007

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Synteza częstotliwości na układzie PLL LM7001

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

2. Architektura mikrokontrolerów PIC16F8x... 13

ZL8AVR. Płyta bazowa dla modułów dipavr

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

Nadajnik Nokton NR4 MAXIM przeróbka do zastosowań APRS MHz

Wstęp Architektura... 13

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

Przemysłowy odtwarzacz plików MP3

WPROWADZENIE Mikrosterownik mikrokontrolery

Interfejsy komunikacyjne pomiary sygnałów losowych i pseudolosowych. Instrukcja do ćwiczenia laboratoryjnego

Dokumentacja Techniczna. Konwerter USB/RS-232 na RS-285/422 COTER-24I COTER-24N

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

MiniModbus 4DO. Moduł rozszerzający 4 wyjścia cyfrowe. Wyprodukowano dla. Instrukcja użytkownika

MOBOT-RCR v2 miniaturowe moduły radiowe Bezprzewodowa transmisja UART

Uniwersalny sterownik silnika krokowego z portem szeregowym RS232 z procesorem AT90S2313 na płycie E200. Zestaw do samodzielnego montażu.

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8

Projekt MARM. Dokumentacja projektu. Łukasz Wolniak. Stacja pogodowa

Instytut Teleinformatyki

ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU.

Alternatywa dla alfanumerycznych wyświetlaczy LCD

Stanowisko laboratoryjne dla mikrokontrolera ATXmega32A4 firmy Atmel

Wizualizacja stanu czujników robota mobilnego. Sprawozdanie z wykonania projektu.

Programator ICP mikrokontrolerów rodziny ST7. Full MFPST7. Lite. Instrukcja użytkownika 03/09

Industrial Ethernet Dokumentacja techniczna połączenia Sterowniki S7-400(300) firmy Siemens - System PRO-2000 firmy MikroB

Obługa czujników do robota śledzącego linie. Michał Wendland czerwca 2011

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja

SML3 październik

Uczeń/Uczennica po zestawieniu połączeń zgłasza nauczycielowi gotowość do sprawdzenia układu i wszystkich połączeń.

Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100, które można zastosować w zestawie ZL3ARM.

Wyświetlacz graficzny LCD ze sterownikiem

UW-DAL-MAN v2 Dotyczy urządzeń z wersją firmware UW-DAL v5 lub nowszą.

SiMod-X-(A1) Przetwornik parametrów powietrza z interfejsem RS485 (MODBUS RTU) oraz wyjściem analogowym (dotyczy wersji -A1)

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Mikroprocesory i Mikrosterowniki Laboratorium

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Komunikacja w mikrokontrolerach Laboratorium

Komunikacja w mikrokontrolerach. Magistrala szeregowa I2C / TWI Inter-Integrated Circuit Two Wire Interface

TECHNIKA MIKROPROCESOROWA

Kod produktu: MP01611-ZK

WIZUALIZACJA DANYCH SENSORYCZNYCH Sprawozdanie z wykonanego projektu. Jakub Stanisz

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Listing_ $crystal = deklaracja

dokument DOK wersja 1.0

Moduł licznika położenia LP 2.

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

Kod produktu: MP01105

E-TRONIX Sterownik Uniwersalny SU 1.2

2.1 Porównanie procesorów

Kolorowy wyświetlacz graficzny z telefonu Siemens S65/M65 z kontrolerem Hitachi HD66773, część 2

ZL11AVR. Zestaw uruchomieniowy z mikrokontrolerem ATtiny2313

ET2007 KATALOG SYSTEMÓW STEROWANIA

Bluetooth łączy mikrokontrolery, część 2

Kod produktu: MP01611

Magistrala SPI. Linie MOSI i MISO sąwspólne dla wszystkich urządzeńna magistrali, linia SS jest prowadzona do każdego Slave oddzielnie.

Obsługa graficznych wyświetlaczy TFT z chipsetem FSA506 Kurs Obsługa graficznych wyświetlaczy TFT z chipsetem FSA506

SYSTEMY MIKROPROCESOROWE W AUTOMATYCE. Projekt bariery świetlnej.

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Kod produktu: MP01105T

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

Kod produktu: MP01611-ZK

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

4. Karta modułu Slave

LabVIEW PLATFORMA EDUKACYJNA Lekcja 6 LabVIEW i Arduino programy wykorzystujące wyświetlacz LCD, czujnik temperatury, PWM i diodę LED

2.1 Przesył danych między procesorem a tabelą zmiennych

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

1.10 MODUŁY KOMUNIKACYJNE

Podstawy techniki mikroprocesorowej

Kurs programowania mikrokontrolerów KURS PIC Kurs programowania mikrokontrolerów PIC (6) Sterowanie kolorowym wyświetlaczem Nokii 3510i

Pracownia Transmisji Danych, Instytut Fizyki UMK, Toruń. Instrukcja do ćwiczenia nr 10. Transmisja szeregowa sieciami energetycznymi

W O J S K O W A A K A D E M I A T E C H N I C Z N A im. Jarosława Dąbrowskiego

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

Programowanie w językach asemblera i C

Edukacyjny sterownik silnika krokowego z mikrokontrolerem AT90S1200 na płycie E100. Zestaw do samodzielnego montażu.

Kurs Elektroniki. Część 5 - Mikrokontrolery. 1/26

Przemysłowy odtwarzacz plików MP3 SD ze wzmacniaczem 2x10 Watt

LCD (Liquid Crystal Display)

interfejs szeregowy wyświetlaczy do systemów PLC

W.J WIELICZKA

MODBUS RTU wersja M1.14 protokół komunikacyjny wyświetlaczy LDN

1.1 Co to jest USBCOM? Budowa oraz parametry techniczne... 3

Tester samochodowych sond lambda

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

Programator mikrokontrolerów

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

Transkrypt:

Obsługa kolorowego wyświetlacza graficznego 9x, część Po upowszechnieniu się wyświetlaczy LCD monochromatycznych, nadchodzi era wyświetlaczy kolorowych. W artykule przedstawiamy sposób wykorzystania małego wyświetlacza kolorowego LCD z liczbą kolorów wynoszącą k! Rekomendacje: przejście z wyświetlaczy monochromatycznych na kolorowe, z całą pewnością zwiększy atrakcyjność projektowanych urządzeń, a w niektórych wypadkach podniesie ich walory użytkowe. Warto więc zapoznać się ze sposobem ich sterowania, który - jak pokazuje autor - wcale nie jest trudny. Wstęp Wyświetlacze LCD zdobyły miejsce prawie w każdym sprzęcie elektronicznym. Bardzo popularne są wyświetlacze alfanumeryczne wyposażone w specjalizowany kontroler, jak i coraz tańsze wyświetlacze graficzne wykorzystywane w dużej mierze w telefonach komórkowych. Wyświetlacze graficzne przeznaczone do telefonów komórkowych mają umiarkowaną cenę oraz można je łatwo wykorzystać do własnych projektowanych urządzeń. Da się zauważyć, między innymi w telefonach komórkowych, że coraz bardziej popularne stają się kolorowe wyświetlacze graficzne LCD, które wypierają z nich wyświetlacze monochromatyczne. Obsługa i zastosowanie do własnych celów kolorowego wyświetlacza graficznego LCD wcale nie musi być trud- niejsze od zastosowania graficznego wyświetlacza monochromatycznego. W artykule postaram się pokazać obsługę takiego kolorowego wyświetlacza graficznego, który może wyświetlać obrazy nie w kolorach, ale k () kolorach! Zostanie pokazany przykład współpracy takiego wyświetlacza z mikrokontrolerem poprzez interfejs szeregowy i równoległy. Zademonstrowany zostanie sposób wyświetlenia kolorowej bitmapy wysłanej z komputera przez port RS. Wyświetlacz AR-9CCJQW-H Sposób sterowania kolorowym wyświetlaczem zostanie pokazany na przykładzie wyświetlacza AR-9CCJQW-H, którego rozdzielczość wynosi 9x. Tego typu wyświetlacz, przeznaczony do telefonów komórkowych, posiada podświetlenie przez białe diody LED. Wyświetlaczem steruje kontroler HD8, który jest dość prosty w użyciu. Jedyną trudnością przy wyświetlaczach ze sterownikiem HD8 będzie skonfigurowanie Rys.. Schemat blokowy opisywanego wyświetlacza Tab.. Wybrane parametry wyświetlacza AR-9CCJQW-H - podśwtietlenie przez białe diody LED - rozdzielczość 9x - kontroler HD8 - k głębia kolorów ( bit/piksel) - dane na ekranie są bezpośrednio obrazowane z pamięci GRAM wyświetlacza - jeden interfejs równoległy i dwa szeregowe - tryby pracy z obniżonym poborem mocy - napięcie zasilania podświetlenia typowo,8 V - napięcie zasilania wyświetlacza LCD:, V..., V Elektronika Praktyczna / 8

Rys.. Schemat elektryczny wyświetlacza z wymaganymi elementami zewnętrznymi parametrów sterujących wyświetlaczem, natomiast samo wyświetlanie informacji na ekranie jest bardzo proste. W tab. przedstawiono niektóre parametry wykorzystanego wyświetlacza. Na rys. przedstawiono schemat blokowy wykorzystanego wyświetlacza. Wyświetlacz do poprawnej pracy wymaga dodatkowych elementów zewnętrznych współpracujących z wewnętrznymi blokami kontrolera HD8 takimi, jak oscylator czy przetwornice. Na rys. przedstawiony został schemat ideowy wyświetlacza LCD wraz z potrzebnymi elementami współpracującymi. Rezystor R ogranicza prąd płynący przez diody podświetlenia, natomiast kondensatory C...C wymagane są do poprawnej pracy wewnętrznych bloków układu HD8. Wartość rezystora R określa częstotliwość oscylatora. Jak wiadomo właściwości ciekłego kryształu w dużej mierze zależą od temperatury. Aby takie zmiany zminimalizować zastosowano zewnętrzny obwód kompensacji temperaturowej składający się z termistora RT i rezystora R. Obwód ten minimalizuje zmiany kontrastu w zależności od temperatury. Należy pamiętać ze kontrast będzie zależał nie tylko od temperatury, ale i kąta widzenia oraz napięcia zasilania wyświetlacza, które dla zminimalizowania zmian kontrastu powinno być dobrze stabilizowane i filtrowane. Tab.. Konfiguracja typu interfejsu IM IM IM/ID Typ interfejsu GND VCC VCC Równoległy 8-bitowy interfejs VCC GND GND Szeregowy interfejs synchroniczny ( linie) VCC VCC GND Szeregowy interfejs synchroniczny ( linie) Linie interfejsu komunikacyjnego z mikrokontrolerem, konfiguracyjne oraz zasilające zostały wyprowadzone na złącze ZA. Kontroler HD8 Na rys. przedstawiono schemat blokowy kontrolera HD8. Kontroler HD8 może sterować wyświetlaczem o maksymalnej rozdzielczości x8, przy czym liczba dostępnych kolorów może być równa, 9 lub. Ma on szybki interfejs równoległy, tryb szybkiego ładowania danych do pamięci obrazu, wbudowaną paletę odcieni kolorów, którą można konfigurować, funkcję maskowania i porównania wysyłanych danych do pamięci obrazu, programowany kontrast w 8 krokach oraz wiele innych funkcji. Pamięć na dane graficzne wynosi bajty, przy czym na jeden piksel przy k kolorach przypada bitów (-bitowy kolor). 8 Elektronika Praktyczna /

Rys.. Schemat blokowy kontrolera HD8 Rys.. Układ sterujący z interfejsem -przewodowym Elektronika Praktyczna / 8

Tab.. Rejestr sterownika HD8 Register No. Register R/W RS Upper Code Lower Code 9 8 IR Index ID ID ID ID ID ID ID SR Status read L L L L L L L L C C C C C C C Rh Oscillation start ms Device code read Executing cycle Note Note Rh Driver output control CSFT CMS SGS L NL NL NL NL NL Rh LCD operating alternation control RST B/C EOR NW NW NW NW NW NW Rh Power control () BS BS BS BT BT DC DC DC AP AP AP SLP STB Rh Contrast control VRC NT VR VR VR VR VR Rh Entry mode SPR SPR HW M VRO N CT CT CT CT CT CT CT I/D I/D AM LG LG LG Rh Conpare resistor CP CP CP CP CP CP CP CP8 CP CP CP CP CP CP CP CP Note Rh Display control E E SPT B/W REV D D R8h Flame cycle control DIV DIV RTN RTN RTN RTN RCh Power control () VC VC VC Rh Vertical scroll control Rh Rh Rh Rh Rh First screen operating position Second screen operating position Horizontal RAM address position Vertical RAM address position RAM write data mask Rh RAM address set ADI-8(Upper) AD-(Lower) Rh Rh Rh Rh Rh Rh Rh Rh Rh Rh Rh Rh RAM data write Write Data (Upper) Write Data (Lower) RAM data read Read Data (Upper) Read Data (Lower) control () control () control () control () control () control () control () control (8) EPROM interface control () EPROM interface control () EPROM interface control () 9 9 9 9 9 8 9 / TE OP OP A A A A A A 8 8 8 8 8 9 8 DPM IDX IDX IDX IDX IDX IDX IDX IDX. * nieistotne;. High-speed write mode is available only for the RAM writing Układ HD8 ma trzy interfejsy: 8-bitowy równoległy, szeregowy składający się z linii i szeregowy składający się z linii (dodatkowa linia RS określająca zapis adresu rejestru lub wartości rejestru). Przykład wyświetlania bitmapy Dla przykładu zostanie zaprezentowany sposób wyświetlenia na wyświetlaczu bitmapy 9x z bitową () głębią kolorów. Bitmapa zostanie wysłana z komputera przez RS i wyświetlona na wyświetlaczu. Na rys. przedstawiono schemat układu sterującego wyświetlaczem poprzez -przewodowy interfejs szeregowy. Całością steruje mikrokontro- 8 Elektronika Praktyczna /

List.. Program odbierający i wyświetlający bitmapę na wyświetlaczu Program przesyłający kolorową bitmapę 9x do kolorowego wyświetlacza LCD Komunikacja szeregowa Marcin Wiązania marcin.wiazania@ep.com.pl $regfile = m8def.dat informuje kompilator o pliku dyrektyw mikrokontrolera $crystal = informuje kompilator o częstotliwości oscylatora taktujacego mikrokontroler $baud = 9 informuje o predkosci transmisji interfejsu RS Config Portb = Output port B jako wyjsciowy Declare Sub Zap_a_c(byval Adrh As Byte, Byval Adrl As Byte, Byval Parh As Byte, Byval Parl As Byte ) procedura zapisu jednoczesnie adresu i komendy Declare Sub Zap_c(byval Comh As Byte, Byval Coml As Byte) procedura zapisu parametrow Declare Sub Zap_a(byval Adh As Byte, Byval Adl As Byte) procedura zapisu adresu Dim Temp As Byte zmienna pomocnicza Dim I As Byte zmienna pomocnicza Dim J As Byte zmienna pomocnicza Dim K As Word zmienna licznikowa otrzymanych bajtow z pliku BMP Sdi Alias Portb. alias do zygnalu danych Sdi Scl Alias Portb. alias do sygnalu zegarowego Scl Cs Alias Portb. alias do sygnalu wyboru Cs Rr Alias Portb. alias do sygnalu Rs (resetu) Reset Rr Set Cs Waitms Set Rr reset wyswietlacza ustawienie sygnalu Cs czekaj ms koniec resetu Call Zap_a_c(&H, &H, &H, &H) wlaczenie oscylatora wyswietlacza LCD Waitms czekaj ms Call Zap_a_c(&H, &H, &H, &H8C) ustawienie parametrow zasilania blokow wyswietlacza jak: BS-, BT-, DC-, AP-, SLP Call Zap_a_c(&H, &HC, &H, &H) ustawienie parametrow zasilania blokow wyswietlacza jak: VC- Call Zap_a_c(&H, &H, &HA, &HE) ustawienie parametrow kontrastu wyswietlacza jak: VRCNT, VR, VRON, CT- Call Zap_a_c(&H, &H, &H, &H) ustawienie parametrow pracy drivera sterujacego pixelami jak: CSFT, CMS, SGS, L, NL- Call Zap_a_c(&H, &H, &H, &H) ustawienie parametrow sygnalow sterujacych jak: RST, B/C, EOR, NW- Call Zap_a_c(&H, &H, &H, &H) ustawienie parametrow odpowiedzialnych interpretowanie danych wejsciowych jak: SPR-, H, I/D-, LG- Call Zap_a_c(&H, &H, &H, &H) ustawienie regulowanego rezystora komparatora jak: CP- Call Zap_a_c(&H, &HB, &H, &H) ustawienie cyklu ramki parametry: DIV-, RTC- Call Zap_a_c(&H, &H, &H, &H) ustalenie pozycji obrazu na ekranie LCD parametry: - i - Call Zap_a_c(&H, &H, &HF, &H) ustalenie poziomego adresu pamieci RAM wyswietlacza Call Zap_a_c(&H, &H, &HF, &H) ustalenie pionowego aresu pamieci RAM wyswietlacza Call Zap_a_c(&H, &H, &H, &H) ustalenie maski zapisu danych do pamieci RAM (brak zdefiniowanej maski) Call Zap_a_c(&H, &H, &H, &H) ustalenie parametrow kontrolnych wyswietlacza jak: E-, SPT, B/W i REV Call Zap_a_c(&H, &H, &H, &H) ustalenie parametrow kontrolnych wyswietlacza jak: D- (właczenie LCD) Call Zap_a_c(&H, &H,, ) konfiguracja patety odcieni Call Zap_a_c(&H, &H,, ) Call Zap_a_c(&H, &H, 9, 8) Call Zap_a_c(&H, &H,, ) Call Zap_a_c(&H, &H,, ) Call Zap_a_c(&H, &H,, ) Call Zap_a_c(&H, &H, 9, ) Call Zap_a_c(&H, &H,, ) Do petla glowna programu Print Oczekiwanie na BMP komunikat wyslany do terminala K = wyzerowanie zmiennej K Call Zap_a_c(&H, &H, &HF, &H) ustawienie adresu poczatkowego pamieci GRAM, ktory bedzie automatycznie inkrementowany I = wyzerowanie zmiennej I Call Zap_a(&H, &H) adres komendy zapisu danych do pamieci GRAM Do petla wykonywana az I = Incr I zwieszenie o wartości I J = Waitkey() oczekiwanie na odebranie bajta danych z portu RS do zmiennej J Loop Until I = jesli I = to koniec petli Do petla wykonywana az K = J = Waitkey() oczekiwanie na odebranie bajta danych z portu RS do zmiennej J I = Waitkey() oczekiwanie na odebranie bajta danych z portu RS do zmiennej I Call Zap_c(i, J) wywolanie procedury zapisu dwoch kolejnych pixeli Incr K zwiekszenie o zmiennej K Loop Until K = jesli K= to koniec petli Print Otrzymano BMP wyslanie to terminala komunikatu o otrzymaniu calej bitmapy Loop koniec petli glownej programu End koniec programu Sub Zap_a_c(byval Adrh As Byte, Byval Adrl As Byte, Byval Parh As Byte, Byval Parl As Byte) procedura zapisu jednoczesnie adresu oraz komendy Call Zap_a(adrh, Adrl) wywolanie procedury zapisu adresu Call Zap_c(parh, Parl) wywolanie procedury zapisu parametrow (danych) End Sub Sub Zap_a(byval Adh As Byte, Byval Adl As Byte) procedura zapisu adresu komendy Reset Cs wybor komunikacji z LCD - linia CS wyzerowana Temp = &B zapis do Temp wartosci oznaczajacej przeslanie adresu komendy Shiftout Sdi, Scl, Temp,, 8 wyslanie wartosci oznaczajacej typ przesylanego slowa Shiftout Sdi, Scl, Adh,, 8 wyslanie do LCD bardziej znaczacego slowa adresu Shiftout Sdi, Scl, Adl,, 8 wyslanie do LCD mniej znaczacego slowa adresu Set Cs ustawienie sygnalu Cs - koniec komunikacji z LCD End Sub Sub Zap_c(byval Comh As Byte, Byval Coml As Byte) procedura zapisu danych Reset Cs wybor komunikacji z LCD - linia CS wyzerowana Temp = &B zapis do Temp wartosci oznaczajacej przeslanie danych Shiftout Sdi, Scl, Temp,, 8 wyslanie wartosci oznaczajacej typ przesylanego slowa Shiftout Sdi, Scl, Comh,, 8 wyslanie do LCD bardziej znaczacego bajta danej Shiftout Sdi, Scl, Coml,, 8 wyslanie do LCD mniej znaczacego bajta danej Set Cs ustawienie sygnalu Cs - koniec komunikacji z LCD End Sub ler ATmega8, który pobiera bitmapę poprzez port szeregowy i przesyła ją odpowiednio do wcześniej skonfigurowanego wyświetlacza. Bitmapa odbierana jest z prędkością 9 bodów i można ją wysłać poprzez windowsowski Hyper Terminal. Mikrokontroler komunikuje się z wyświetlaczem poprzez przewodowy synchroniczny interfejs szeregowy. Do konfiguracji rodzaju interfejsu wyświetlacza służą linie IM, IM i IM. W tab. przedstawiono typy interfejsów w zależności od napięć podanych na linie IMx. Mikrokontroler dodatkowo steruje linią zerującą wyświetlacza. Układ U jest konwerterem napięć do poziomów zgodnych ze standardem RS. Napięciem V jest zasilane podświetlenie wyświetlacza, natomiast stabilizowanym przez U napięciem, V jest zasilana pozostała część układu oraz wyświetlacz. W typowych układach całość może być zasilana napięciem, V, a napięcie potrzebne do zasilenia podświetlenia może być wytwarzane poprzez przetwornicę podwyższającą (step-up). Na list. został przedstawiony program odbierający i wyświetlający bitmapę na wyświetlaczu. Na rys. przedstawiono przebiegi ilustrujące sposób komunikacji przez przewodowy interfejs szeregowy. Na początku należy jako pierwszy wysłać bajt ID identyfikujący wyświetlacz, w którym bit ID ma wartość stanu na linii IM wyświetlacza. Czyli poprzez wartość napięcia na linii IM można wybrać adres wyświetlacza. Bit RS określa czy będzie wysyłany adres rejestru czy wartość rejestru. Przy stanie bitu RS zapisywany jest adres rejestru, a przy wartość zaadresowanego rejestru. Zarówno adres, jak i wartość rejestru są wysyłane w formie słów (dwóch bajtów). Choć adres rejestru jest 8-bitowy, to musi być wysłany w formie -bitowej. W tab. przedstawiono listę rejestrów kontrolera HD8 których jest. Większość rejestrów jest przeznaczona do konfiguracji wyświetlacza. Wartości rejestrów także są zapisywane w postaci słów (dwóch bajtów). Dane wysyłane przez interfejs szeregowy rozpoczynają się od najbardziej znaczącego bitu słowa. Bity rejestrów wykorzystanych w przykładzie zostaną dokładniej opi- Elektronika Praktyczna / 8

Rys.. Przebiegi w interfejsie -przewodowym sane podczas omawiania programu. Dostępny jest także rejestr statusu SR, ale można go tylko odczytywać przy komunikacji z wyświetlaczem za pośrednictwem interfejsu równoległego. Komunikacja z wyświetlaczem nie nastręcza kłopotów, bo najpierw należy wysłać adres rejestru, który będzie konfigurowany przy wyzerowanym bicie RS, a następnie wartości zaadresowanego rejestru z ustawionym bitem RS. W programie występują trzy procedury wysyłania danych do wyświetlacza. Procedura Zap_a wysyła do LCD tylko adres rejestru. Procedura Zap_c wysyła do wyświetlacza tylko wartość rejestru wcześniej zaadresowanego. Natomiast procedura Zap_a_c umożliwia bezpośrednie wysłanie wartości rejestru pod adres wskazany także jako argument. Argumenty procedur z ostatnia literą h są bardziej znaczącą połówką, a z literą l mniej znaczącą połówką wysyłanego słowa. Marcin Wiązania marcin.wiazania@ep.com.pl Dodatkowe informacje Wyświetlacz opisany w artykule jest dostępny (także detalicznie) w firmie Gamma: http://www.gamma.pl, tel. () 8--. Cena wyświetlacza ze złączem do PCB wynosi zł netto. 8 Elektronika Praktyczna /