15 Instalowanie sterowników i regulatorów mikroprocesorowych

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”



MINISTERSTWO EDUKACJI

NARODOWEJ






Danuta Pawełczyk








Instalowanie sterowników i regulatorów mikroprocesorowych

725[01].Z3.02









Poradnik dla ucznia











Wydawca

Instytut Technologii Eksploatacji – Państwowy Instytut Badawczy
Radom 2007

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

1

Recenzenci:
mgr inż. Zbigniew Miszczak
mgr inż. Anna Tapolska



Opracowanie redakcyjne:
mgr inż. Danuta Pawełczyk



Konsultacja:
mgr inż. Gabriel Poloczek









Poradnik stanowi obudowę dydaktyczną programu jednostki modułowej 725[01].Z3

.

02

„Instalowanie sterowników i regulatorów mikroprocesorowych”,

zawartego w modułowym

programie nauczania dla zawodu monter elektronik.




























Wydawca

Instytut Technologii Eksploatacji – Państwowy Instytut Badawczy, Radom 2007

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

2

SPIS TREŚCI

1. Wprowadzenie

3

2. Wymagania wstępne

5

3. Cele kształcenia

6

4. Materiał nauczania

7

4.1. Budowa i zasada działania systemu mikrokomputerowego

7

4.1.1. Materiał nauczania

7

4.1.2. Pytania sprawdzające

13

4.1.3. Ćwiczenia

13

4.1.4. Sprawdzian postępów

17

4.2. Mikrokontrolery 8–bitowe

18

4.2.1. Materiał nauczania

18

4.2.2. Pytania sprawdzające

26

4.2.3. Ćwiczenia

26

4.2.4. Sprawdzian postępów

30

4.3. Dołączanie urządzeń zewnętrznych

31

4.3.1. Materiał nauczania

31

4.3.2. Pytania sprawdzające

35

4.3.3. Ćwiczenia

35

4.3.4. Sprawdzian postępów

37

4.4. Instalowanie, uruchamianie i obsługa sterowników mikroprocesorowych

38

4.4.1. Materiał nauczania

38

4.4.2. Pytania sprawdzające

41

4.4.3. Ćwiczenia

41

4.4.4. Sprawdzian postępów

44

5. Sprawdzian osiągnięć

45

6. Literatura

51

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

3

1. WPROWADZENIE

Poradnik będzie Ci pomocny w przyswajaniu wiedzy z zakresu instalowania sterowników

i regulatorów mikroprocesorowych.

W poradniku zamieszczono:

wymagania wstępne – wykaz umiejętności, jakie powinieneś mieć już ukształtowane,

abyś bez problemów mógł korzystać z poradnika,

cele kształcenia– wykaz umiejętności, jakie ukształtujesz podczas pracy z poradnikiem,

materiał nauczania – podstawowe wiadomości teoretyczne niezbędne do opanowania
treści jednostki modułowej,

zestaw pytań przydatny do sprawdzenia, czy już opanowałeś treści zawarte
w rozdziałach,

ćwiczenia, które pomogą Ci zweryfikować wiadomości teoretyczne oraz ukształtować
umiejętności praktyczne,

sprawdzian postępów,

sprawdzian osiągnięć – przykładowy zestaw zadań i pytań. Pozytywny wynik
sprawdzianu potwierdzi, że dobrze pracowałeś podczas zajęć i że nabyłeś wiedzę
i umiejętności z zakresu tej jednostki modułowej,

literaturę uzupełniającą.
Z rozdziałem „Pytania sprawdzające” możesz zapoznać się:

przed przystąpieniem do rozdziału „Materiał nauczania” – poznając wymagania
wynikające z zawodu, a po przyswojeniu wskazanych treści, odpowiadając na te pytania
sprawdzisz stan swojej gotowości do wykonywania ćwiczeń,

po opanowaniu rozdziału „Materiał nauczania”, by sprawdzić stan swojej wiedzy, która
będzie Ci potrzebna do wykonywania ćwiczeń.

Kolejny etap to wykonywanie ćwiczeń, których celem jest uzupełnienie i utrwalenie

wiadomości z zakresu badania układów mikroprocesorowych i ich montażu.

Wykonując ćwiczenia przedstawione w poradniku lub zaproponowane przez nauczyciela,

będziesz poznawał budowę systemów mikroprocesorowych, rodziny mikrokontrolerów
8–bitowych, sposób dołączania i programowania urządzeń zewnętrznych, a także przykłady
zastosowania sterowników i regulatorów mikroprocesorowych.

Po wykonaniu zaplanowanych ćwiczeń, sprawdź poziom swoich postępów wykonując

„Sprawdzian postępów”.

Odpowiedzi Nie wskazują luki w Twojej wiedzy, informują Cię również, jakich

zagadnień jeszcze dobrze nie poznałeś. Oznacza to także powrót do treści, które nie są
dostatecznie opanowane.

Poznanie przez Ciebie wszystkich lub określonej części wiadomości będzie stanowiło dla

nauczyciela podstawę przeprowadzenia sprawdzianu poziomu przyswojonych wiadomości
i ukształtowanych umiejętności. W tym celu nauczyciel może posłużyć się zadaniami
testowymi.

W poradniku jest zamieszczony sprawdzian osiągnięć, który zawiera przykład takiego

testu oraz instrukcję, w której omówiono tok postępowania podczas przeprowadzania
sprawdzianu i przykładową kartę odpowiedzi, w której, w przeznaczonych miejscach zakreśl
właściwe odpowiedzi spośród zaproponowanych.

Bezpieczeństwo i higiena pracy

W czasie pobytu w pracowni musisz przestrzegać regulaminów, przepisów

bezpieczeństwa i higieny pracy oraz instrukcji przeciwpożarowych, wynikających z rodzaju
wykonywanych prac. Przepisy te poznasz podczas trwania nauki.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

4

725[01].Z3.01

Instalowanie urządzeń automatyki i obsługa

prostych układów automatycznej

regulacji

725[01].Z3.02

Instalowanie sterowników i regulatorów

mikroprocesorowych

725[01].Z3.03

Instalowanie urządzeń elektronicznych

powszechnego użytku

725[01].Z3

Instalacja urządzeń elektronicznych





















Schemat układu jednostek modułowych

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

5

2. WYMAGANIA WSTĘPNE

Przystępując do realizacji programu jednostki modułowej powinieneś umieć:

rozróżniać elementy i podzespoły elektroniczne na podstawie oznaczeń i wyglądu,

montować elementy elektroniczne,

uruchamiać i testować proste układy cyfrowe i analogowe,

objaśniać budowę i działanie podstawowych układów cyfrowych i analogowych,

korzystać z różnych źródeł informacji,

korzystać z jednostek układu SI,

stosować przepisy bezpieczeństwa i higieny pracy, ochrony przeciwpożarowej
i środowiska.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

6

3. CELE KSZTAŁCENIA

W wyniku realizacji programu jednostki modułowej powinieneś umieć:

odczytać instrukcję urządzenia mikroprocesorowego,

rozpoznać na schematach montażowych elementy mikroprocesorowe,

rozpoznać na podstawie wyglądu elementy układu mikroprocesorowego,

wyjaśnić budowę systemu mikroprocesorowego,

zidentyfikować na schematach montażowych i ideowych mikroprocesory, pamięci,
elementy we/wy, magistrale, interfejsy, mikrokontrolery,

wyjaśnić rolę poszczególnych elementów komputera,

rozpoznać funkcje i zastosowanie urządzeń zewnętrznych komputera,

zmontować układy typowych sterowników mikroprocesorowych,

zaprogramować pamięci i mikrokontrolery,

przeanalizować proste programy w asemblerze,

wykonać podstawowe prace montażowe przy sprzęcie komputerowym,

dobrać narzędzia do montażu urządzenia, sterownika lub regulatora mikroprocesorowego,

sporządzić wykaz narzędzi do montażu,

zamontować urządzenie zgodnie z instrukcją montażową,

sprawdzić poprawność montażu,

sporządzić wstępną kalkulację kosztów wykonania prac montażowych,

sprawdzić poprawność prac montażowych, ocenić jakość i estetykę wykonanej pracy,

zademonstrować poprawność wykonywanego montażu,

sprawdzić funkcjonowanie zainstalowanych urządzeń,

przygotować stanowisko pracy zgodnie z wymaganiami ergonomii, zasadami
bezpieczeństwa i higieny pracy, ochrony przeciwpożarowej oraz ochrony środowiska,

zastosować przepisy bezpieczeństwa i higieny pracy, ochrony przeciwpożarowej
i ochrony środowiska, obowiązujące podczas montażu urządzeń mikroprocesorowych,

przewidzieć zagrożenia występujące podczas montażu urządzeń mikroprocesorowych.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

7

4. MATERIAŁ NAUCZANIA


4.1. Budowa i zasada działania systemu mikrokomputerowego


4.1.1. Materiał nauczania

Systemy mikroprocesorowe służą do przetwarzania informacji. Przetwarzanie

informacji polega na dostarczeniu do systemu danych, które poddawane są określonym
działaniom dając wyniki. Wynikami mogą być sygnały sterujące pracą maszyn, obrazy, teksty
itp. Jedną z ważniejszych części tego systemu jest procesor, który przetwarza informacje,
wykonując na niej elementarne operacje zwane instrukcjami (bądź rozkazami). Ciąg takich
instrukcji realizujący konkretne zadanie przetwarzania informacji nazywamy programem.
Tak więc do systemu mikroprocesorowego musimy dostarczyć dane wejściowe, program
lub zestaw programów, aby po przetworzeniu otrzymać wynik.

system

mikroprocesorowy

dane

p

rog

ram

wyniki

Rys. 1. System mikroprocesorowy

Typowy system mikroprocesorowy składa się z następujących części:

mikroprocesora,

pamięci danych RAM,

pamięci programu ROM,

układów wejścia/wyjścia czyli interfejsów,

układów sterujących przepływem informacji między tymi elementami: magistrali danych,
magistrali adresowej i sygnałów sterujących.
Systemy mikroprocesorowe budowane są w oparciu o architekturę von Neumanna

(np. mikrokontrolery rodziny ’51) lub architekturę Harvardzką (np. mikrokontrolery PIC lub
AVR). Rysunek 2 pokazuje oba rozwiązania:

8

pamięć
programu


pamięć
danych


12
14
16

8



pamięć
danych

jednostka

centralna

CPU



pamięć
programu

jednostka

centralna

CPU

a)

b)

Rys. 2.

Architektury systemów mikroprocesorowych: a) Harvardzka, b) von Neumanna

Mikroprocesor pełniący funkcję jednostki centralnej (CPU) umożliwia wykonywanie

operacji przetwarzania danych poprzez realizację programu zapisanego w pamięci programu.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

8

Mikroprocesor składa się z układu sterowania oraz jednostki arytmetyczno-logicznej

wraz z rejestrami roboczymi.
Zadaniem układu sterowania jest pobieranie rozkazów z pamięci programu, dekodowanie ich
oraz wystawianie odpowiednich sygnałów sterujących (wewnętrznych i zewnętrznych) w celu
wykonania rozkazów.

Jednostka arytmetyczno-logiczna służy do wykonywania operacji arytmetycznych

lub logicznych na liczbach binarnych (czasem również dziesiętnych). Z jednostką
arytmetyczno-logiczną związany jest rejestr wskaźników (flagowy), w którym ustawiane są
znaczniki wyniku wykonanej operacji (np. flaga znaku, zera, przeniesienia).

