ELEKTRONIKA
SPRAWOZDANIE Z ĆWICZENIA NR 10
Obsługa urządzeń zewnętrznych - wyświetlacz LED
Grupa dziekańska : T24 A
Sekcja laboratoryjna nr 3:
1. Nowos Tomasz
2. Leonarcik Michał
Katowice 2009
1. Program 1. Jego działanie polega na zapaleniu 2 segmentów w każdej z 3 sekcji wyświetlacza LED.
Efekt na wyświetlaczu:
Treść programu:
L00
MOV DPTR, #FF30H //zapisanie do rejestru DPTR adresu wyboru bufora sekcji MOV A, #07H //zapisanie do akumulatora 0000 0111 (wybór sekcji 1,2,3) MOVX @DPTR, A //zapisanie A do bufora wyboru sekcji (adres bufora wyboru sekcji znajduje się w rejestrze DPTR) MOV DPTR, #FF38H //zapisanie do rejestru DPTR adresu bufora wyboru segmentu
MOV A, #03H //zapisanie do akumulatora 0000 0011 (wybór seg. a i b) MOV @DPTR, A //zapisanie A do bufora wyboru segmentu (adres bufora wyboru sekcji znajduje się w rejestrze DPTR) CLR P1.6 //odblokowanie wyś wietlania całego wyś wietlacza 7-segm.
LJMP L00 // skok do etykiety L00
2. Program 2. Jego działanie polega na zapaleniu 6 segmentów w każdej z 3 sekcji wyświetlacza LED (wyświetlenie trzech 0) po naciśnięciu klawisza 0. Jest to modyfikacja programu 1.
Efekt na wyświetlaczu po naciśnięciu 0:
Modyfikacja polega na zamianie rozkazu MOV A, #03H na MOV A, @R1 oraz wpisaniu poniższych poleceń przed etykietą L00: MOV R0, #30H //wpisanie do rejestru R0 wartoś ci 30H(adres pamię ci wewnę trznej)
MOV A, #3FH //zapisanie do rej. R1 wartoś ci 0011 1111(kod cyfry 0) MOV @RO, A //zapisanie do komórki pamię ci o adresie zawartym w rej.
R0 zawartoś ci akumulatora
LCALL W_KEY //pobranie numeru klawisza z klawiatury do akumulatora ADD A, #30H // dodanie do akumulatora wartoś ci 30H
MOV R1, A zapisanie akumulatora w rejestrze R1 (w rejestrze R1 znajduje się adres pamię ci wewnę trznej powię kszony o numer naciś nię tego klawisza)
3. Program 3. Modyfikacja programu 2 posiadająca dodatkową funkcję: po naciśnięciu klawisza 1 zapala 2 segmenty 3 sekcji wyświetlacza.
Efekt po naciśnięciu:
• 0:
• 1:
Na początku programu należy dopisać następujące komendy: MOV R0, #31H //wpisanie do rejestru R0 wartoś ci 31H (adres pamię ci wewnę trznej)
MOV A, #06H //zapisanie do rejestru R1 wartoś ci 0000 0110 (kod cyfry 1)
MOV @R0, A //zapisanie do komórki pamię ci o adresie zawartym w rejestrze R0 zawartoś ci akumulatora 4. Program 4. Modyfikacja programu 3, umożliwiająca dodatkowo wyświetlić
liczbę 2 (5 segmentów w 3 sekcjach) po naciśnięciu klawisza 2.
Efekt po naciśnięciu:
• 0:
• 1:
• 2:
Na początku programu należy dopisać rozkazy: MOV R0, #32H
//wpisanie do rejestru R0 wartoś ci 32H (adres pamię ci wewnę trznej)
MOV A, #5BH
//zapisanie do rejestru R1 wartoś ci 0101 1011 (kod cyfry 2) MOV @R0, A
//zapisanie do komórki pamię ci o adresie zawartym w rejestrze R0 zawartoś ci akumulatora
5. Schematy blokowe wyżej opisanych programów.
1) Program 1
Start
Zapisanie do rejestru
adresu bufora
Zapisanie
do akumulatora 0000
0111
Zapisanie A
do bufora wyboru
sekcji
Zapisanie do
rejestru DPTR adresu
wyboru
Zapisanie A
do bufora wyboru
segmentu
Zapisanie
do akumulatora 0000
011
Wywołanie
wyś wietlania całego
wyś wietlacza 7
segmentowego
Skok do etykiety
Koniec
Program 2
Start
Wpisanie do R0
wartoś ci
Zapisanie do R1
wartoś ci
0011 1111
Zapisanie do komórki
pamię ci
zawartoś ci
akumulatora
Pobranie numeru z
klawisza
Dodanie do
akumulatora
wartoś ci
Zapisanie
w akumulatorze
wartoś ci R1
Koniec
Zapisanie do rejestru
adresu bufora
Skok do etykiety
Zapisanie
do akumulatora 0000
0111
Wywołanie
wy
ś wietlania całego
Zapisanie A
wyś wietlacza 7
do bufora wyboru
segmentowego
sekcji
Zapisanie do
Zapisanie
rejestru DPTR adresu
do akumulatora 0000
wyboru
011
Start
Wpisanie do R0
wartoś ci
Zapisanie do R1
wartoś ci
0000 0110
Zapisanie do komórki
pamię ci
zawartoś ci
akumulatora
Wpisanie do R0
Koniec
wartoś ci
Skok do etykiety
Zapisanie
w akumulatorze
wartoś ci R1
0011 1111
Wywołanie
wyś wietlania całego
wyś wietlacza 7
Zapisanie do komórki
segmentowego
pamię ci zawartoś ci
akumulatora
Zapisanie
Pobranie numeru z
do akumulatora 0000
klawisza
0011
Zapisanie do
Dodanie do
rejestru DPTR adresu
akumulatora
wyboru
wartoś ci
Zapisanie A
Zapisanie
do bufora wyboru
w akumulatorze
sekcji
wartoś ci R1
Zapisanie
Zapisanie do rejestru
do akumulatora 0000
adresu bufora
0111
Start
Wpisanie do R0
wartoś ci
Zapisanie do R1
wartoś ci
0101 1011
Zapisanie do komórki
pamię ci
zawartoś ci
akumulatora
Wpisanie do R0
Koniec
wartoś ci
Skok do etykiety
Zapisanie
w akumulatorze
wartoś ci R1
0011 1111
Wywołanie
wyś wietlania całego
wyś wietlacza 7
Zapisanie do komórki
segmentowego
pamię ci zawartoś ci
akumulatora
Zapisanie
Pobranie numeru z
do akumulatora 0000
klawisza
0011
Zapisanie do
Dodanie do
rejestru DPTR adresu
akumulatora
wyboru
wartoś ci
Zapisanie A
Zapisanie
do bufora wyboru
w akumulatorze
sekcji
wartoś ci R1
Zapisanie
Zapisanie do rejestru
do akumulatora 0000
adresu bufora
0111