01-2005_081-086.pdf
(
1169 KB
)
Pobierz
ep_01_081-086.indd
K U R S
Obsługa kolorowego
wyświetlacza graficznego
96x64, część 1
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ą 65k!
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 miej-
sce prawie w każdym sprzęcie elek-
tronicznym. Bardzo popularne są
wyświetlacze alfanumeryczne wy-
posażone w specjalizowany kontro-
ler, jak i coraz tańsze wyświetlacze
graficzne wykorzystywane w dużej
mierze w telefonach komórkowych.
Wyświetlacze graficzne przeznaczo-
ne 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 te-
lefonach komórkowych, że coraz
bardziej popularne stają się kolo-
rowe wyświetlacze graficzne LCD,
które wypierają z nich wyświetla-
cze monochromatyczne. Obsługa i
zastosowanie do własnych celów
kolorowego wyświetlacza graficzne-
go 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 256 kolor-
ach, ale 65
k (65000) kolorach! Zos-
tanie pokazany przykład współpracy
takiego wyświetlacza z mikrokontro-
lerem poprzez interfejs szeregowy
i równoległy. Zademonstrowany zo-
stanie sposób wyświetlenia koloro-
wej bitmapy wysłanej z komputera
przez port RS232.
Wyświetlacz
AR-09664CCJQW-00H
Sposób sterowania kolorowym
wyświetlaczem zostanie pokaza-
ny na przykładzie wyświetlacza
AR-09664CCJQW-00H, którego roz-
dzielczość wynosi 96x64. Tego
typu wyświetlacz, przeznaczony do
telefonów komórkowych, posiada
podświetlenie przez białe diody
LED. Wyświetlaczem steruje kontro-
ler HD66768, który jest dość prosty
w użyciu. Jedyną trudnością przy
wyświetlaczach ze sterownikiem
HD66768 będzie skonfigurowanie
Rys. 1. Schemat blokowy opisywa-
nego wyświetlacza
Tab. 1. Wybrane parametry
wyświetlacza AR-09664CCJQW-00H
- podśwtietlenie przez białe diody LED
- rozdzielczość 96x64
- kontroler HD66768
- 65 k głębia kolorów (16 bit/piksel)
- dane na ekranie są bezpośrednio obrazo-
wane 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
10,8 V
- napięcie zasilania wyświetlacza LCD:
2,4 V...3,6 V
Elektronika Praktyczna 1/2005
81
K U R S
Rys. 2. Schemat elektryczny wyświetlacza z wymaganymi elementami zewnętrznymi
parametrów sterujących wyświetla-
czem, natomiast samo wyświetla-
nie informacji na ekranie jest bar-
dzo proste. W
tab. 1
przedstawiono
niektóre parametry wykorzystanego
wyświetlacza.
Na
rys. 1
przedstawiono schemat
blokowy wykorzystanego wyświetlacza.
Wyświetlacz do poprawnej pracy wy-
maga dodatkowych elementów ze-
wnętrznych współpracujących z
wewnętrznymi blokami kontrolera
HD66768 takimi, jak oscylator czy
przetwornice. Na
rys. 2
przedstawiony
został schemat ideowy wyświetlacza
LCD wraz z potrzebnymi elementa-
mi współpracującymi. Rezystor R1
ogranicza prąd płynący przez diody
podświetlenia, natomiast kondensatory
C1...C11 wymagane są do poprawnej
pracy wewnętrznych bloków ukła-
du HD66768. Wartość rezystora R2
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 zmi-
nimalizować zastosowano zewnętrzny
obwód kompensacji temperaturowej
składający się z termistora RT1 i
rezystora R3. Obwód ten minima-
lizuje 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 stabi-
lizowane i filtrowane.
Linie interfejsu komunikacyjnego
z mikrokontrolerem, konfiguracyjne
oraz zasilające zostały wyprowadzo-
ne na złącze Z1A.
Kontroler HD66768
Na
rys. 3
przedstawiono sche-
mat blokowy kontrolera HD66768.
Kontroler HD66768 może sterować
wyświetlaczem o maksymalnej roz-
dzielczości 104x84, przy czym liczba
dostępnych kolorów może być równa
65000, 4096 lub 256. Ma on szybki
interfejs równoległy, tryb szybkiego
ładowania danych do pamięci obra-
zu, wbudowaną paletę odcieni ko-
lorów, którą można konfigurować,
funkcję maskowania i porównania
wysyłanych danych do pamięci ob-
razu, programowany kontrast w 128
krokach oraz wiele innych funkcji.
Pamięć na dane graficzne wynosi
17472 bajty, przy czym na jeden
piksel przy 65
k kolorach przypada
16 bitów (16-bitowy kolor).
Tab. 2. Konfiguracja typu interfejsu
IM2 IM1 IM0/ID Typ interfejsu
GND VCC VCC Równoległy 8-bitowy interfejs
VCC GND GND Szeregowy interfejs synchroniczny (3 linie)
VCC VCC GND Szeregowy interfejs synchroniczny (4 linie)
82
Elektronika Praktyczna 1/2005
K U R S
Rys. 3. Schemat blokowy kontrolera HD66768
Rys. 4. Układ sterujący z interfejsem 3-przewodowym
Elektronika Praktyczna 1/2005
83
K U R S
Tab. 3. Rejestr sterownika HD66768
Upper Code
Lower Code
Register
No.
Executing
cycle
Register
R/W RS
DB
15
DB
14
DB
13
DB
12
DB
11
DB
10
DB 9 DB 8 DB 7 DB 6 DB 5 DB 4 DB 3 DB 2 DB 1 DB 0
IR Index 0 0 • • • • • • • • • ID6 ID5 ID4 ID3 ID2 ID1 ID0 0
Note 1
SR Status read 1 0 L7 L6 L5 L4 L3 L2 L1 L0 0 C6 C5 C4 C3 C2 C1 C0 0
Oscillation start 0 1 • • • • • • • • • • • • • • • • 10 ms
Device code read 1 1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 0 0
Note 1
R00h
R01h Driver output control 0 1 0 0 0 0 0 CSFT CMS SGS 0 0 4L NL4 NL3 NL2 NL1 NL0 0
R02h
LCD operating alter-
nation control
0 1 0 0 0 0 0 RST B/C EOR 0 0 NW5 NW4 NW3 NW2 NW1 NW0 0
R03h Power control (1) 0 1 0 0 BS2 BS1 BS0 0 BT1 BT0 DC2 DC1 DC0 AP2 AP1 AP0 SLP STB 0
R04h Contrast control 0 1 0 0
VRC
NT
VR4 VR3 VR2 VR1 VR0
VRO
N
CT6 CT5 CT4 CT3 CT2 CT1 CT0 0
R05h Entry mode 0 1 SPR1 SPR0 0 0 0 0
HW
M
0 0 0 I/D1 I/D0 AM LG2 LG1 LG0 0
Note 2
R06h Conpare resistor 0 1 CP15 CP14 CP13 CP12 CP11 CP10 CP0 CP8 CP7 CP6 CP5 CP4 CP3 CP2 CP1 CP0 0
R07h Display control 0 1 0 0 0 0 0 VLE2 VLE1 SPT 0 0 0 0 B/W REV D1 D0 0
R08h Flame cycle control 0 1 0 0 0 0 0 0 DIV1 DIV0 0 0 0 0 RTN3 RTN2 RTN1 RTN0 0
R0Ch Power control (2) 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 VC2 VC1 VC0 0
R11h Vertical scroll control 0 1
VL
27
VL
26
VL
25
VL
24
VL
23
VL
22
VL
21
VL
20
VL
17
VL
16
VL
15
VL
14
VL
13
VL
12
VL
11
VL
10
0
R14h
First screen
operating position
0 1
SE
17
SE
16
SE
15
SE
14
SE
13
SE
12
SE
11
SE
10
SS
17
SS
16
SS
15
SS
14
SS
13
SS
12
SS
11
SS
10
0
R15h
Second screen
operating position
0 1
SE
27
SE
26
SE
25
SE
24
SE
23
SE
22
SE
21
SE
20
SS
27
SS
26
SS
25
SS
24
SS
23
SS
22
SS
21
SS
20
0
R16h
Horizontal RAM
address position
0 1
HEA
7
HEA
6
HEA
5
HEA
4
HEA
3
HEA
2
HEA
1
HEA
0
HAS
7
HAS
6
HAS
5
HAS
4
HAS
3
HAS
2
HAS
1
HAS
0
0
R17h
Vertical RAM
address position
0 1
VEA
7
VEA
6
VEA
5
VEA
4
VEA
3
VEA
2
VEA
1
VEA
0
VSA
7
VSA
6
VSA
5
VSA
4
VSA
3
VSA
2
VSA
1
VSA
0
0
R20h
RAM write data
mask
0 1
WM
15
WM
14
WM
13
WM
12
WM
11
WM
10
WM
9
WM
8
WM
7
WM
6
WM
5
WM
4
WM
3
WM
2
WM
1
WM
0
0
R21h RAM address set 0 1
ADI5-8(Upper)
AD7-0(Lower)
RAM data write 0 1
Write Data (Upper)
Write Data (Lower)
R22h
RAM data read 0 1
Read Data (Upper)
Read Data (Lower)
R30h
Grayscale palette
control (1)
0 1 0 0 0
PK
14
PK
13
PK
12
PK
11
PK
10
0 0 0
PK
04
PK
03
PK
02
PK
01
PK
00
0
R31h
Grayscale palette
control (2)
0 1 0 0 0
PK
34
PK
33
PK
32
PK
31
PK
30
0 0 0
PK
24
PK
23
PK
22
PK
21
PK
20
0
R32h
Grayscale palette
control (3)
0 1 0 0 0
PK
54
PK
53
PK
52
PK
51
PK
50
0 0 0
PK
44
PK
43
PK
42
PK
41
PK
40
0
R33h
Grayscale palette
control (4)
0 1 0 0 0
PK
74
PK
73
PK
72
PK
71
PK
70
0 0 0
PK
64
PK
63
PK
62
PK
61
PK
60
0
R34h
Grayscale palette
control (5)
0 1 0 0 0
PK
94
PK
93
PK
92
PK
91
PK
90
0 0 0
PK
84
PK
83
PK
82
PK
81
PK
80
0
R35h
Grayscale palette
control (6)
0 1 0 0 0
PK
114
PK
113
PK
112
PK
111
PK
110
0 0 0
PK
104
PK
103
PK
102
PK
101
PK
100
0
R36h
Grayscale palette
control (7)
0 1 0 0 0
PK
134
PK
133
PK
132
PK
131
PK
130
0 0 0
PK
124
PK
123
PK
122
PK
121
PK
120
0
R37h
Grayscale palette
control (8)
0 1 0 0 0
PK
154
PK
153
PK
152
PK
151
PK
150
0 0 0
PK
144
PK
143
PK
142
PK
141
PK
140
0
R40h
E2PROM interface
control (1)
0/1 1 0 0 0 TE 0 0 OP1 OP0 0 0 A5 A4 A3 A2 A1 A0 0
R41h
E2PROM interface
control (2)
0 1
TD
15
TD
14
TD
13
TD
12
TD
11
TD
10
TD 9 TD 8 TD 7 TD 6 TD 5 TD 4 TD 3 TD 2 TD 1 TD 0 0
R42h
E2PROM interface
control (3)
0 1 0 0 0 0 0 0 0 DPM IDX 7 IDX 6 IDX 5 IDX 4 IDX 3 IDX 2 IDX 1 IDX 0 0
1. „*” nieistotne; 2. High-speed write mode is available only for the RAM writing
Układ HD66768 ma trzy interfejsy:
8-bitowy równoległy, szeregowy skła-
dający się z 3 linii i szeregowy skła-
dający się z 4 linii (dodatkowa linia
RS określająca zapis adresu rejestru
lub wartości rejestru).
Przykład wyświetlania bitmapy
Dla przykładu zostanie zapre-
zentowany sposób wyświetlenia na
wyświetlaczu bitmapy 96x64 z 16
bitową (65000) głębią kolorów. Bit-
mapa zostanie wysłana z kompute-
ra przez RS232 i wyświetlona na
wyświetlaczu.
Na
rys. 4
przedstawiono schemat
układu sterującego wyświetlaczem
poprzez 3-przewodowy interfejs sze-
regowy. Całością steruje mikrokontro-
84
Elektronika Praktyczna 1/2005
K U R S
List. 1. Program odbierający i
wyświetlający bitmapę na wyświe-
tlaczu
‘Program przesyłający kolorową bitmapę 96x64 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 = 4000000
‘informuje kompilator o częstotliwości
oscylatora taktujacego mikrokontroler
$baud = 9600
‘informuje o predkosci transmisji
interfejsu RS232
Config Portb = Output
‘port B jako wyjsciowy
Call Zap_a_c(&H00 , &H32 , 9 , 8)
‘dalsza konfiguracja patety odcieni
Call Zap_a_c(&H00 , &H33 , 12 , 11)
‘dalsza konfiguracja patety odcieni
Call Zap_a_c(&H00 , &H34 , 14 , 13)
‘dalsza konfiguracja patety odcieni
Call Zap_a_c(&H00 , &H35 , 16 , 15)
‘dalsza konfiguracja patety odcieni
Call Zap_a_c(&H00 , &H36 , 19 , 17)
‘dalsza konfiguracja patety odcieni
Call Zap_a_c(&H00 , &H37 , 24 , 22)
‘dalsza konfiguracja patety odcieni
ler ATmega8, który pobiera bitmapę
poprzez port szeregowy i przesyła
ją odpowiednio do wcześniej skon-
figurowanego wyświetlacza. Bitmapa
odbierana jest z prędkością 9600
bodów i można ją wysłać poprzez
windowsowski
Hyper Terminal
.
Mikrokontroler komunikuje się z
wyświetlaczem poprzez 3 przewo-
dowy synchroniczny interfejs szere-
gowy. Do konfiguracji rodzaju inter-
fejsu wyświetlacza służą linie IM0,
IM1 i IM2. W
tab. 2
przedstawiono
typy interfejsów w zależności od
napięć podanych na linie IMx. Mi-
krokontroler dodatkowo steruje linią
zerującą wyświetlacza.
Układ U2 jest konwerterem na-
pięć do poziomów zgodnych ze
standardem RS232. Napięciem 12
V
jest zasilane podświetlenie wyświe-
tlacza, natomiast stabilizowanym
przez U3 napięciem 3,3
V jest za-
silana pozostała część układu oraz
wyświetlacz. W typowych układach
całość może być zasilana napięciem
3,3
V, a napięcie potrzebne do zasi-
lenia podświetlenia może być wyt-
warzane poprzez przetwornicę pod-
wyższającą (
step-up
).
Na
list. 1
został przedstawiony
program odbierający i wyświetlający
bitmapę na wyświetlaczu.
Na
rys. 5
przedstawiono prze-
biegi ilustrujące sposób komuni-
kacji przez 3 przewodowy inter-
fejs szeregowy. Na początku na-
leży jako pierwszy wysłać bajt
ID identyfikujący wyświetlacz, w
którym bit ID ma wartość stanu
na linii IM0 wyświetlacza. Czy-
li poprzez wartość napięcia na
linii IM0 można wybrać adres
wyświetlacza.
Bit RS określa czy będzie wy-
syłany adres rejestru czy wartość
rejestru. Przy stanie 0 bitu RS za-
pisywany jest adres rejestru, a przy
1 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 16-bitowej.
W
tab. 3
przedstawiono listę re-
jestrów kontrolera HD66768 któ-
rych jest 31. 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 rozpoczyna-
ją się od najbardziej znaczącego bitu
słowa. Bity rejestrów wykorzystanych
w przykładzie zostaną dokładniej opi-
Do
‘petla glowna programu
Print „Oczekiwanie na BMP”
‘komunikat wyslany do terminala
K = 0
‘wyzerowanie zmiennej K
Call Zap_a_c(&H00 , &H21 , &H3F , &H00)
‘ustawienie adresu poczatkowego pamieci GRAM,
ktory bedzie automatycznie inkrementowany
I = 0
‘wyzerowanie zmiennej I
Call Zap_a(&H00 , &H22)
‘adres komendy zapisu danych do
pamieci GRAM
Do
‘petla wykonywana az I = 70
Incr I
‘zwieszenie o 1 wartości I
J = Waitkey()
‘oczekiwanie na odebranie bajta danych z portu
RS232 do zmiennej J
Loop Until I = 70
‘jesli I = 70 to koniec petli
Do
‘petla wykonywana az K = 6145
J = Waitkey()
‘oczekiwanie na odebranie bajta danych z portu
RS232 do zmiennej J
I = Waitkey()
‘oczekiwanie na odebranie bajta danych z portu
RS232 do zmiennej I
Call Zap_c(i , J)
‘wywolanie procedury zapisu dwoch
kolejnych pixeli
Incr K
‘zwiekszenie o 1 zmiennej K
Loop Until K = 6145
‘jesli K=6145 to koniec petli
Print „Otrzymano BMP”
‘wyslanie to terminala komunikatu o
otrzymaniu calej bitmapy
Loop
‘koniec petli glownej programu
End
‘koniec programu
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.2
‘alias do zygnalu danych Sdi
Scl Alias Portb.3
‘alias do sygnalu zegarowego Scl
Cs Alias Portb.4
‘alias do sygnalu wyboru Cs
Rr Alias Portb.5
‘alias do sygnalu Rs (resetu)
Reset Rr
‘reset wyswietlacza
Set Cs
‘ustawienie sygnalu Cs
Waitms 20
‘czekaj 20 ms
Set Rr
‘koniec resetu
Call Zap_a_c(&H00 , &H00 , &H00 , &H01)
‘wlaczenie oscylatora wyswietlacza LCD
Waitms 20
‘czekaj 20 ms
Call Zap_a_c(&H00 , &H03 , &H12 , &H8C)
‘ustawienie parametrow zasilania
blokow wyswietlacza jak: BS2-0, BT1-0, DC2-0,
AP2-0, SLP
Call Zap_a_c(&H00 , &H0C , &H00 , &H00)
‘ustawienie parametrow zasilania
blokow wyswietlacza jak: VC2-0
Call Zap_a_c(&H00 , &H04 , &H1A , &HE0)
‘ustawienie parametrow kontrastu
wyswietlacza jak: VRCNT, VR4, VRON, CT6-1
Call Zap_a_c(&H00 , &H01 , &H02 , &H07)
‘ustawienie parametrow pracy drivera
sterujacego pixelami jak: CSFT, CMS, SGS, 4L,
NL4-0
Call Zap_a_c(&H00 , &H02 , &H00 , &H00)
‘ustawienie parametrow sygnalow steru-
jacych jak: RST, B/C, EOR, NW5-0
Call Zap_a_c(&H00 , &H05 , &H02 , &H10)
‘ustawienie parametrow odpowie-
dzialnych interpretowanie danych wejsciowych jak:
SPR1-0, HWM, I/D1-0, LG2-0
Call Zap_a_c(&H00 , &H06 , &H00 , &H00)
‘ustawienie regulowanego rezystora
komparatora jak: CP15-0
Call Zap_a_c(&H00 , &H0B , &H00 , &H00)
‘ustawienie cyklu ramki parametry:
DIV1-0, RTC3-0
Call Zap_a_c(&H00 , &H14 , &H53 , &H00)
‘ustalenie pozycji obrazu na ekranie
LCD parametry: SE17-10 i SS17-10
Call Zap_a_c(&H00 , &H16 , &H5F , &H00)
‘ustalenie poziomego adresu pamieci
RAM wyswietlacza
Call Zap_a_c(&H00 , &H17 , &H3F , &H00)
‘ustalenie pionowego aresu pamieci RAM
wyswietlacza
Call Zap_a_c(&H00 , &H20 , &H00 , &H00)
‘ustalenie maski zapisu danych do
pamieci RAM (brak zdefiniowanej maski)
Call Zap_a_c(&H00 , &H07 , &H00 , &H02)
‘ustalenie parametrow kontrolnych
wyswietlacza jak: VLE1-0, SPT, B/W i REV
Call Zap_a_c(&H00 , &H07 , &H00 , &H03)
‘ustalenie parametrow kontrolnych
wyswietlacza jak: D1-0 (właczenie LCD)
Call Zap_a_c(&H00 , &H30 , 3 , 1)
‘konfiguracja patety odcieni
Call Zap_a_c(&H00 , &H31 , 7 , 5)
‘dalsza konfiguracja patety odcieni
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 = &B01110000
‘zapis do Temp wartosci oznaczajacej
przeslanie adresu komendy
Shiftout Sdi , Scl , Temp , 0 , 8
‘wyslanie wartosci oznaczajacej typ
przesylanego slowa
Shiftout Sdi , Scl , Adh , 0 , 8
‘wyslanie do LCD bardziej znaczacego
slowa adresu
Shiftout Sdi , Scl , Adl , 0 , 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 = &B01110010
‘zapis do Temp wartosci oznaczajacej
przeslanie danych
Shiftout Sdi , Scl , Temp , 0 , 8
‘wyslanie wartosci oznaczajacej typ
przesylanego slowa
Shiftout Sdi , Scl , Comh , 0 , 8
‘wyslanie do LCD bardziej znaczacego
bajta danej
Shiftout Sdi , Scl , Coml , 0 , 8
‘wyslanie do LCD mniej znaczacego
bajta danej
Set Cs
‘ustawienie sygnalu Cs - koniec
komunikacji z LCD
End Sub
Elektronika Praktyczna 1/2005
85
Plik z chomika:
decha9191
Inne pliki z tego folderu:
01-2005_010-016.pdf
(1288 KB)
01-2005_019-024.pdf
(873 KB)
01-2005_027-029.pdf
(480 KB)
01-2005_035-041.pdf
(2812 KB)
01-2005_031-034.pdf
(580 KB)
Inne foldery tego chomika:
02
03
04
05
06
Zgłoś jeśli
naruszono regulamin