Pamięć programu – pamięć nieulotna, przechowuje program w języku maszynowym.

Najczęściej jest wykonywana jako pamięć typu:

ROM – programowana przez producenta

PROM – programowana jednorazowo przez użytkownika,

EPROM, EEPROM – do wielokrotnego programowania przez użytkownika.
Pamięć danych – pamięć typu odczyt/zapis, służy do przechowywania danych podczas

realizacji programu.

Układy

wejścia/wyjścia

umożliwiają

prawidłową

komunikacje

między

mikroprocesorem a otoczeniem – urządzeniami zewnętrznymi. Zadaniem interfejsów
(układów wejścia/wyjścia) jest zapewnienie odpowiedniej postaci danej (np. zamiana
z postaci szeregowej na równoległą i odwrotnie) oraz dopasowanie czasowe wymiany danej
(np. zapamiętanie danej do czasu, kiedy odbierze ją urządzenie zewnętrzne). Układy wejścia/
wyjścia są dołączane do jednostki centralnej za pośrednictwem magistral (podobnie jak
pamięć danych).

Magistrala danych – zespół linii, którymi przesyłane są liczby binarne (dane, kody

rozkazów, słowa sterujące i statusowe).

Magistrala adresowa – zespół linii, którymi procesor adresuje poszczególne komórki

pamięci programu, danych lub rejestry układów wejścia/wyjścia, ilość linii magistrali
adresowej jest równa długości adresu, n–bitowy adres pozwala na zaadresowanie
2

n

–komórek pamięci np. 16 bitowy adres pozwala zaadresować 2

16

= 65536 (64k) komórek

pamięci.

Magistrala sterująca – zespół linii, którymi wymieniane są sygnały sterujące.
Mikroprocesor zawiera następujące podzespoły:

jednostkę arytmetyczno-logiczną ALU (arithmetic and logic unit),

akumulator A (accumulator),

licznik rozkazów PC (program counter),

zestaw rejestrów roboczych R

i

(general purpose register),

rejestr rozkazów IR (instruction register),

wskaźnik stosu SP (stack pointer),

układ sterowania CU (control unit).

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

9

MAG. ADRESOWA

MAGISTRALA DANYCH

A

ALU

REJ. FLAG.

REJESTRY
ROBOCZE

SP

PC

IR

CU

SYGN
STER.

Rys. 3. Schemat blokowy mikroprocesora

Jednostka

arytmetyczno-logiczna

wykonuje

podstawowe

działania

logiczne

i arytmetyczne na słowach takich jak suma logiczna, iloczyn logiczny, suma modulo 2,
negacja, dodawanie i odejmowanie arytmetyczne, porównywanie, rotacja. Wykonanie
operacji arytmetycznej lub logicznej powoduje ustawienie znaczników (flag) w rejestrze
wskaźników. Najczęściej stosowane flagi to:

przeniesienia CY (przyjmuje wartość 1 jeżeli wystąpiło przeniesienie z najbardziej
znaczącej pozycji),

przeniesienia połówkowego AC (przyjmuje wartość 1 jeżeli wystąpiło przeniesienie
z bitu 3 na 4 – wykorzystywany w operacjach na liczbach BCD),

zera Z (przyjmuje wartość 1 jeżeli wynik operacji jest równy 0),

znaku S (przyjmuje wartość 1 jeżeli wynik operacji jest ujemny),

parzystości P (przyjmuje wartość 1 jeżeli liczba jedynek w wyniku operacji jest
nieparzysta).
Akumulator – rejestr związany z jednostką arytmetyczną – z akumulatora jest domyślnie

pobierany jeden z argumentów operacji dwuargumentowej, w akumulatorze jest umieszczany
wynik operacji. Akumulator jest również wykorzystywany podczas komunikacji
z urządzeniami zewnętrznymi.

Rejestry robocze mogą pełnić różną role, w zależności od realizowanego rozkazu. Mogą

służyć do przechowywania danych lub adresów. Na rejestrach można wykonywać niektóre
operacje wynikające z listy rozkazów.

Licznik rozkazów PC służy do adresowania pamięci programu tzn. wskazuje adres

komórki pamięci, z której należy pobrać rozkaz. W czasie realizacji programu licznik
zwiększa swoją zawartość po pobraniu każdego rozkazu. W przypadku skoku lub wywołania
podprogramu do licznika rozkazów wpisywana jest wartość odpowiadająca adresowi skoku.

Rejestr rozkazów IR służy do przechowywania pobranego z pamięci programu kodu

rozkazu.

Układ sterowania CU dekoduje zawartość rejestru rozkazów i generuje sygnały

sterujące zapewniające realizację pobranego rozkazu.

Wskaźnik stosu służy do adresowania wydzielonego obszaru pamięci danych, w którym

zapisywane są adresy i dane zgodnie z regułą LIFO (last in first out) tzn. kolejność odczytu
słowa jest odwrotna do kolejności ich zapisywania. Tak jest zorganizowana programowa

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

10

realizacja stosu, niektóre mikroprocesory posiadają stos sprzętowy. Stos i wskaźnik stosu
umożliwiają przejście do podprogramu, a po jego zakończeniu powrót do programu
głównego.

Mikroprocesory są układami sekwencyjnymi synchronicznymi, dlatego też z układem

sterowania musi współpracować generator impulsów zegarowych.

Rozkazy są realizowane w cyklach rozkazowych. Każdy cykl maszynowy składa się

z cykli maszynowych. Cykl maszynowy to część cyklu rozkazowego związana z odwołaniem
się (w celu odczytu lub zapisu) do pamięci lub układu wejścia/wyjścia. Cykl maszynowy
składa się z określonej liczby taktów zegarowych.

Każdy cykl rozkazowy można podzielić na dwie fazy:

faza pobrania rozkazu z pamięci programu,

faza wykonania rozkazu, która ma inny przebieg dla każdego rozkazu.
Faza pobrania rozkazu jest jednakowa dla wszystkich rozkazów. Polega na pobraniu

kodu rozkazu z pamięci programu, z komórki której adres wskazuje zawartość licznika
rozkazów PC. Kod pobranego rozkazu jest umieszczany w rejestrze rozkazów IR, licznik
rozkazów zostaje zwiększony, tak aby wskazywał następny rozkaz.

Faza wykonania rozkazu ma różny przebieg, rozpoczyna się w chwili umieszczenia

rozkazu w rejestrze rozkazów IR. Układ sterowania CU na podstawie zdekodowanego stanu
rejestru generuje odpowiednią sekwencję sygnałów sterujących zapewniających prawidłową
realizację rozkazu.

W przypadku systemów mikroprocesorowych opartych o architekturę von Neumana faza

pobrania (P) i faza wykonania (W) odbywają się przemiennie tzn:

P

W

P

W

….

P

W

rozkaz 1

rozkaz 2

rozkaz n

Rys. 4. Kolejne fazy wykonana rozkazów w systemie opartym o architekturę von Neumana

Zarówno rozkazy jak i argumenty potrzebne do ich realizacji są pobierane za

pośrednictwem tej samej magistrali danych.

W przypadku systemów mikroprocesorowych opartych o architekturę Harvardzką

stosowany jest potokowy system pracy (pipeline) tzn. w czasie fazy wykonania rozkazu może
być pobrany następny rozkaz (rysunek 5). Dzieje się to dzięki rozdzieleniu magistrali
komunikującej się z pamięcią programu (pobranie rozkazu) od magistrali komunikującej się
z pamięcią danych oraz układami wejścia/wyjścia (wykonanie rozkazu). Wszystkie rozkazy
wraz z argumentami są jednosłowowe (tzn. pod jednym adresem w pamięci programu
znajduje się cały rozkaz). W zależności od typu procesora długość słowa rozkazowego może
wynosić 12, 14 lub 16 bitów.

P

W

rozkaz 1

P

W

rozkaz 2

……

P

W

rozkaz n

Rys. 5. Kolejne fazy wykonana rozkazów w systemie opartym o architekturę Harvardzką


Podczas realizacji programu argumenty mogą być pobierane/zapisywane z/do rejestrów

roboczych, pamięci danych, pamięci programu (tylko odczytywane) lub układów
wejścia/wyjścia. Decyduje o tym użyty sposób adresacji. W mikroprocesorach stosowane są:

adresacja natychmiastowa – rozkaz zawiera kod rozkazu i argument (tzn. argument jest
przechowywany wraz z kodem rozkazu w pamięci programu),

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

11

adresacja bezpośrednia – rozkaz zawiera kod rozkazu i adres argumentu w pamięci
danych,

adresacja rejestrowa – rozkaz zawiera kod rozkazu i nazwę rejestru, w którym
przechowywany jest argument,

adresacja rejestrowa pośrednia – rozkaz zawiera kod rozkazu i nazwę rejestru, w którym
przechowywany jest adres argumentu w pamięci danych.

Komunikacja mikroprocesora z otoczeniem:
Zastosowanie systemu mikroprocesorowego do realizacji konkretnych zadań wymaga

zapewnienia wymiany danych między mikroprocesorem i urządzeniami zewnętrznymi
(klawiatura, wyświetlacz, czujniki, układy wykonawcze), a w niektórych przypadkach także
między pamięcią danych a urządzeniami zewnętrznymi.

Układy wejścia/wyjścia pośredniczą w wymianie informacji między mikroprocesorem

a urządzeniami zewnętrznymi. Układy wejścia/wyjścia można podzielić na:

proste układy wejścia/wyjścia, w których podstawowym elementem jest rejestr danych
lub bramka trójstanowa,

programowalne, uniwersalne układy wejścia/wyjścia, w których oprócz rejestrów danych
występują rejestry sterujące pozwalające na ustalenie określonego trybu pracy układu,
rejestr statusowy, przechowujący informację o stanie układu oraz wewnętrzny układ
sterowania,

specjalizowane układy wejścia/wyjścia służące do współpracy z konkretnymi
urządzeniami.
Komunikacja mikroprocesora z otoczeniem odbywa się za pośrednictwem magistral.

Układ wejścia/wyjścia jest wybierany odpowiednim adresem.

Wyróżnia się dwie metody adresowania pamięci i układów wejścia/wyjścia:

adresowanie jednolite pamięci i układów wejścia/wyjścia (układy wejścia/wyjścia
współadresowalne z pamięcią),

adresowanie rozdzielone pamięci i układów wejścia/wyjścia.
Adresowanie jednolite (wspólne) polega na dołączaniu układów we/wy w taki sam

sposób jak modułów pamięci. Pamięć i układy we/wy nie są rozróżniane przez procesor
i znajdują się w tej samej przestrzeni adresowej. Te same rozkazy i te same sygnały sterujące
(np. MEMR - odczyt z pamięci, MEMW – zapis do pamięci, I/OR – odczyt z układu we/wy
i I/OW - zapis do układu we/wy) służą do komunikacji z pamięcią i z układami we/wy.
Dlatego układy we/wy muszą mieć przydzielone inne adresy niż komórki pamięci.

a)

b)

Rys. 6. Jednolite adresowanie pamięci i układów wejścia/ wyjścia a)sygnały sterujące mikroprocesora, b) mapa

pamięci [2, s. 39]

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

12

Sygnały sterujące odczytu pamięci MEMR i zapisu pamięci MEMW są bramkowane

