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

2)

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

3) Program 3

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

4) Program 4

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