Informatyka Studia Dzienne
Laboratorium Architektury Komputerów
Ćwiczenie 1
Obsługa wyświetlacza siedmiosegmentowego LED
i portów Wejścia/Wyjścia.
Przygotowanie:
Krzysztof Tokarz
1. Cel ćwiczenia.
Celem ćwiczenia jest poznanie:
- architektury systemu opartego na 8-bitowym mikrokomputerze jednoukładowym 8051,
- budowy i działania wyświetlacza siedmiosegmentowego LED,
- obsługi portów wejściowych i wyjściowych mikrokontrolera 8051.
Ćwiczenie jest realizowane z wykorzystaniem Dydaktycznego Systemu
Mikroprocesorowego DSM-51 zbudowanego w oparciu o mikrokomputer jednoukładowy serii
8051.
2. Informacje wstępne.
W Dydaktycznym Systemie Mikroprocesorowym wykorzystywanym na laboratorium
zastosowano mikrokontroler 80C51 taktowany z częstotliwością 11,059 MHz. Do mikrokontrolera
są podłączone m.in. następujące bloki i elementy (wymieniono bloki używane na zajęciach):
–
32 kB pamięci EPROM przeznaczonej na podprogramy systemowe,
–
32 kB pamięci RAM przeznaczonej na dane lub programy użytkownika,
–
klawiatura sekwencyjna,
–
6-cyfrowy wyświetlacz LED,
–
klawiatura matrycowa,
–
wyświetlacz alfanumeryczny LCD,
–
głośniczek (buzzer),
–
dioda LED.
System, po włączeniu, uruchamia się w trybie wykonywania programu z pamięci stałej
EPROM. W tym trybie możliwe jest załadowanie do pamięci RAM programu użytkownika z
komputera PC. Aby uruchomić załadowany z komputera program należy zrestartować system
przyciskiem “RESET RAM”. Powrót do trybu współpracy z komputerem następuje po
przyciśnięciu przycisku “RESET ROM”.
3. Opis działania wybranych bloków układu.
W Dydaktycznym Systemie Mikroprocesorowym DSM-51 najprostszym elementem
sygnalizacyjnym jest dioda LED “TEST”. Dioda jest podłączona do linii numer 7 portu P1 w taki
sposób, że wymuszenie na tej linii stanu “0” powoduje jej zaświecenie (lekcja 1, przykłady 2-5).
Nieco bardziej skomplikowane jest odczytanie stanu któregoś z przycisków. Aby tego
dokonać należy wpisać stan “1” do bitów rejestru wyboru wskaźnika odpowiadających za
uaktywnienie wybranych przycisków. Naciśnięcie wybranego przycisku spowoduje pojawienie się
wysokiego stanu na porcie P3.5. Rejestr wyboru wskaźnika jest dostępny pod adresem 30h
oznaczonym symbolem CSDS. (lekcja 7, przykłady 1-2)
Multipleksowany wyświetlacz LED, składający się z sześciu cyfr i kilku diod
sygnalizacyjnych, jest sterowany poprzez dwa ośmiobitowe rejestry równoległe. Jeden rejestr jest
odpowiedzialny za wybór wskaźnika, drugi przechowuje dane do wyświetlenia na wybranym
wskażniku.
Rejestry sterujące pracą wyświetlacza są przeznaczone tylko do zapisu, odczyt ich
zawartości jest niemożliwy. Do rejestrów tych doprowadzono sygnały wyboru rejestru pochodzące z
dekodera adresu oraz sygnał zapisu - bezpośrednio z mikrokontrolera. Rejestrem danych steruje
sygnał CSDB uaktywniany przy wybraniu adresu 38h. Rejestrem wyboru wskaźnika steruje sygnał
CSDS uaktywniany przy wybraniu adresu 30h. Dodatkowo cały wyświetlacz można wyłączyć
sygnałem podłączonym bezpośrednio do portu P1.6 mikrokontrolera. Stan “0” na tym wyjściu
powoduje włączenie, “1” wyłączenie wyświetlania. Aby zaświecić cyfrę na wybranym wskaźniku
należy wpisać stan “1” do rejestru danych wyświetlacza na pozycjach odpowiadających segmentom
do zaświecenia, oraz stan “1” do rejestru wyboru wskaźnika na pozycji odpowiadającej temu
wskaźnikowi. (lekcja 6, przykłady 2-3)
Przyporządkowanie bitów magistrali danych do segmentów wyświetlacza jest zgodne z
poniższą tabelą.
Linia danych Segment
Dioda
D0
a
F1
D1
b
F2
D2
c
F3
D3
d
F4
D4
e
OK
D5
f
ER
D6
g
D7
kropka
Sygnały służące do multipleksowania poszczególnych wskaźników wyświetlacza
podłączone są również do sześcioklawiszowej klawiatury sekwencyjnej (kursor, enter, esc). W
procedurze obsługi wyświetlacza i klawiatury można sprawdzać stan linii P3.5 mikrokontrolera.
Stan “1” na tej linii oznacza wciśnięcie klawisza odpowiadającego aktualnie wybranemu
wskaźnikowi. Przyporządkowanie klawiszy i wskaźników w wyświetlaczu do bitów magistrali
danych jest zgodne z poniższą tabelą.
Linia danych Cyfra
Klawisz
D0
Jedności
enter
D1
Dziesiątki
esc
D2
Setki
prawo
D3
Tysiące
góra
D4
Dziesiątki tysięcy
dół
D5
Setki tysięcy
lewo
D6
Diody
-
Podczas załączania i wyłączania klawiszy wystepuje zjawisko drgań styków. Drgania
styków mogą spowodować wielokrotne wykonanie funkcji przypisanej do danego klawisza (n.p.
dodanie wartości 1 do aktualnego stanu licznika minut podczas ustawiania zegara). W wielu
przypadkach konieczna jest eliminacja wpływu tego zjawiska na działanie programu. W układach
mikroprocesorowych dokonuje się tego na drodze programowej. Jednym z możliwych rozwiązań
jest reakcja na pierwsze pojawienie się sygnału nacisnięcia klawisza, odczekanie kilkudziesięciu
milisekund a następnie odczekanie na zwolnienie klawisza. (lekcja 7, przykład 3)
a
f
b
e
c
g
d
4. Przebieg ćwiczenia.
W trakcie ćwiczenia laboratoryjnego studenci mają do dyspozycji dokumentację techniczną
Dydaktycznego Systemu Mikroprocesorowego DSM-51 firmy MicroMade, oraz lekcje
przygotowane przez tą firmę. Materiały te są dostępne na stronie internetowej firmy MicroMade:
www.micromade.pl.
Na ćwiczeniu laboratoryjnym należy:
–
przeanalizować programy z przykładowych lekcji podanych w instrukcji.
–
napisać program wyświetlający na wyświetlaczu LED liczbę mieszczącą się w zakresie 0 - 9.
Wartość wyświetlana ma być zwiększana o jeden klawiszem “w górę” i zmniejszana o jeden
klawiszem “w dół”.