sygnałem I/O z dekodera adresów wybierającego odpowiedni obszar pamięci dla układów

we/wy i tworzą sygnały sterujące zapisem danych I/OW i odczytu danych I/OR .

Adresowanie rozdzielone polega na tym, że pamięć i układy we/wy mają odrębne

przestrzenie adresowe – adresy komórek pamięci i układów we/wy mogą być takie same.
Lista rozkazów zawiera odrębną grupę rozkazów dotyczącą komunikacji z pamięcią,
a odrębną do komunikacji z układami wejścia/wyjścia. Mikroprocesor bezpośrednio wystawia

sygnały: MEMR , MEMW , I/OW oraz I/OR .

a)

b)

Rys. 7. Rozdzielone adresowanie pamięci i układów wejścia/wyjścia: a) sygnały sterujące mikroprocesora,

b) mapa pamięci [2, s. 39]

Sposoby komunikacji między mikroprocesorem a otoczeniem:

obsługa programowa (pooling),

przerwania (interrupt),

bezpośredni dostęp do pamięci (Direct Memory Access).

Obsługa programowa polega na przeglądaniu przez mikroprocesor stanów

poszczególnych układów we/wy. Mikroprocesor w sposób programowy pobiera zawartości
rejestrów statusowych poszczególnych układów we/wy, sprawdza stan odpowiednich bitów
i na ich podstawie podejmuje decyzje dotyczące określonych działań programowych
dotyczących obsługi urządzenia. Tego typu komunikacja jest bardzo prosta w realizacji
sprzętowej, jej wadą jest fakt, że odbywa się w ściśle określonym momencie realizacji
programu. Nie może więc być stosowana do obsługi urządzeń pracujących w czasie
rzeczywistym, gdzie konieczna jest natychmiastowa obsługa dołączonych urządzeń.

Obsługa przerwań umożliwia praktycznie natychmiastową reakcję na żądanie obsługi

przez urządzenie zewnętrzne. W momencie przyjęcia zgłoszenia żądania obsługi przez
urządzenie procesor zawiesza realizację programu na czas obsługi urządzenia. Układ we/wy
generuje sygnał żądania przerwania INT, mikroprocesor sprawdza stan tego sygnału pod
koniec realizacji każdego rozkazu. Po wykryciu przerwania mikroprocesor:

zapamiętuje na stosie stan licznika rozkazów (adres rozkazu, który byłby realizowany,
gdyby przerwanie nie nadeszło),

wpisuje do licznika rozkazów adres podprogramu obsługi przerwania (wektor
przerwania),

realizuje podprogram obsługi przerwania,

po zakończeniu obsługi przerwania przywraca ze stosu stan licznika rozkazów i wraca
do realizacji programu głównego.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

13

Jeżeli zgłasza się więcej niż jedno przerwanie układ przerwań rozstrzyga, które

z przerwań ma być obsłużone na podstawie priorytetu.

Układ przerwań może być jedno– lub wielopoziomowy. W jednopoziomowym układzie

przerwań nie ma możliwości zawieszenia realizowanego podprogramu obsługi przerwania
przez żadne inne przerwanie (niezależnie od priorytetu). W wielopoziomowym układzie
przerwań, przerwanie o wyższym poziomie może przerwać podprogram obsługi przerwania
o niższym poziomie. Podprogram obsługi przerwania o niższym poziomie zostanie
dokończony po zrealizowaniu obsługi przerwania o wyższym poziomie.

Przerwanie może zostać przyjęte do obsługi, jeżeli:

procesor zakończył realizację rozkazu,

zgłaszające się przerwanie jest odblokowane,

nie zgłasza się inne przerwanie o priorytecie wyższym,

nie

jest

realizowana

obsługa

innego

przerwania

(w

układzie

przerwań

jednopoziomowym) lub przerwania o równym lub wyższym poziomie (w układzie
przerwań wielopoziomowym).
Tryb bezpośredniego dostępu do pamięci DMA jest stosowany podczas wymiany

danych między pamięcią a urządzeniami zewnętrznymi bez udziału mikroprocesora. Dzięki
temu możliwe jest szybsze przesyłanie bloków danych. Przesyłanie odbywa się pod kontrolą
sterownika DMA, mikroprocesor w tym czasie nie ma dostępu do magistral, nie realizuje
więc swojego programu. Przed rozpoczęciem transmisji DMA sterownik musi zostać
zaprogramowany przez umieszczenie w jego rejestrach sterujących informacji dotyczących
kierunku transmisji, ilości przesyłanych słów i adresu obszaru danych. Po zakończeniu
przesyłu następuje powrót do realizowanego programu.

4.1.2. Pytania sprawdzające

Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń.

1. Z jakich elementów składa się system mikroprocesorowy?
2. Jakie rodzaje architektury są stosowane w systemach mikroprocesorowych, czym się różnią?
3. Jakie jest przeznaczenie poszczególnych bloków?
4. Z jakich elementów składa się mikroprocesor?
5. Co to jest cykl rozkazowy, cykl maszynowy, takt zegarowy?
6. W jakich fazach odbywa się cykl rozkazowy?
7. Do czego służy licznik rozkazów, kiedy zmieniana jest jego zawartość?
8. Co to jest rejestr flagowy (wskaźników), co oznaczają poszczególne flagi?
9. Jakie są metody adresacji stosowane w mikrokontrolerach?
10. Jaką rolę pełnią układy wejścia/wyjścia?
11. Jakie są sposoby współpracy mikroprocesora z otoczeniem?
12. Na czym polega obsługa programowa układów we/wy?
13. Na czym polega obsługa układów we/wy z przerwaniami?

4.1.3. Ćwiczenia


Ćwiczenie 1

Połącz elementy z lewej strony z ich opisem po prawej stronie. Przeanalizuj zadanie dla

mikroprocesora ośmiobitowego (8–bitowa magistrala danych) z 16 bitową magistralą adresową.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

14

akumulator

16–bitowy

rejestr

adresowy

pamięci

programu

rejestr roboczy

8–bitowa magistrala dwukierunkowa

licznik rozkazów

wydzielony fragment pamięci danych

magistrala danych

8–bitowa magistrala jednokierunkowa

wskaźnik stosu

8–bitowy rejestr, w którym umieszczany
jest wynik operacji arytm–log

adresacja natychmiastowa

8–bitowy rejestr ogólnego przeznaczenia

stos

argument rozkazu jest pobierany z pamięci
danych

magistrala adresowa

argument rozkazu jest pobierany z pamięci
programu

adresacja rejestrowa pośrednia

16–bitowy

rejestr

adresowy

pamięci

danych

16–bitowa jednokierunkowa magistrala


Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeanalizować informacje zawarte w rozdziale 4.1 poradnika,
2) dopasować opisy do odpowiednich elementów systemu mikroprocesorowego lub metod

adresacji (jeden opis pozostanie niewykorzystany),

3) zaprezentować wykonane ćwiczenie,
4) dokonać oceny poprawności wykonanego ćwiczenia.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

15

Wyposażenie stanowiska pracy:

poradnik dla ucznia,

zeszyt, przybory do pisania,

literatura wskazana przez nauczyciela.


Ćwiczenie 2

Określ, które zdania są prawdziwe, a które fałszywe:

Zdanie

Prawda

Fałsz

Adresacja jednolita pozwala na zaadresowanie większej przestrzeni
adresowej niż adresacja rozdzielona.

Przy zastosowaniu adresacji jednolitej te same rozkazy odnoszą się
do pamięci i układów wejścia/wyjścia.

Układ wejścia/wyjścia umożliwia dopasowanie czasowe między
szybszym

mikroprocesorem,

a

wolniejszym

urządzeniem

wejścia/wyjścia.

W przypadku jednoczesnego zgłoszenia się dwóch zgłoszeń przerwań
do obsługi zostanie przyjęte przerwanie o wyższym poziomie.

Obsługa programowa nie pozwala na ustalanie priorytetów
przerwań.

Po zakończeniu obsługi przerwania program główny jest
wykonywany od rozkazu, w czasie którego nadeszło przerwanie.

Przerwanie może być przyjęte do obsługi pod warunkiem
zakończenia realizowanego cyklu rozkazowego.

Podczas bezpośredniego dostępu do pamięci dane są przesyłane
z mikroprocesora do pamięci danych.


Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeczytać

określone

treści

z

poradnika

dotyczące

sposobów

komunikacji

mikroprocesora z otoczeniem,

2) przeanalizować zdania decydując czy są prawdziwe czy fałszywe,
3) zaprezentować wykonane ćwiczenie.


Wyposażenie stanowiska pracy:

poradnik dla ucznia,

zeszyt, przybory do pisania,

literatura wskazana przez nauczyciela.

Ćwiczenie 3

Przedstaw na wykresie kolejność obsługi przerwań w jednopoziomowym układzie

przerwań. Wszystkie przerwania są odblokowane, wszystkie mogą zostać przyjęte do obsługi.
Przerwanie INT0 ma najwyższy priorytet, a INT4 najniższy. Czas trwania każdego
podprogramu obsługi przerwania – 4 jednostki.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

16

pr

ior

y

tet

INT0

INT1

INT2

INT3

INT4

pr. gł.

t

INT2

INT4, INT1

INT0

INT3

Na tym samym wykresie innym kolorem narysuj kolejność obsługi przerwań

w wielopoziomowym układzie przerwań, przyjmując, że przerwanie INT0 ma poziom
najwyższy i dalej każde kolejne ma poziom niższy, INT4 ma poziom najniższy.


Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) rozstrzygnąć, które ze zgłoszeń ma w określonej chwili najwyższy priorytet

(w przypadku jednopoziomowego układu przerwań),

2) zdecydować, czy możliwe jest przejście do obsługi przerwania podczas trwania obsługi

realizowanego podprogramu (w przypadku wielopoziomowego układu przerwań),

3) narysować przebiegi kolejności obsługi przerwań,
4) zaprezentować wykonane ćwiczenie,
5) dokonać oceny poprawności i estetyki wykonanego ćwiczenia.


Wyposażenie stanowiska pracy:

poradnik dla ucznia,

arkusz z wykresem,

literatura wskazana przez nauczyciela.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

17

4.1.4. Sprawdzian postępów


Czy potrafisz:

Tak

Nie

1) rozpoznać poszczególne elementy systemu mikroprocesorowego na

podstawie schematu blokowego?

2) opisać rolę elementów systemu mikroprocesorowego?
3) nazwać podzespoły mikroprocesora i określić ich funkcję?
4) wyjaśnić z jakich faz składa się cykl rozkazowy?
5) scharakteryzować metody adresacji?
6) przyporządkować metodę adresacji do lokalizacji argumentu?
7) rozróżnić metody adresacji: jednolitą i rozdzieloną?
8) scharakteryzować rolę interfejsów?
9) scharakteryzować sposoby komunikacji mikroprocesora z otoczeniem?

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

18

4.2. Mikrokontrolery 8–bitowe


4.2.1. Materiał nauczania

Mikrokomputerami jednoukładowymi, zwanymi również mikrokontrolerami lub

mikrosterownikami, nazywana jest pewna klasa mikroprocesorów charakteryzująca się tym,
że w jednym układzie scalonym zawarty jest mikroprocesor, pamięć danych, układy we/wy
umożliwiające bezpośrednie dołączenie urządzeń zewnętrznych, układy czasowo licznikowe,
układ przerwań i inne zasoby. W niektórych mikrokontrolerach jest wbudowana pamięć
programu.
Cechy mikrokontrolerów:

