Korzystanie z wyświetlacza LCD systemu DSM

Transkrypt

Korzystanie z wyświetlacza LCD systemu DSM
Instrukcja nr 2/LUMiSK/078/2 strona 1 z 2
T: Korzystanie z wyświetlacza LCD systemu DSM-51
1. Na dysku twardym komputera utwórz katalog według poniższego wzoru:
c:/klasa4b/grupa1/zespol1/lumisk2
i zapisz w nim pierwszy program z załącznika pod nazwą s1.a51 .
2. Zasembluj program poleceniem dsm51ass s1.a51, a następnie uruchom dsm51run s1.hex .
3. Porównaj drugi program przykładowy z pierwszym. Jakie jest zadanie dodanego fragmentu
programu?
4. Przerysuj na specjalnym szablonie wygląd wyświetlacza po wykonaniu drugiego programu.
Dlaczego nie wszystkie jedynki użyte do narysowania znaku znajdują się na LCD?
5. Dlaczego do wyświetlenia pierwszego „znaczka” użyto kodu 8, a nie 0? Zamień liczby
osiem oraz 0 na system dwójkowy. W czym są do siebie podobne liczby 8 i 0? Sprawdź,
jaką rolę spełnia 0 (zero) w definicji tekstu.
6. Napisz program wyświetlający przynajmniej cztery nowe znaki.
7. Napisz program wyświetlający kilka znaków o kodach większych od 127.
Załączniki
;lumisk2/S1.a51
MOV
A,#00000001B
LCALL WRITE_INSTR
Programy przykładowe dla DSM-51
;Kasuj wyswietlacz
MOV
DPTR,#TEKST
LCALL WRITE_TEXT
SJMP $
TEKST:
DB
END
'LCD >>',0,'<<'
;lumisk2/S2.a51
MOV
A,#01000000B
LCALL WRITE_INSTR
MOV
R7,#16
MOV
DPTR,#NOWE_ZNAKI
POWTORZ:
CLR
A
MOVC A,@A+DPTR
LCALL WRITE_DATA
INC
DPTR
DJNZ R7,POWTORZ
MOV
A,#00000001B
LCALL WRITE_INSTR
;USTAW ADRES PIERWSZEGO ZNAKU Z PAMIECI CG RAM
;ZAPISZ 16 BAJTOW DO CG RAM CZYLI OBRAZ 2 ZNAKOW
;Kasuj wyswietlacz
MOV
DPTR,#TEKST
LCALL WRITE_TEXT
SJMP $
TEKST:
DB
'LCD >>',8,1,0,'<<'
Instrukcja nr 2/LUMiSK/078/2 strona 2 z 2
NOWE_ZNAKI:
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
DB
END
00001110B
00011111B
00011111B
00011111B
00010001B
00010001B
00001110B
00000000B
11111111B
01111111B
00111111B
00011111B
00001111B
00000111B
00000011B
00000001B