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