przeznaczone głównie do sterowania,

posiadają wejścia/wyjścia cyfrowe,

mogą posiadać dodatkowo wejścia analogowe,

możliwość wykonywania operacji arytmetycznych i logicznych,

możliwość generowania opóźnień czasowych,

możliwość współpracy z zewnętrznymi pamięciami programu i danych,

możliwość współpracy z urządzeniami zewnętrznymi,

możliwość pomiaru wielkości elektrycznych i nieelektrycznych np. temperatury przy
współpracy z odpowiednimi czujnikami,

możliwość gromadzenia danych i ich wymiany z innymi urządzeniami.

Przykłady zastosowań mikrokontrolerów:

sprzęt powszechnego użytku np. odbiorniki radiowe i telewizyjne–programowanie
funkcji, cyfrowe sterowanie parametrami odbiorników, telegazeta,

motoryzacja – sterowanie silników, klimatyzacji, ABS,

aparaty fotograficzne, kamery video, telefony komórkowe,

artykuły gospodarstwa domowego – sterowanie pracą pralek automatycznych, kuchenek
mikrofalowych,

rejestratory danych w różnych urządzeniach,

instalacje alarmowe, zamki szyfrowe i wiele innych.


Rodzina mikrokontrolerów ’51 (na przykładzie 8031)

Parametry:

8–bitowa magistrala danych,

16–bitowa magistrala adresowa,

8–bitowy arytmometr,

128 B wewnętrznej pamięci danych,

dwa 16–bitowe układy czasowo–licznikowe,

cztery 8–bitowe porty równoległe P0 – P3,

w pełni dupleksowy układ UART przewidziany do transmisji słów o długości 8 lub 9 bitów,

układ przerwań z zewnętrznymi i wewnętrznymi źródłami przerwań,

możliwość dołączenia zewnętrznej pamięci danych,

możliwość dołączenia zewnętrznej pamięci programu,

częstotliwość pracy mikroprocesorów zawiera się w granicach od 1,2 do 20 MHz.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

19

Rys. 8. Mikrokontroler rodziny ‘51 z dołączoną zewnętrzna pamięcią danych i programu [7 ]


Tabela1.
Opis wyprowadzeń

pin

funkcja

P0

8–bitowy, dwukierunkowy port wejścia/wyjścia, który może także pełnić funkcję
młodszej połowy magistrali adresowej (A0–A7) oraz magistrali danych
przy odwołaniach do zewnętrznych układów pamięci lub wejścia–wyjścia,

P1

8–bitowy, dwukierunkowy port wejścia– wyjścia,

P2

8–bitowy, dwukierunkowy port wejścia– wyjścia, który może także pełnić funkcję
starszej połowy magistrali adresowej (bity A8–A15) przy odwołaniach
do zewnętrznych układów pamięci lub wejścia– wyjścia,

P3

8–bitowy, dwukierunkowy port wejścia– wyjścia, którego poszczególne
wyprowadzenia mogą także pełnić funkcje sygnałów sterujących:

RXD

wejście odbiornika portu transmisji szeregowej,

TXD

wyjście nadajnika portu transmisji szeregowej,

INT0 , INT1

wejścia przerwań zewnętrznych,

T0, T1

wejścia zewnętrzne do układu czasowo– licznikowego,

RD

wyjście żądania odczytu z przestrzeni adresowej zewnętrznej pamięci

danych,

WR

wyjście żądania zapisu do przestrzeni adresowej zewnętrznej pamięci

danych,

PSEN

wyjście żądania odczytu z przestrzeni adresowej zewnętrznej pamięci programu.

ALE

wyjście sygnału zegarowego o częstotliwości f

XTAL

/6, używane także jako wyjście

strobujące adres podczas współpracy z zewnętrznymi układami pamięci
lub wejścia–wyjścia.

EA

wejście wymuszające pobieranie kodu rozkazów wyłącznie z zewnętrznej pamięci
programu.

XTAL1,
XTAL2

wejścia służące do podłączenia oscylatora kwarcowego, które mogą być też

wejściami zewnętrznego sygnału taktującego (zależnie od wersji procesora
jest to wejście XTAL1 lub XTAL2).

Przykład systemu mikroprocesorowego zbudowanego w oparciu o mikrokontroler 8051

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

20

Rys. 9. System mikroprocesorowy z mikrokontrolerem 8051 [11]


Rodzina AVR (na przykładzie AT 90S2313)

118 rozkazów wykonywanych głównie w jednym cyklu zegarowym,

2 kB pamięci Flash reprogramowalnej w układzie za pomocą SPI (Serial Interface for
Program Downloading) o trwałości 1000 cykli kasowania/zapisu,

32 ośmiobitowe rejestry robocze,

128 bajtów wewnętrznej pamięci RAM,

128 wewnętrznej pamięci EEPROM o trwałości 100 000 cykli zapisu/kasowania,

15 programowalnych linii wejścia wyjścia,

wyjścia portów o wydajności 20 mA zarówno w stanie wysokim, jak i niskim,
umożliwiające bezpośrednie sterowanie wyświetlaczy LED,

napięcie zasilające V

CC

= 2,7 – 6,0 V / 4 MHz i V

CC

= 4,0 – 6,0 V / 10MHz,

w pełni statyczna budowa umożliwiająca pracę w zakresie 0 –10 MHz,

cykl rozkazowy o długości 100 ns przy 10 MHz,

jeden ośmiobitowy zegar/licznik z oddzielnym preskalerem (wstępnym dzielnikiem),

jeden szesnastobitowy zegar/licznik z oddzielnym preskalerem, układem komparatora
i układem przechwycenia stanu licznika (Capture),

w pełni dwukierunkowy (full–duplex) układ UART przewidziany do transmisji słów
o długości 8 lub 9 bitów,

wybierany 8–, 9– lub 10–bitowy tryb PWM (modulacja szerokości impulsów),

układ przerwań z zewnętrznymi i wewnętrznymi źródłami przerwań,

programowalny układ Watchdog z wbudowanym wewnętrznym oscylatorem,

wbudowany układ komparatora analogowego,

dwa tryby pracy z obniżonym poborem mocy,

programowalne zabezpieczenia oprogramowania.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

21

Rys. 10. Opis wyprowadzeń mikrokontrolera

Rys. 11. Przykładowe mikrokontrolery AVR

AT 90S2313 [1, s. 17]


Tabela 2. Opis wyprowadzeń

pin

funkcja

V

CC

plus zasilania,

GND

masa,

PB0 – ANI0

wejście nieodwracające komparatora,

PB1 – ANI1

wejście odwracające komparatora,

PB3 – OC1

wyjście porównania licznika/timera1

PB5 – MOSI

wejście szeregowe danych trybu programowania i weryfikacji,

PB6 – MISO

wyjście szeregowe danych trybu programowania i weryfikacji,

PB7 – SCK

wejście taktu zegara dla trybu programowania i weryfikacji,

PD0 – RXD

wejście szeregowe układu UART,

PD1 – TXD

wyjście szeregowego układu UART,

PD2 – INT0

wejście przerwania zewnętrznego,

PD3 – INT1

wejście przerwania zewnętrznego,

PD4 – T0

wejście zewnętrznego sygnału zegarowego licznika T0

PD5 – T1

wejście zewnętrznego sygnału zegarowego licznika T1,

PD6 – ICP

wejście przechwytywania zegara T1,

RESET

wejście zerowania mikrokontrolera,

XTAL1

wejście odwracające wzmacniacza oscylatora, służące do dołączenia
kwarcu

XTAL2

wyjście służące do dołączenia rezonatora kwarcowego.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

22

Rys. 12. Schemat blokowy mikrokontrolera AVR 90S2313 [1, s. 14]

Środowisko programowe dzięki któremu możemy zaprogramować mikrokontrolery AVR, jest
dostępne na stronie www.atmel.com pod nazwą AVR Studio.

Rys. 13. Okno programu AVR Studio [8]

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

23

Podczas uruchamiania systemów mikroprocesorowych z mikrokontrolerem AVR można
wykorzystać np. zestaw startowy STK 500.

Rys. 14. Zestaw startowy STK 500 dla mikrokontrolerów AVR


Mikrokontrolery rodziny PIC
Parametry rodziny mikrokontrolerów PIC MidRange MICROCHIP:

procesor typu RISC,

35 instrukcji,

wszystkie rozkazy wykonywane podczas jednego cyklu, za wyjątkiem skoków (2 cykle),

prędkość: zegar maks. 20 MHz, wówczas czas wykonywania jednej instrukcji: 200 ns,

8 K x 14 bit pamięci programu (FLASH),

368 x 8bit pamięci danych (RAM),

256 x 8bit pamięci danych (EEPROM),

14 źródeł przerwań,

8–poziomowy, sprzętowy stos,

możliwość sterowania obniżonym poborem mocy,

licznik Watchdog,

zakres napięć pracy procesora: 2.0 V–5.5 V.


Cechy procesora na przykładzie PIC16F877:

TIMER0: 8–bitowy licznik/timer z 8–bitowym prescalerem,

TIMER1: 16 bitowy licznik/timer z prescalerem,

TIMER2: 8–bitowy licznik/timer z prescalerem i postscalerem,

PulseWidthModulator (PWM),

10–bitowy, 8–kanałowy przetwornik A/C,

synchroniczny port szeregowy (SSP) z SPI (jako master) i I

2

C (jako master lub slave),

uniwersalny synchroniczny/asynchroniczny port szeregowy (USART).

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

24

Rys. 15. Schemat blokowy mikrokontrolera PICI6F877 [3, s. 15]


Rys. 16. Opis wyprowadzeń mikrokontrolera

Rys. 17. Przykładowe mikrokontrolery

PIC16F877 [3, s. 62]

MICROCHIP

Środowisko programowe dzięki któremu możemy zaprogramować mikrokontrolery PIC jest
dostępne na stronie www.microchip.com pod nazwą MPLAB.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

25

Rys. 18. Okno projektu w programie MPLAB [10]


Montaż mikrokontrolerów:

Podczas realizacji jednostki modułowej 725[01].Z1.01 „Wykonywanie montażu

elementów i podzespołów układów elektronicznych” zapoznałeś się z zasadami montażu.

Podczas montażu mikrokontrolerów musisz pamiętać o:
-

stanowisko pracy do montażu powinno zapewniać odpowiednią ilość miejsca z dostępem

do uziemionego gniazdka oraz być dobrze oświetlone, np. biurko czy pusty stół,

-

bardzo dobrym rozwiązaniem jest zastosowanie odpowiednich mat montażowych oraz

opasek na rękę odprowadzających ładunki elektrostatyczne, jeżeli stanowisko pracy nie
jest w nie wyposażone wystarczy przed przystąpieniem do montażu dotknąć metalowego
przedmiotu, np. kaloryfera i w ten sposób odprowadzić zgromadzone ładunki,

-

należy pamiętać o bezpieczeństwie pracy z urządzeniem elektrycznym, niewłaściwe

postępowanie może grozić porażeniem, a nawet śmiercią, kabel zasilający powinien być
odłączony podczas trwania prac,

-

pod mikrokontrolery najlepiej montować podstawki, jeżeli mają być często wymieniane

lepsze będą podstawki zip, które ułatwiają wyjmowanie mikrokontrolerów,

