Laboratorium Techniki Mikroprocesorowej Ćwiczenie 2.

Transkrypt

Laboratorium Techniki Mikroprocesorowej Ćwiczenie 2.
Laboratorium Techniki Mikroprocesorowej
Ćwiczenie 2.
opracowanie:
dr inż. Michał Porzeziński
1. Zapoznać się ze środowiskiem Keil uVision (pomocny może być dokument „Tworzenie i uruchamianie
programów w środowisku Keil uVision2. Pierwsze kroki.”) i przeprowadzić kompilację podanego programu na
wykonywalny przez mikrokontroler kod maszynowy zapisany w formacie Intel Hex.
2. Przedstawić w postaci szesnastkowej kod maszynowy programu wykonywany przez mikrokontroler z
zaznaczeniem bajtów kodu należących do poszczególnych instrukcji asemblera 8051 .
3. Zwrócić uwagę na to, jakie wartości liczbowe zostały przez linker przypisane w miejsce występujących w
pliku źródłowym symboli : „start” i „loop”. Co te wartości, w jednym i drugim przypadku, oznaczają ?
4. Przedstawić kod maszynowy programu zapisany tekstowo w formacie Intel Hex. Zaznaczyć i zinterpretować
wartości poszczególnych pól rekordów występujących w pliku.
5. Prześledzić wykonywanie programu krok po kroku, ze zwróceniem uwagi na efekt działania poszczególnych
instrukcji. Sprawdzić działanie różnych trybów śledzenia wykonywania programu: polecenie „GO” w
połączeniu z ustawionymi punktami zatrzymania („break point”), polecenie „Step”, polecenie „Run to Cursor
Line” i inne. Podczas wykonywania programu prześledzić zmiany w wewnętrznej pamięci RAM, zaleca się
podgląd: raz w trybie szesnastkowym („Unsigned”/ „Char”), drugi raz w trybie tekstowym („Ascii”).
Kod źródłowy programu:
start:
loop:
MOV
MOV
MOV
MOV
MOV
MOV
MOV
MOV
08h,#50h
09h,#52h
0Ah,#4fh
0Bh,#43h
0Ch,#45h
0Dh,#53h
0Eh,#4fh
0Fh,#52h
MOV
MOV
MOV
ADD
MOV
INC
DJNZ
LJMP
R1,#08h
R2,#08h
A,@R1
A,#20h
@R1,A
R1
R2,loop
start
end

Podobne dokumenty