Sprawozdanie z ćwiczenia numer 10
Data wykonania ćwiczenia: 2006-10-09
Temat ćwiczenia:
Emulatory Układowe
Laboratorium Mikroinformatyki
Rok akademicki
Termin
Rodzaj studiów
Kierunek
Prowadzący
Grupa
Sekcja
2006/2007
poniedziałek
14:45 – 17:00
Dzienne
INF
KT
4
2
Skład sekcji:
Liszka Michał
Pulnar Dawid
Strzelczyk Marcin
1. Zadanie
Napisać program sterujący świeceniem dwukolorowej diody LED. Dioda powinna płynnie
zmieniać kolor z zielonego na czerwony i z powrotem na zielony. Dioda jest podłączona do
portów 1.2 i 1.3 mikrokontrolera 8051.
2. Rozwiązanie
$MOD52
;8052 Definitions
x equ 21
t equ 22
mov t,#255
poczatek:
mov x,#255
czerwienieje:
mov R3,x
clr P1.2
; zapalenie zielonego
zielony:
;
djnz R3,zielony
; świecenie zielonym przez okres x
setb P1.2
; wygaszenie zielonego
mov A,t
;
subb A,x
; załadowanie do R0 wartości t - x
mov R0,A
;
jz za_czerw
; jeśli t-x=0 to kolor czerwony nie powinien się pojawić
clr P1.3
; zapalenie czerwonego
czerwony:
;
djnz R0,czerwony
; świecenie czerwonym przez okres t - x
za_czerw:
setb P1.3
; wygaszenie czerwonego
dec x
;
mov A,x
; powtarzanie pętli aż do czasu, gdy dioda będzie przez cały okres t
jnz czerwienieje
; świecić na czerwono
mov x, #255
; wpisanie do x wartości 255, tym razem kolor czerwony będzie się
; świecić przez okres x, a zielony przez t - x
zielenieje:
mov A, t
;
subb A,x
; wpisanie do R3 wartości t - x
mov R3, A
;
jz za_ziel
; jeśli t-x=0 to kolor zielony nie powinien się pojawić
clr P1.2
; zapalenie zielonego
zielony2:
;
djnz R3,zielony2
; świecenie zielonym przez okres t - x
za_ziel:
setb P1.2
; wygaszenie zielonego
mov R0, x
clr P1.3
; zapalenie czerwonego
czerwony2:
;
djnz R0,czerwony2 ; świecenie czerwonym przez okres x
setb P1.3
; wygaszenie czerwonego
dec x
mov A,x
; powtarzanie pętli aż do czasu, gdy dioda będzie przez cały okres t
jnz zielenieje
; świecić na zielono
jmp poczatek
END
3. Wnioski
Pisanie programów w języku asemblera jest zdecydowanie trudniejsze, niż w języku
wysokiego poziomu. W celu ułatwienia pisania programów dla systemów
mikroprocesorowych powstał emulator. Dzięki emulatorowi, który zastępuje mikroprocesor
możemy śledzić działanie programu, ustawiać pułapki itp. W ten sposób oszczędzamy dużo
czasu i pracy na szukaniu i poprawianiu błędów.