-

oscylator kwarcowy należy dołączać z zastosowaniem kondensatorów w sposób

pokazany na rysunku 19.

Rys. 19. Podłączenie rezonatora kwarcowego

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

26

-

podłączenie resetu należy zrealizować w sposób pokazany na rysunku 20.

Rys. 20. Podłączenie resetu

Przycisk SW służy do resetowania mikrokontrolera, po załączeniu SW kondensator jest

rozładowany. Po zwolnieniu przycisku SW kondensator ładuje się do 5 V, wywołane tym
opóźnienie zapewnia, że gdy program startuje po wyjściu z trybu zerowania, napięcie
zasilania jest już stabilne.

4.2.2. Pytania sprawdzające

Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń.

1. Dlaczego mikroprocesory są nazywane mikrokontrolerami?
2. Jakie dodatkowe zasoby posiadają mikrokontrolery?
3. Jaka jest szerokość magistrali danych w mikrokontrolerach rodziny ’51, AVR i PIC?
4. Jaka jest szerokość magistrali adresowej w mikrokontrolerach rodziny ’51, AVR i PIC?
5. Które z mikrokontrolerów są oparta na architekturze von Neumana, a które Harvardzkiej?
6. Jakie zasady należy zastosować podczas montażu układu z mikrokontrolerem?

4.2.3. Ćwiczenia


Ćwiczenie 1

Przeanalizuj przykład użycia układu czasowego mikrokontrolera rodziny ‘51 jako

czasomierza. Uruchom program załączenia diody dołączonej do P1.0 na czas 1 sekundy.
Zmień program tak, aby dioda była załączona na 3 sekundy.


Typowe taktowanie mikroprocesora – f

XTAL

=12MHz. Obliczamy czas trwania cyklu

maszynowego:

f

t

=

12

f

XTAL

=

12

MHz

12

= 1MHz

T

t

=

t

f

1

= 1

µ

s


aby odmierzyć 1s licznik musi zliczyć:

1 s = 1000000

µ

s = 1000000 cykli

15

65536

1000000

=

reszta 16960

do we reset mikrokontrolera

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

27

Aby odliczyć 1000000 cykli licznik trzeba przepełnić 15 razy w pełnym zakresie i jeszcze
16960 cykli. Wartość początkowa, którą należy wpisać do licznika:
65536 – 16969 = 48576.

MOV TMOD,#00010000B ;licznik T1 zlicza impulsy wewnętrzne (C/ T =0)

;w trybie 1 (M1M0=01)

MOV TH1,#HIGH(48576) ;załadowanie starszego bajtu wartości początkowej

;do starszej części licznika T1

MOV TL1,#LOW(48576)

;załadowanie młodszego bajtu wartości początkowej
;do młodszej części licznika T1

MOV R7,#16

;licznik przepełnień

SETB TR1

;start zliczania

SEK: JNB TF1,$

;oczekiwanie na przepełnienie licznika

CLR TF1

;programowe zdjęcie flagi przepełnienia

DJNZ R7,SEK

;dekrementacja licznika przepełnień

CLR TR1
SETB P1.0

;zatrzymanie licznika po odmierzeniu 1s
;załączenie diody

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeanalizować wybór trybu pracy i źródła zliczanych impulsów (wpis do rejestru

TMOD),

2) przeanalizować obliczenia ilości zliczanych cykli (na tej podstawie obliczysz liczbę

przepełnień licznika i wartość początkową wpisywaną do licznika dla 3 s),

3) podłączyć diodę do wyjścia P1.0,
4) skompilować program, zaprogramować mikroprocesor,
5) uruchomić program używając zestawu startowego,
6) sprawdzić poprawność działania programu,
7) zmienić wartości w programie tak, aby odmierzyć 3 s,
8) ponownie skompilować program, zaprogramować mikroprocesor i uruchomić zmieniony

program,

9) sprawdzić poprawność działania programu,
10) zaprezentować wykonane ćwiczenie.


Wyposażenie stanowiska pracy:

komputer PC,

oprogramowanie umożliwiające kompilowanie i debugowanie programu,

zestaw startowy z oprogramowaniem,

lista rozkazów asemblera,

literatura wskazana przez nauczyciela,

materiały i przybory do pisania.


Ćwiczenie 2

Spośród układów scalonych wybierz mikroprocesory. Na podstawie oznaczeń określ ich

typy. Odnajdź w Internecie notę katalogową każdego mikroprocesora i odczytaj parametry
mikroprocesorów. Odszukaj sklepy internetowe oferujące mikrokontrolery, porównaj ceny
mikrokontrolerów (pamiętaj, że mikrokontroler nie posiadający wewnętrznej pamięci
programu wymaga dołączenia zewnętrznej pamięci EEPROM i należy jej cenę uwzględnić
w kalkulacji kosztów).

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

28

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) wybrać mikroprocesory spośród wszystkich układów,
2) odczytać typ każdego z nich,
3) odnaleźć w Internecie kartę katalogową mikrokontrolera na schemacie,
4) odczytać parametry poszczególnych mikrokontrolerów,
5) porównać ceny mikrokontrolerów,
6) zaprezentować wykonane ćwiczenie.

Wyposażenie stanowiska pracy:

różne układy scalone, w tym mikroprocesory różnych typów,

komputer PC z dostępem do Internetu,

oprogramowanie umożliwiające przeglądanie dokumentacji w postaci plików PDF,

literatura wskazana przez nauczyciela,

materiały i przybory do pisania.


Ćwiczenie 3

Przeanalizuj schematy ideowe. Wskaż na schematach mikrokontroler. Odnajdź

w Internecie notę katalogową mikrokontrolera i przeanalizuj podłączenie poszczególnych
pinów.

Schemat 1 do ćwiczenia 3

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

29

Schemat 2 do ćwiczenia 3

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

30

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeanalizować schemat ideowy,
2) odnaleźć w Internecie kartę katalogową mikrokontrolera na schemacie,
3) przeanalizować podłączenie poszczególnych pinów,
4) powtórz czynności dla drugiego schematu,
5) zaprezentować wykonane ćwiczenie.

Wyposażenie stanowiska pracy:

komputer PC z dostępem do Internetu,

oprogramowanie umożliwiające przeglądanie dokumentacji w postaci plików PDF,

literatura wskazana przez nauczyciela.


4.2.4. Sprawdzian postępów


Czy potrafisz:

Tak

Nie

1) rozpoznać mikrokontroler na podstawie oznaczeń?
2) rozpoznać mikrokontroler na schemacie ideowym?
3) scharakteryzować zasoby wewnętrzne mikrokontrolerów?
4) odczytać parametry mikroprocesora w dokumentacji?
5) skompilować program w języku asemblera?
6) zaprogramować mikrokontroler na płytce bazowej?
7) przeanalizować program w języku asemblera?
8) wprowadzić modyfikacje w programie?

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

31

4.3. Dołączanie urządzeń zewnętrznych

4.3.1. Materiał nauczania

Współpraca mikrokontrolera z otoczeniem jest realizowana przez dołączone urządzenia

zewnętrzne (peryferyjne). Urządzenia zewnętrzne są dołączane do mikrokontrolera na dwa
sposoby:

za pośrednictwem układów wejścia wyjścia dołączanych do magistral systemu
mikroprocesorowego – rejestry układów są adresowane tak, jak komórki zewnętrznej
pamięci danych,

bezpośrednio do portów (równoległych lub szeregowych) mikrokontrolera.

Port równoległy 8255

Transmisja równoległa, polegająca na przesyłaniu jednocześnie całych bajtów, pozwala

m.in. na wyposażenie systemu mikroprocesorowego w układ komunikacji z użytkownikiem.
W najprostszym przypadku układ taki pozwala na podłączenie klawiatury i zespół
wyświetlaczy 7–segmentowych.
Układ Intel 8255 jest programowalnym układem równoległego wejścia–wyjścia. Jest on
wyposażony w dwie grupy wyprowadzeń, służących do dołączenia układu do magistrali
systemowej oraz do sterowania urządzeniami zewnętrznymi. Układ zawiera 3 porty: A, B i C,
umożliwiając dołączenie dwóch lub trzech (w zależności od wybranego trybu pracy)
urządzeń.

Rys. 21. Port równoległy 8255 [6, s. 60]

Sygnały łączące port z mikrokontrolerem:

D

0

–D

7

– dwukierunkowa, 8–bitowa magistrala danych z wyjściami trójstanowymi,

A

1,

A

0

