AK D Lab 11 (2)

background image

Informatyka Studia Dzienne

Laboratorium Architektury Komputerów

Ćwiczenie 11

System przerwań mikrokontrolera 8051.

Przygotowanie:
Krzysztof Tokarz

background image

1. Cel ćwiczenia.

Celem ćwiczenia jest poznanie:

- budowy systemu przerwań mikrokontrolera 8051,
- mechanizmu zgłaszania i obsługi przerwań,
- układów czasowo-licznikowych.

2. System przerwań mikrokontrolerów 8051.

W mikrokontrolerach z rodziny 8051 każdemu z przerwań jest przyporządkowany stały adres
procedury obsługi przerwania. Adresy procedur są umieszczone na początku przestrzeni pamięci
programu według następującego porządku:

Źródło przerwania

Adres

Przerwanie zewnętrzne INT0

03h

Przerwanie timera T0

0Bh

Przerwanie zewnętrzne INT1

13h

Przerwanie timera T1

1Bh

Przerwanie portu szeregowego

23h

Przerwanie timera T2 (tylko 8052)

2Bh

Przyjęcie przerwania jest możliwe jeśli jest ono odblokowane. Do sterowania włączaniem i
wyłączaniem przerwań służy rejestr maski IE. Jest on dostępny w trybie bitowym więc można
włączać wybrane przerwania instrukcją SETB (wpisanie jedynki) i wyłączać instrukcją CLR
(wyzerowanie bitu). Najstarszy bit rejestru IE służy do włączania lub wyłączania całego systemu
przerwań. W razie jednoczesnego zgłoszenia kilku przerwań obsługiwane są one w kolejności
priorytetów. Najwyższy priorytet ma przerwanie zewnętrzne INT0, najniższy przerwanie timera T2.
Dodatkowy rejestr oznaczony IP służy do przeniesienia przerwań na wyższy poziom priorytetu.
Przerwanie, które ma w tym rejestrze wpisaną jedynkę, ustawione jest na wyższy poziom priorytetu,
co oznacza że w trakcie jego obsługi nie może być przyjęte żadne inne przerwanie. Nazwy
poszczególnych bitów w rejestrach IE oraz IP wraz z ich przypisaniem do poszczególnych przerwań
przedstawiono w poniższej tabeli:

Źródło przerwania

Numer bitu

Bit w rejestrze IE

Bit w rejestrze IP

Przerwanie zewnętrzne INT0

0

EX0

PX0

Przerwanie timera T0

1

ET0

PT0

Przerwanie zewnętrzne INT1

2

EX1

PX1

Przerwanie timera T1

3

ET1

PT1

Przerwanie portu szeregowego

4

ES

PS

Przerwanie timera T2 (tylko 8052)

5

ET2

PT2

6

-

-

Cały system przerwań

7

EA

-

background image

3. Zgłaszanie i obsługa przerwań.

Przerwania mogą być zgłaszane sprzętowo po wystąpieniu zdarzenia związanego z urządzeniem,
którego dotyczy przerwanie, a więc:

pojawienie się opadającego zbocza na wejściu przerwania zewnętrznego INT0 lub INT1,

przepełnienie licznika T0, T1 lub T2,

zakończenie wysyłania bajtu lub odebranie bajtu łączem szeregowym.

Sprzętowe zgłoszenie przerwania powoduje ustawienie znacznika zgłaszanego przerwania.
Przerwania mogą być także zgłaszne programowo poprzez ustawienie wybranego znacznika. Część
z tych znaczników jest automatycznie zerowanych po przyjęciu przerwania. Nie są zerowane
znaczniki RI, TI odpowiedzialne za port szeregowy oraz TF2 i EXF2 związane z licznikiem T2.
Znaczniki te należy wyzerować w procedurze obsługi przerwania.
Przy zgłaszaniu przerwania na stos odkładany jest wyłącznie adres powrotu, wszelkie używane
rejestry (w tym także rejestr znaczników) należy odłożyć na stos w procedurze obsługi. Powrót z
procedury powinien następować instrukcją RETI.

4. Układy czasowo-licznikowe T0 i T1.

Układy czasowo-licznikowe T0 i T1 służą do zliczania impulsów zewnętrznych podawanych na
wejścia T0 i T1 lub do odmierzania czasu na podstawie impulsów z zegara systemowego. Układy te
mogą pracować w czterech trybach:

tryb 0 – licznik trzynastobitowy,

tryb 1 – licznik szesnastobitowy,

tryb 2 – licznik ośmiobitowy z automatycznym ładowaniem wartości początkowej,

tryb 3 – tylko licznik T0 – dwa liczniki ośmiobitowe.

Do sterowania pracą liczników służą dwa słowa sterujące: TMOD i TCON (część bitów w rejestrze
TCON służy do sterowania przerwaniami).

Numer bitu

TMOD

Znaczenie bitu

TCON

Znaczenie bitu

0

M0

Tryb pracy T0

IT0

INT0: 0-poziomem 1-zboczem

1

M1

Tryb pracy T0

IE0

Znacznik przerwania INT0

2

C/T

Licznik/czasomierz T0

IT1

INT1: 0-poziomem 1-zboczem

3

GATE

Bramkowanie T0

IE1

Znacznik przerwania INT1

4

M0

Tryb pracy T1

TR0

Włącznik licznika T0

5

M1

Tryb pracy T2

TF0

Znacznik przepełnienia T0

6

C/T

Licznik/czasomierz T1

TR1

Włącznik licznika T1

7

GATE

Bramkowanie T1

TF1

Znacznik przepełnienia T1

5. Przebieg ćwiczenia laboratoryjnego.

Należy przeanalizować dwa programy:

program zmieniający cyklicznie co 1 sek. stan diody TEST,

program obsługi multipleksowanego wyświetlacza LED.

W obu programach odmierzanie niezbędnych przedziałów czasowych odbywa się z wykorzystaniem
układów czasowo-licznikowych zgłaszających przerwanie okresowe.


Wyszukiwarka

Podobne podstrony:
IE RS lab 11 solutions
lab 11 4 5
Lab 11
lab 11 7 2
lab 11 2 3a
CCNA1 lab 11 2 4 pl
CCNA2 lab 11 2 3b pl
CCNA2 lab 11 2 2b pl
AK D Lab 1
lab 11 3 3
lab 11 1 5 1
Lab 11 - Oznaczenie modułu jednostronnego ściskania skał, skaly11, WYDZIAŁ GÓRNICZY
lab 11 2 3c
Lab 11 - Oznaczenie modułu jednostronnego ściskania skał, jed.ścisk.11, Nr ?wiczenia_
Lab.11, lab2 pierwszastrona, I TD
CCNA2 lab 11 2 3c pl

więcej podobnych podstron