LABORATORIUM MIKROPROCESORÓW I MIKROKONTROLERÓW
13
wiczenie nr
2
Adresowanie portów i urz dze!
zewn"trznych
Kraków 2006
Copyright ukasz Zelek
LABORATORIUM MIKROPROCESORÓW I MIKROKONTROLERÓW
14
I
NFORMACJE WST
PNE
Temat
!wiczenia
Tematem !wiczenia jest adresowanie i sterowanie urz"dze# zewn$trznych mikrokontrolera
AduC812 za pomoc" 8 bitowej magistrali równoleg%ej.
Zakres obowi
"zuj"cego materia#u
!"
Adresy urz"dze# zewn$trznych sterowanych równolegle przez mikrokontroler
ADuC812.
!"
Rozkazy dost$pu do zewn$trznej pami$ci.
!"
Zapis danych do zewn$trznej pami$ci.
!"
Odczyt danych z zewn$trznej pami$ci.
!"
Kompilacja plików *.ASM do postaci *.HEX.
!"
&adowanie i uruchamianie programu na mikroprocesorze.
Cel
!wiczenia
Celem tego !wiczenia jest zapoznanie wykonuj"cego !wiczenie z zasad" równoleg%ego
adresowania urz"dze# zewn$trznych, oraz przesy%anie i odbieranie danych od tych
urz"dze#. Dost$p do zewn$trznych urz"dze# sterowanych równolegle odbywa si$ tak jak
czytanie lub pianie do zewn$trznej pami$ci RAM.
Kraków 2006
Copyright ukasz Zelek
LABORATORIUM MIKROPROCESORÓW I MIKROKONTROLERÓW
15
P
RZEBIEG
$WICZENIA
W przyk%adowych !wiczeniach jako zewn$trzne urz"dzenia sterowane równolegle, zosta%y
u'yte: zestaw 8 prze%"czników i zestaw 8 diod.
Do ka'dego zadania zosta% napisany program w asemblerze. Przed uruchomieniem ka'dego
programu nale'y si$ zapozna! z plikiem (ród%owym (rozszerzenie *.ASM), a nast$pnie
skompilowa! plik do postaci *.HEX. Po skompilowaniu nale'y za%adowa! program do
mikrokontrolera odpowiednim programem %aduj"cym.
Zadanie 1 – Przes
#anie danych do linijki diodowej
Pod adresem 00000010 mamy dost$p do 8 diod. Program powoduje wys%anie do
wska(ników diodowych jednego bajta danych. Stan wysoki wys%anych danych odpowiada
za zapalenie diody na wybranej pozycji.
Zadanie 2 – Przes
#anie danych z prze#"czników na diody
Adres zestawu 8 prze%"czników jest taki sam jak zestawu diod. Program odczytuje stany
ustawione na prze%"cznikach, nast$pnie zapisuje je do komórki pami$ci, a potem wysy%a je
na zestaw 8 diod.
Zadanie 3 – Licznik pier
%cieniowy na diodach
Wynikiem dzia%ania programu jest licznik pier)cieniowy zrealizowany na linijce diodowej.
Mi$dzy kolejnymi zapaleniami diod wykorzystano opó(nienie czasowe
Zadanie 4 – Generacja d
&wi'ku o ustawionej cz'stotliwo%ci
Dzia%anie programu polega na generowaniu sygna%y na g%o)niku o cz$stotliwo)ci ustalonej
na prze%"cznikach. Realizacja polega na odliczaniu czasu ustawionego na prze%"cznikach i
okresowym w%"czaniu g%o)niczka i diody.
Zadanie 5 – Wykonanie w
#asnego programu
Nale'y uruchomi! program napisany przez siebie. Zasad$ dzia%ania programu mo'e poda!
prowadz"cy !wiczenia, b"d( mo'e by! to jedna z propozycji z nast$pnego rozdzia%u.
Kraków 2006
Copyright ukasz Zelek
LABORATORIUM MIKROPROCESORÓW I MIKROKONTROLERÓW
16
P
ROPOZYCJE ZADA
( DO SAMODZIELNEJ REALIZACJI
Propozycja 1
Do linii portów pod%"czone s" ró'ne switch’e, oraz brz$czek. Nale'y napisa! program który
jednym switch’em zapala diod$, a drugim w%"cza brz$czek. Do tego celu mo'na
zmodyfikowa! zadanie nr 2.
Propozycja 2
Nale'y napisa! program który po kilku mrugni$ciach diody za%"cza brz$czek, a po
nast$pnych kilku wy%"cza go. Do tego celu mo'na wykorzysta! zadanie nr 4 z opó(nieniem
czasowym.
Propozycja 3
Po zrealizowaniu dwóch poprzednich propozycji, nale'y je tak po%"czy! w jeden program
aby jeden switch w%"cza% diod$, a drugi brz$czek. Ponowne wci)ni$cie wybranego switch’a
ma wy%"czy! odpowiednio diod$ lub brz$czek. Stan w%"czenia diody lub switch’a polega
na zmianie stanu na danym urz"dzeniu co pewien okre)lony przedzia% czasu, z tym 'e,
cz$stotliwo)ci mrugania diody i w%"czania brz$czka maja by! ró'ne od siebie.
Kraków 2006
Copyright ukasz Zelek