– wejścia adresowe układu, służące do wyboru jego rejestrów wewnętrznych (port

A–00, port B–01, port C–10 oraz rejestr słów sterujących–11,

CS – wejście uaktywnienia układu, aktywne w stanie niskim,

RD – wejście żądania odczytu informacji z układu, aktywne w stanie niskim,

WR – wejście żądania zapisu informacji do układu, aktywne w stanie niskim,

RES – wejście zerowania układu, aktywne w stanie wysokim.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

32

Interfejs urządzeń zewnętrznych zawiera trzy dwukierunkowe, 8–bitowe porty

wejścia–wyjścia: A, B i C. Porty mogą pracować w 3 trybach:

w trybie 0 prostego wejścia–wyjścia (bez potwierdzenia) – może pracować dowolny
port, podczas programowania trybu pracy należy ustalić m.in. kierunek transmisji
obowiązujący dla całego portu, przy czym port C może być podzielony na dwie połowy,
dla których kierunek ten można ustalić indywidualnie,

w trybie 1 i 2 możliwa jest wymiana sygnałów dotyczących gotowości portu
do odebrania lub wysłania danej, w trybie 1 mogą pracować porty A i B, natomiast port C
pełni rolę rejestru statusowego, podczas programowania trzeba ustalić kierunek
transmisji, w trybie 2 może pracować tylko port A jako port dwukierunkowy.

Przykład zastosowania portu 8255 w systemie mikroprocesorowym. Do modułu 8255

dołączone są 64 klawisze oraz 8 wyświetlaczy 8– segmentowych.


Rys. 22.
Schemat układu we/wy z klawiaturą i wyświetlaczem 8–segmentowym dołączonymi do

mikrokontrolera za pośrednictwem modułu 8255 [6, s. 62]


Port PB układu 8255 pracuje jako wyjście. Linie PB

0

– PB

2

poprzez demultiplekser 74139

wybierają aktywny wyświetlacz i pobudzają klawiaturę. Wspólne wejścia wyświetlaczy
steruje się za pośrednictwem wzmacniaczy tranzystorowych. Na wyjściach PB

3

– PB

6

podawany jest kod cyfry do wyświetlenia. Port PA układu pracuje jako wejście służące
do wczytywania stanu klawiatury.

Używając portu równoległego należy go zaprogramować wysyłając słowo sterujące do

rejestru słów sterujących. Słowo sterujące:

b7

b6

b5

b4

b3

b2

b1

b0

b7=1,
b6, b5– wybór trybu dla portu A,
b4 – kierunek transmisji przez port A– 1– we, 0– wy,
b3 – kierunek transmisji przez starszy półbajt portu C – 1– we, 0– wy,
b2 – wybór trybu dla portu B,
b1 – kierunek transmisji przez port B– 1– we, 0– wy,

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

33

b0 – kierunek transmisji przez młodszy półbajt portu C – 1– we, 0– wy.

Mikrokontrolery najczęściej są wyposażone w porty równoległe, przed ich użyciem

należy określić kierunek transmisji przez port.

Port szeregowy

Zadaniem portu szeregowego jest przesyłanie danych bit po bicie. Transmisja może

odbywać się synchronicznie (przesył danej wraz z sygnałem taktującym) lub asynchronicznie
(nadajnik i odbiornik są taktowane oddzielnie). Podczas transmisji asynchronicznej dane
przesyłane są w postaci ramek:

Format danych (bit kontrolny nie zawsze występuje):

bit

startu

bity danych

bit

kontr.

bit

stopu

D0

D1

D2

D3

D4

D5

D6

D7


Rys. 23.
Format znaku w transmisji asynchronicznej


Przykładem portu szeregowego jest moduł 8251. Jednak mikrokontrolery są wyposażone

we wbudowany port szeregowy i nie ma potrzeby dołączania dodatkowego portu
szeregowego. Na przykład port szeregowy w mikrokontrolerach rodziny ‘51 pozwala
na wczytywanie danych szeregowych przez wejście RxD (P3.0) i wysyłanie danych
szeregowych przez wyjście TxD (P3.1). Port może pracować w jednym z czterech trybów:


Tabela 3.
Tryby pracy portu szeregowego

Tryb

SM0

SM1

Opis

0

0

0

Transmisja synchroniczna, znaki 8–bitowe, taktowane sygnałem zegarowym
o częstotliwości f

XTAL

/12

1

0

1

Transmisja asynchroniczna, znaki 8–bitowe, szybkość określona programowo

2

1

0

Transmisja asynchroniczna, znaki 9–bitowe, szybkość 1/32 lub 1/64 częstotliwości
zegara

3

1

1

Transmisja asynchroniczna, znaki 9–bitowe, szybkość określona programowo


Zamiana postaci danej z szeregowej na równoległą (odbiór danej) lub równoległej na

szeregową (nadawanie danej) oraz sterowanie transmisji odbywa się automatycznie. Dane
odebrane przez port szeregowy są wpisywane do rejestru SBUF, dane wysyłane są pobierane
z rejestru SBUF.

Zaprogramowanie portu szeregowego wymaga wpisania słowa sterującego do rejestru SCON

SCON– słowo sterujące układu transmisji szeregowej:

SM0

SM1

SM2

REN

TB8

RB8

TI

RI


SM0 SM1

tryb pracy,

SM2

bit sterujący przejściem do komunikacji wieloprocesorowej,

REN

bit zezwolenia na odbiór danych przez port szeregowy, bit ustawiany
i zerowany programowo,

TB8

dziewiąty bit nadawanego słowa,

RB8

dziewiąty bit odbieranego słowa,

TI

znacznik zakończenia nadawania danych, może wywołać przerwanie,
kasowany programowo,

RI

znacznik zakończenia odbierania danych, może wywołać przerwanie,
kasowany programowo,

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

34

Interfejs RS232

Jednym z najczęściej wykorzystywanych interfejsów szeregowych w mikrokontrolerach

jest RS232. w tym standardzie dane przesyłane są asynchronicznie. Stosowane są typowe
prędkości transmisji: 1200, 2400, 4800, 9600, 57600 i 115200 bodów (bitów na sekundę).
Przy konstruowaniu urządzeń wykorzystujących RS232 należy pamiętać o tym, że poziomy
napięć linii sygnałowych w tym standardzie nie są zgodne z poziomem TTL/CMOS. Jedynce
logicznej odpowiada napięcie z zakresu od – 3 V do – 15 V, a zeru napięcie z zakresu od
+ 3 V do + 15 V, stan od – 3 V do +3 V jest stanem nieokreślonym. W celu dopasowania
poziomów logicznych stosuje się najczęściej gotowe konwertery np. MAX232. Przykładowy
sposób dołączenia interfejsu RS232 do mikrokontrolera rodziny ’51 za pośrednictwem
konwertera poziomów został przestawiony na rysunku 23 Zastosowany został wewnętrzny
port szeregowy mikrokontrolera (piny TxD, RxD).

Rys. 24. Przykładowy sposób dołączenia interfejsu RS232 do mikrokontrolera rodziny ’51 za pośrednictwem

konwertera poziomów [5, s. 216]


Interfejs SPI

Interfejs szeregowy SPI umożliwia przesyłanie danych w sposób synchroniczny, w trybie

full–duplex (jednoczesne nadawanie i odbiór danych). Umożliwia pracę w trybie urządzenia
nadrzędnego i podrzędnego. Jest wykorzystywany do programowania pamięci programu
i pamięci danych EEPROM mikrokontrolera, realizacji transmisji wieloprocesorowej oraz
współpracy ze specjalizowanymi urządzeniami zewnętrznymi o wejściu lub wyjściu
szeregowym np. przetworniki A/C i C/A. Wejście danych jest oznaczone MOSI, a wyjście
MISO, sygnał taktujący SCK.
Interfejs I

2

C

W systemach mikroprocesorowych bardzo często zachodzi potrzeba dołączenia układów

peryferyjnych, które nie wymagają częstej komunikacji z jednostką centralną (CPU)
np.: Pamięć EEPROM zawierająca np. nastawy początkowe, zegar czasu rzeczywistego,
sterowniki wyświetlaczy LED lub LCD, kontroler klawiatury oraz specjalizowane układy
analogowe. Dzięki szeregowej realizacji połączenia potrzebne tylko dwie linie sygnałowe:
SDA – linia danych i SCL – linia sygnału zegarowego. Szyna I

2

C pozwala na dołączenie

wielu urządzeń, każdy z nich ma odrębny adres, umożliwiający jednoznaczne wybranie
urządzenia do nadawania lub odbioru. Liczba urządzeń jest ograniczona wyłącznie
pojemnością szyny równą 400 pF, pojemność ta jest obliczana jako suma pojemności
pasożytniczych wprowadzanych przez urządzenia. Przesyłaniem danych steruje układ

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

35

nadrzędny (Master). Magistrala I

2

C dzięki synchronizacji sygnałem zegarowym umożliwia

komunikację między urządzeniami stosującymi różne prędkości transmisji. W przypadku
jednoczesnego rozpoczęcia nadawania przez kilka urządzeń podrzędnych (Slave) o kolejności
obsługi decyduje mechanizm arbitrażu.

Rys. 25. Połączenie kilku układów za pomocą magistrali I

2

C [3, s. 194]

Wymiana danych w I

2

C przebiega pomiędzy układami Master (może być ich kilka)

a układami Slave (może być ich wiele). Master inicjuje i synchronizuje transmisję oraz
kończy transmisję. Układ Slave jest adresowany 7–bitowym adresem oraz bitem

wskazującym kierunek transmisji danych (

W

R/

). Przesyłane są dane 8–bitowe, każda

wymiana danych rozpoczyna się sekwencja startu, a kończy sekwencją stopu, prawidłowe
przesłanie bajtu jest sygnalizowane sekwencją potwierdzenia.

Interfejs 1–Wire

Interfejs szeregowy 1–Wire jest przeznaczony do stosowania w systemach

z pojedynczym urządzeniem nadrzędnym (Master) sterującym wieloma urządzeniami
podrzędnymi (Slave) za pomocą tylko jednej linii, po której może być także przesyłane
zasilanie układów podrzędnych. Układy peryferyjne z interfejsem 1–Wire to m. in. czujniki
temperatury z wyjściem cyfrowym, pamięci RAM i EEPROM, układy zegarów czasu
rzeczywistego, potencjometry cyfrowe i inne.

4.3.2. Pytania sprawdzające


Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń.

1. W jaki sposób mikrokontroler może komunikować się z otoczeniem?
2. Co charakteryzuje równoległe przesyłanie danych?
3. Co charakteryzuje szeregowe przesyłanie danych?
4. W jakich trybach może pracować port szeregowy w mikrokontrolerze ‘51?
5. Jakie cechy posiada interfejs szeregowy RS232?
6. Jakie cechy posiada interfejs I

2

C?

7. Jakie cechy posiada interfejs 1–Wire?
8. Jakie jest zastosowanie poszczególnych interfejsów szeregowych?

4.3.3. Ćwiczenia


Ćwiczenie 1

Uruchom podany program krążącej jedynki w lewo na diodach dołączonych do portu

równoległego P1. Przeanalizuj program i zmień go tak, aby realizował program:

krążącej jedynki w prawo,

krążącego zera w prawo,

licznika Johnsona.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

36

MOV A,#01

CYKL:

MOV P1,A

;zapalenie diody dołączonej do P1.0

RL A

;przesunięcie zawartości akumulatora

LJMP CYKL

;zapętlenie programu


Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeanalizować podany program,
2) skompilować i zdebugować program,
3) uruchomić program w sposób krokowy używając zestawu uruchomieniowego,
4) sprawdzić poprawność działania programu,
5) dokonać zmian w programie, skompilować go i uruchomić,
6) zaprezentować wykonane ćwiczenie,
7) dokonać oceny poprawności wykonanego ćwiczenia.

Wyposażenie stanowiska pracy:

komputer PC,

oprogramowanie umożliwiające kompilowanie i debugowanie programu,

mikroprocesorowy zestaw uruchomieniowy z oprogramowaniem,

lista rozkazów mikrokontrolera ’51,

literatura wskazana przez nauczyciela.


Ćwiczenie 2

Przeanalizuj sposób dołączenia interfejsu równoległego 8255 na schemacie. Jakie słowo

sterujące i pod jaki adres należy wysłać w celu zaprogramowania tego modułu, jeżeli do portu
A są dołączone diody, a do portu B zadajniki binarne?

Rysunek do ćwiczenia 2 [9]

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

37

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeanalizować schemat,
2) wybrać tryby pracy i kierunek transmisji dla każdego z portów,
3) zestawić słowo sterujące,
4) obliczyć adres bazowy oraz adres rejestru słów sterujących modułu,
5) zaprezentować wykonane ćwiczenie.

Wyposażenie stanowiska pracy:

treść zadania dla każdego ucznia,

literatura wskazana przez nauczyciela,

materiały i przybory do pisania.


Ćwiczenie 3

Komunikacja mikrokontrolera z komputerem PC za pośrednictwem interfejsu RS232.

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przeanalizować otrzymany program wysyłania danych przez port szeregowy,
2) skompilować program i zaprogramować mikrokontroler poprzez łącze SPI,
3) dołączyć wyjście portu szeregowego do portu COM komputera PC,
4) uruchomić program,
5) obserwować okno terminala sprawdzając poprawność realizacji zadania,
6) zmienić program poprzez zmianę wysyłanych znaków i zmianę szybkości transmisji,
7) skompilować ponownie program i zaprogramować mikrokontroler,
8) sprawdzić działanie programu w oknie terminala,
9) zaprezentować wykonane ćwiczenie.

Wyposażenie stanowiska pracy:

komputer PC,

oprogramowanie umożliwiające kompilowanie i debugowanie programu,

oprogramowanie terminala portu szeregowego (np. Tera Term),

zestaw startowy oparty np. na mikrokontrolerze AVR (lub innym z możliwością
programowania w układzie),

lista rozkazów mikrokontrolera,

literatura wskazana przez nauczyciela.

4.3.4. Sprawdzian postępów


Czy potrafisz:

Tak

Nie

1) scharakteryzować transmisję równoległą?
2) scharakteryzować

transmisję

szeregową

synchroniczną

i asynchroniczną?

3) dobrać rodzaj interfejsu do konkretnego urządzenia peryferyjnego?
4) dołączyć urządzenia zewnętrzne do interfejsów?
5) zrealizować

komunikację

mikrokontrolera

z

urządzeniem

zewnętrznym?

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

38

4.4. Instalowanie,

uruchamianie

i

obsługa

sterowników

i regulatorów mikroprocesorowych


4.4.1. Materiał nauczania

Sterowanie to proces oddziaływania sygnałów sterujących na przyrządy, urządzenia

techniczne lub maszyny robocze. W układach mikroprocesorowych sterowanie odbywa się
w sposób cyfrowy. Zaletą sterowania mikroprocesorowego jest to, że łatwo można zmienić
program realizujący zadanie.

Schemat blokowy sterowania realizowanego przez mikrokontroler (bez pętli sprzężenia

zwrotnego):



Rys. 26. Schemat blokowy układu sterowania


Regulacja jest działaniem polegającym na oddziaływaniu na wielkość regulowaną

mierzoną na bieżąco, aby była podobna do wielkości zadanej.

Schemat blokowy regulacji realizowanego przez mikrokontroler (z pętlą sprzężenia

zwrotnego):



wejścia cyfrowe

układy
wykonawcze


czujniki


mikrokontroler

obiekt
regulowany


wyjścia cyfrowe

Rys. 27. Schemat blokowy układu sterowania i regulacji

Sterowanie urządzeniami dołączonymi do portów mikrokontrolera:
Niektóre linie portów równoległe mikrokontrolerów (np. PA w PIC lub PORTB w AVR)

mają indywidualnie wybierany rezystor podciągający do plusa zasilania (pull–up). dzięki
temu można bezpośrednio wysterować np. diody LED podłączając je tylko przez rezystor
ograniczający:

Rys. 28. Przykład bezpośredniego sterowania diodą LED przez mikrokontroler AVR [1, s. 100]


Niektóre zastosowania wymagają sterowania urządzeniami zasilanymi napięciem

sieciowym. W przypadku odbiorników małej mocy można zastosować rozwiązanie jak
na rysunku 28.

wartość
zadana

mikrokontroler

wyjścia cyfrowe

układy

wykonawcze

obiekt

sterowany

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

39

Rys. 29. Układ umożliwiający sterowanie urządzeniem zasilanym napięciem sieciowym [5, s. 244]

Konstruując urządzenie współpracujące z odbiornikami wykorzystującymi zasilanie

sieciowe należy zawsze pamiętać o skutecznym galwanicznym odizolowaniu części
pracującej z napięciem sieciowym od reszty układu i obudowy (najlepiej z tworzywa
sztucznego). Izolacje galwaniczną najprościej jest zrealizować za pomocą optotriaków.

Sterownik mikroprocesorowy

Przykładem sterownika mikroprocesorowego jest programowalny sterownik czasowy.

Sterownik jest przeznaczony do sterowania urządzeniami, które mają być włączone na
określone odcinki czasu. Czas załączenia oraz czas przerwy między załączeniami może być
ustawiany na wartość mniejszą niż 100 godzin. Sterownik można wykorzystać
np. do sterowania pompą obiegu wody w systemach centralnego ogrzewania, załączaniu
i wyłączaniu oświetlenia w mieszkaniu itp.

W sterowniku zastosowany został mikrokontroler 80C51, z pamięcią Flash 2 kB. Wyjścia

portu P1 mikrokontrolera maja zwiększoną obciążalność, dzięki czemu możliwe jest
bezpośrednie podłączenie segmentów wyświetlaczy. Wyjście P3.1 mikrokontrolera steruje
przekaźnikiem za pośrednictwem pary tranzystorów T6 i T7, które również zabezpieczają
przekaźnik przez chwilowym zadziałaniem w czasie restartu mikrokontrolera. Przyciskami S1
(godziny) i S2 (minuty) nastawia się wybrany czas pracy. Przycisk S4 pozwala na przejście
do nastawiania czasu przerwy (zapala się dioda D2) – nastawianie odbywa się tak samo, jak
nastawianie czasu pracy. Start sterownika następuje po naciśnięciu przycisku S3, jest to
sygnalizowane zapaloną diodą D3, rozpoczyna się odliczanie czasu wstecz. Po odliczeniu
czasu pracy dioda gaśnie i następuje odliczanie czasu przerwy. Stan w jakim znajduje się
sterownik wskazują dodatkowo diody D1 (praca) i D2 (przerwa). Przyciskiem S3 można
wstrzymać odliczanie, a ponowne naciśnięcie tego przycisku spowoduje kontynuację
odliczania. Schemat ideowy sterownika oraz sposób jego podłączenia został przedstawiony na
rysunkach 29 i 30.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

40

Rys. 30. Schemat ideowy programowalnego sterownika czasowego [12]

Rys. 31. Sposób podłączenia [12]


Regulator mikroprocesorowy

Przykładem

regulatora

mikroprocesorowego

jest

regulator

temperatury

z mikrokontrolerem AT89C2051 zawierającym komparator. Napięcie odniesienia na jego
wejściu odwracającym ustala dzielnik złożony z rezystorów R1 i R2. Do pomiaru temperatury
można zastosować czujnik temperatury KTY 10. Czujnik jest podłączony do wejścia
nieodwracającego komparatora.

Metoda pomiaru oparta jest na mierzeniu czasu ładowania kondensatora przez czujnik

temperatury. Czas ładowania jest proporcjonalny do rezystancji czujnika. Czujnik KTA ma
dodatni współczynnik temperatury tzn. im wyższa temperatura tym rezystancja wyższa.
Pomiar rozpoczyna się po dołączeniu kondensatora C8 do masy, przez wewnętrzne
tranzystory mikroprocesora. Jednocześnie uruchamiany jest pomiar czasu. Jeżeli napięcie na
kondensatorze przekroczy próg przełączania komparatora zawartość timera zostanie
zapamiętana w pamięci EEPROM. Na podstawie czasu ładowania kondensatora programowo

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

41

obliczana jest temperatura. Na wyświetlaczu wyświetlany jest wynik pomiaru. Wyświetlacz
8–segmentowy jest dołączony do mikrokontrolera poprzez 2 rejestry przesuwne, z których
jeden steruje segmentami, a drugi poprzez wzmacniacze tranzystorowe anodami
wyświetlaczy.

Schemat regulatora jest przedstawiony na rysunku 31.

Rys. 31. Schemat regulatora temperatury [12]

4.4.2. Pytania sprawdzające


Odpowiadając na pytania, sprawdzisz, czy jesteś przygotowany do wykonania ćwiczeń.

1. Co jest istotą sterowania mikroprocesorowego?
2. Na czym polega regulacja w systemie mikroprocesorowym?
3. Jakie układy można wysterować bezpośrednio z mikrokontrolera?
4. Co należy uwzględniać sterując urządzeniami zasilanymi napięciem sieciowym?
5. W jakim celu może być stosowany sterownik czasowy?
6. W jakim celu może być stosowany regulator temperatury?

4.4.3. Ćwiczenia

Ćwiczenie 1

Zmontuj regulator temperatury zgodnie ze schematem ideowym i otrzymaną instrukcją.

Skalkuluj koszt wykonanego regulatora.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

42

Schematy do ćwiczenia 2 [12]

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) przygotować stanowisko pracy z narzędziami,
2) sprawdzić płytkę drukowaną,
3) przymierzyć płytki do obudowy, w razie potrzeby wyszlifować krawędzie płytek

papierem ściernym,

4) wykonać otwory w tylnej ściance służące wyprowadzeniu przewodów,
5) wywiercić otwory: 4 na przyciski i 2 do przykręcenia płytki, a następnie zamocować

płytkę z przyciskami do górnej części obudowy, na 4 mm tulejkach dystansowych,

6) wlutować podstawki pod mikroprocesor i pamięć EEPROM oraz pozostałe elementy,
7) przylutować płytkę wyświetlaczy bezpośrednio do płytki głównej,
8) połączyć punkty lutownicze A i B na płytce wyświetlaczy przewodami z punktami

A i B przy przekaźniku,

9) podłączyć płytkę klawiatury do układu za pomocą krótkiej wiązki przewodów

(pamiętając o zgodności numeracji przewodów na obu płytkach),

10) sprawdzić montaż,
11) obliczyć łączny koszt zmontowanego regulatora,
12) zaprezentować wykonane ćwiczenie z uwzględnieniem sposobu obliczenia kosztu.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

43

Wyposażenie stanowiska pracy:

elementy wg wykazu:

US1

7805

R1

3,3 kΩ

US2

AT89C2051

R2, R3

5,6 kΩ

US3

PCF8582C

z

10 kΩ

US4, US5

UCY74164

R8–R10

470 Ω

T1– T4

BC327

R11–R14,R25

2,2 kΩ

T5, T6

BC547

R15–R22

150 Ω

D1

1N4001

R24

1,5 kΩ

D2

1N4148

C1

1000 µF

D3– D6

LED

C2

220 µF

Q1

kwarc 12 MHz

C3, C4,C5,C10,C11

100 nF

W1– W4

2x TDY5520(WA)

C6

22 µF

Th1

KTY 10– 6

C7, C8, C9

1 µF

PK1

przekaźnik 12V/3A

C10, C11

30 pF

S1– S4

przycisk imp. 6 mm

podstawka DIL8,

podstawka DIL20,

płytki drukowane 3 szt.,

obudowa KM35

lutownica, śrubokręty, wiertarka, papier ścierny,

śruby, tuleje,

materiały i przybory do pisania.


Ćwiczenie 2

Uruchom regulator temperatury. Wyskaluj go i ustaw zadane temperatury.

Sposób wykonania ćwiczenia

Aby wykonać ćwiczenie, powinieneś:

1) podłączyć czujnik temperatury do złącza na płytce głównej (kolejność wyprowadzeń jest

dowolna),

2) podłączyć zasilanie 12V obserwując wyświetlacz, pojawienie się trzech poziomych

segmentów na wyświetlaczu oznacza, ze mikroprocesor zainicjował pracę pamięci
EEPROM wpisując do niej wstępne ustawienia termometru,

3) wyskalować termometr jedną z dwóch metod:

mniej dokładną: nacisnąć przycisk S4 (SKALOWANIE) i przytrzymać go przez
ok. 5 s, zapalą się diody D3 i D4, następnie umieścić czujnik pod pachą i po upływie
kilku minut, kiedy temperatura nie będzie już wzrastać, zatwierdzić pomiar
jednokrotnym naciśnięciem przycisku S4, diody D3 i D4 zgasną, a na wyświetlaczu
pojawi się wskazanie 36,6,

metoda bardziej dokładna: naciśnąć jednocześnie przyciski S4 i S3 (SKALOWANIE
i Lo) i przytrzymać je przez ok. 5 sek, zapali się dioda D4, następnie umieścić
czujnik w naczyniu z kostkami lodu i niewielką ilością wody, po ustaleniu się
wskazań nacisnąć przycisk S4, dioda D3 zgaśnie a wyświetlacz pokaże 0,0,
następnie jednocześnie nacisnąć przyciski S4 i S2 (SKALOWANIE i Hi) do czasu
zapalenia się diody D3, umieścić czujnik w naczyniu z wrzącą wodą, po

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

44

ustabilizowaniu temperatury nacisnąć przycisk S4, na wyświetlaczu pojawi się 100,0
– skalowanie jest zakończone,

4) zaprogramować termostat:

nacisnąć jednocześnie przyciski S1 i S2 (PROGRAMOWANIE i Hi) i przytrzymać
je aż do zapalenia diod D3 i D5 w celu ustalenie temperatury przy której zostanie
wyłączony przekaźnik, przytrzymanie przycisku Hi zwiększa wskazania na
wyświetlaczu o pełne stopnie, a pojedyncze naciśnięcia o dziesiąte części °C
(przycisk S3 – Lo w taki sam sposób zmniejsza wskazania), ustawioną temperaturę
zatwierdzić jednokrotnym naciśnięciem przycisku S1 (PROG),

przytrzymać jednocześnie przyciski S1 i S3 (PROG i Lo) przez kilka sekund w celu
ustalenia temperatury, przy której przekaźnik zostanie ponownie załączony, zapalą
się diody D4 i D5, przyciskami S2 i S3 nastawić temperaturę załączenia przekaźnika
tak samo jak poprzednio temperaturę wyłączania, zatwierdzić nastawę przez
jednokrotne naciśnięcie S1 (PROG),

5) dokonać kilku prób regulacji temperatury w zadanym zakresie, porównać wyniki

uzyskane przy każdej z metod skalowania,

6) zaprezentować wykonane ćwiczenie

.

Wyposażenie stanowiska pracy:

mikroprocesorowy regulator temperatury,

naczynie z lodem,

termometr do porównywania wyników,

grzałka o małej mocy,

literatura wskazana przez nauczyciela.

4.4.4. Sprawdzian postępów


Czy potrafisz:

Tak

Nie

1) określić różnicę między sterownikiem a regulatorem mikroprocesorowym?
2) podłączyć układy sterowane mikrokontrolerem do jego portów?
3) scharakteryzować przykłady układów sterowania mikroprocesorowego,

z jakimi możesz się spotkać w życiu codziennym?

4) wskazać przykłady mikroprocesorowych układów regulacji?
5) określić jakie sygnały mogą wpływać na obiekt regulowany?

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

45

5. SPRAWDZIAN OSIĄGNIĘĆ

INSTRUKCJA DLA UCZNIA

1. Przeczytaj uważnie instrukcję.
2. Podpisz imieniem i nazwiskiem kartę odpowiedzi.
3. Zapoznaj się z zestawem zadań testowych.
4. Test zawiera 20 zadań o różnym stopniu trudności. Wszystkie zadania są zadaniami

wielokrotnego wyboru i tylko jedna odpowiedź jest prawidłowa.

5. Udzielaj odpowiedzi tylko na załączonej karcie odpowiedzi – zaznacz prawidłową

odpowiedź znakiem X (w przypadku pomyłki należy błędną odpowiedź zaznaczyć
kółkiem, a następnie ponownie zakreślić odpowiedź prawidłową).

6. Pracuj samodzielnie, bo tylko wtedy będziesz miał satysfakcję z wykonanego zadania.
7. Kiedy udzielenie odpowiedzi będzie Ci sprawiało trudność, wtedy odłóż jego

rozwiązanie na później i wróć do niego, gdy zostanie Ci czas wolny. Trudności mogą
przysporzyć Ci zadania: 17–20, gdyż są one na poziomie trudniejszym niż pozostałe.
Przeznacz na ich rozwiązanie więcej czasu.

8. Na rozwiązanie testu masz 90 minut.

Powodzenia!

ZESTAW ZADAŃ TESTOWYCH


1. Wskaźnik stosu przechowuje

a) adres powrotu z podprogramu.
b) adres ostatniej zajętej warstwy stosu.
c) daną ostatnio złożoną na stosie.
d) adres początku wywoływanego podprogramu.

2. Inna grupa rozkazów odnosi się do komunikacji z pamięcią, a inna do układów

wejścia/wyjścia gdy zastosowano adresację
a) rozdzieloną.
b) jednolitą.
c) natychmiastową.
d) bezpośrednią.

3. Argument operacji arytmetycznej został pobrany z pamięci programu. Do adresacji użyto

trybu
a) bezpośredniego.
b) natychmiastowego.
c) rejestrowego.
d) pośredniego.

4. Zaadresowanie przestrzeni adresowej o wielkości 1024 adresy, wymaga podania

a) 8–bitowego adresu.
b) 10–bitowego adresu.
c) 16–bitowego adresu.
d) to zależy od sposobu adresacji.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

46

5. Transmisja DMA pozwala na komunikację pomiędzy

a) mikroprocesorem i pamięcią danych.
b) mikroprocesorem i urządzeniami zewnętrznymi.
c) pamięcią danych i urządzeniami zewnętrznymi.
d) pamięcią programu i urządzeniami zewnętrznymi.

6. Jednokierunkową magistralą jest

a) magistrala danych.
b) magistrala adresowa.
c) magistrala sterująca.
d) każda magistrala.

7. Przez interfejs SPI dane przesyłane są

a) równolegle.
b) szeregowo asynchronicznie.
c) szeregowo synchronicznie.
d) szeregowo synchronicznie lub asynchronicznie.

8. Full–duplex oznacza

a) przesyłanie danych równolegle jednobajtowo.
b) przesyłanie danych równolegle dwubajtowo.
c) przesyłanie danych szeregowo w jednym kierunku.
d) przesyłanie danych szeregowo w obu kierunkach.

9. Na schemacie przedstawiono układy dołączone do mikrokontrolera za pośrednictwem

a) interfejsu szeregowego 1–Wire.
b) interfejsu szeregowego RS232.
c) interfejsu szeregowego SPI.
d) interfejsu szeregowego I

2

C.

10. Mikrokontrolery rodziny ‘51 posiadają magistralę danych

a) 8–bitową.
b) 16–bitową.
c) nie posiadają magistrali danych.
d) szerokość magistrali jest zależna od tego, jakiego typu dane są nią przesyłane.

11. Cykl maszynowy, a jednocześnie rozkazowy mikrokontrolera PIC trwa 4 takty zegarowe.

Jaki jest czas wykonania pojedynczego rozkazu, jeżeli mikrokontroler jest taktowany
częstotliwością 20 MHz
a) 20 µs.
b) 5 µs.
c) 200 ns.
d) 500 ns.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

47

12. Jaka jest najmniejsza częstotliwości taktowania mikrokontrolerów rodziny AVR?

a) 10 MHz.
b) 12 MHz.
c) 1 MHz.
d) nie ma takiego ograniczenia.


13. Przepełnienie licznika Watchdog’a spowoduje

a) zrestartowanie mikrokontrolera.
b) ustawienie znacznik przepełnienia licznika, a licznik liczy dalej.
c) ustawienie znacznik przepełnienia licznika, a licznik jest zatrzymany.
d) wyzerowanie licznika.

14. Rysunek przedstawia architekturę Harvardzką. W oparciu o tą architekturę zbudowane są

mikrokontrolery
a) PIC i AVR.
b) PIC i ’51.
c) AVR i ’51.
d) AVR, PIC i ‘51.

8

pamięć
programu


pamięć
danych


12
14
16

8



pamięć
danych

jednostka

centralna

CPU



pamięć
programu

jednostka

centralna

CPU

15. Timer jest zasobem wewnętrznym mikrokontrolerów stosowanym do:

a) odmierzania czasu.
b) zliczania ilości zrealizowanych rozkazów.
c) taktowania mikroprocesora.
d) dołączenia zewnętrznego zegara czasu rzeczywistego.

16. Fragment schematu przedstawia sposób

a) dołączenia resetu do mikrokontrolera.
b) dołączenia pojemności wzorcowej.
c) dołączenia napięcia odniesienia.
d) dołączenia rezonatora kwarcowego.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

48

Schemat przedstawia zestaw startowy oparty o mikrokontroler. Przeanalizuj schemat
i na jego podstawie rozwiąż zadania

17. Numerem 1 został oznaczony mikrokontroler. Jest to mikrokontroler z rodziny

a) PIC.
b) AVR.
c) ’51.
d) żaden z wymienionych.

18. Numerem 2 jest oznaczony interfejs

a) równoległy.
b) szeregowy synchroniczny.
c) szeregowy asynchroniczny.
d) szeregowy synchroniczno/asynchroniczny.

19. Numerem 3 jest oznaczony interfejs

a) RS232.
b) SPI.
c) I

2

C.

d) 1–Wire.

1

2

3

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

49

20. Diody LED zostały dołączone do

a) magistrali danych.
b) portu równoległego.
c) portu szeregowego.
d) interfejsu I

2

C.

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

50

KARTA ODPOWIEDZI

Imię i nazwisko ……………………………………………………..


Instalowanie sterowników i regulatorów mikroprocesorowych


Zakreśl poprawną odpowiedź.

Nr

zadania

Odpowiedź

Punkty

1

a

b

c

d

2

a

b

c

d

3

a

b

c

d

4

a

b

c

d

5

a

b

c

d

6

a

b

c

d

7

a

b

c

d

8

a

b

c

d

9

a

b

c

d

10

a

b

c

d

11

a

b

c

d

12

a

b

c

d

13

a

b

c

d

14

a

b

c

d

15

a

b

c

d

16

a

b

c

d

17

a

b

c

d

18

a

b

c

d

19

a

b

c

d

20

a

b

c

d

Razem:

background image

„Projekt współfinansowany ze środków Europejskiego Funduszu Społecznego”

51

6. LITERATURA

1. Doliński J.: Mikrokontrolery AVR w praktyce. Wydawnictwo btc, Warszawa 2004
2. Dyrcz K., Kowalski C. T., Zarczyński Z.: Podstawy techniki mikroprocesorowej. Oficyna

Wydawnicza Politechniki Wrocławskiej, 1999

3. Jabłoński T.: Mikrokontrolery PIC16F8x w praktyce. Wydawnictwo btc, Warszawa 2002
4. Rydzewski A.: Mikrokomputery jednoukładowe rodziny MCS–51.Wydawnictwa

Naukowo-Techniczne, Warszawa 1992

5. Starecki T.: Mikrokontrolery 8051 w praktyce. Wydawnictwo btc, Warszawa 2002
6. Zieliński B.: Układy mikroprocesorowe. Przykłady rozwiązań. Helion, Gliwice 2002
7. czasopismo Elektronika Praktyczna
8. www.atmel.com
9. www.ire.pw.edu.pl
10. www.microchip.com
11. www.micromade.pl
12. www.nikomp.com.pl


Wyszukiwarka

Podobne podstrony:
cw 7 porownanie metod sterowania i regulacji
Badanie układu sterowania z regulatorem PID
Instrukcja instalacji sterownika LAN
Elementy bez-oczowe w elektronice- Czyli gawrych (Âci-ga), Ściągi do szkoły, Układ Sterowania i Regu
Linux, Instalacja sterowników
zdalnie sterowany regulator oświetlenia
39 Badanie układów sterowania z regulatorami nieciągłymi
Jody polprzewodnikowe-sciaga, Ściągi do szkoły, Układ Sterowania i Regulacji
Instalak sterów linuxie
04 Stosowanie układów sterowania i regulacji
15 dobor nastaw regulatoraid 16127 ppt
Labolatorium komputerowych systemów automatyki, Regulatory mikroprocesorowe, Politechnika Lubelska
Gawrych2, Ściągi do szkoły, Układ Sterowania i Regulacji

więcej podobnych podstron