11

11



Struktura pamięci mikrokontrolera 21

Struktura pamięci mikrokontrolera 21

MOV_Blok_XRAM_Dec: MOV P2.M3H

MOV R0,#7FH

MOV DPTR.#43DFH MOV R7,#128

Skok:

MOVX A.@R0 MOVX @DPTR,A DEC RO DEC DPL DJNZ R7.Skok


P2 <=. 43H, bardziej znaczący baje adresu, adres segmentu (strony)

RO <= 7FH, mniej znaczący bajt adresu,

adres w obrębie segmentu (strony) DPTR <= 43DFH, adres końca nowego obszaru R7 <= 128, R7 jest licznikiem przesuwanych bajtów

;A c= (256*1*2 + R0)xDATA ;(DPTR)XdaTA <= A

;R0c=R0-l, • przygotowanie do przesuwania ;DPL c= DPL -1, kolejnego bajtu ;R7 <= R7 -1, jeśli R7 * 0 to skok do adresu Skok, .powtórzenie przesunięcia kolejnego bajtu

W liście instrukcji mikroprocesora brak instrukcji DEC DPTR. Wykorzystując fakt adresowania nowego obszaru pamięd przez wskaźnikowy rejestr danych (DITR) oraz stalą wartość adresu w bardziej znaczącej części rejestru DPTR, rejestrze DPH, zmniejszanie wartości rejestru DPTR zrealizowano przez dekrcmentację tylko rejestru DPL

adres 1


adres 2

l-~,'!

Nowe

Położenie

położenie

przesuwanego

bloku

)

bloku

danych

_ z/

danych

1 Położenie

adres_1 |

przesuwanego bloku danych


adres 2


położenie

bloku

danych


adres_1 < adres_2 a) przesuwanie od końca bloku


adres_1 > adres_2 b) przesuwanie od początku bloku


Rys. 2-12 Przesuwanie bloku danych w zewnętrznej pamięd RAM

• jeśli wystąpi sytuacja jak an rysunku 2-12 b, to przesuwanie kolejnych bajtów rozpoczyna się od początku przesuwanego bloku, tak samo jak w programie MOV_Blok_XRAM_lnc.

Mikrokontroler 80(C)$ł • programowanie

ponieważ skok wykonywany jest w ramach 2 kllajtowego bloku pamięci kodu programu. Problem znika jeśli zastosuje się instrukcję skoku dalekiego LJMP adr_16.

Przykład 2:

W instrukcjach skoków względnych, warunkowych lub bezwarunkowych, podawane przesunięcie rei ma ograniczony zakres zmian -128..+127. W wielu przypadkach zakres ten jest niewystarczający. Jeśli testowana jest zawartość rejestru R6 i w zależności od jego wartości ma zostać zrealizowana procedura:

-* Proc_l jeśli zawartość rejestru R6 - 0,

-* Proc_2 jeśli zawartość rejestru R6 * 0 oraz długości obu procedur są następujące:

-* długość procedury Proc_1 wynosi 129 - 81H bajtów, przekracza 127 bajtów,

-> długość procedury Proc_2 wynosi 130 = 82H bajtów, przekracza 127 bajtów

to możliwe jest następujące rozwiązanie problemu:

MOV A,R6

JZ Proc _1    .adres względny musi być zawarty

;    w przedziale-128..+127

AJMP Proc_2 Proc_l:

—...................-    .procedura Proc_l

AJMP Dalej    ;ominięcie procedury Proc 2 po

;    zakończeniu    procedury    Proc    l

Proc_2:

.......................... .procedura Proc.2

Dalej:

.......................... ;dalsza część programu

Mikrokontroler 80(C)51 - programowanie


Wyszukiwarka

Podobne podstrony:
11 2. Struktura pamięci mikrokontrolera 21 2. Struktura pamięci mikrokontrolera 21 MO V_ Blok _XRAM
11 2 Stmktuta pamięci mikrokomiolcra II W pierwszym przykładzie wartość 5AH wpisywana jest do komór
11 2 SmiMura pamięci mikrokonnolcra II W pierwszym przykładzie wartość 5AH wpisywana jest do komórk
75165 zdj1 (6) Struktura rozkazówRozkazy bezoperandowe: Kod
ANSI C 1 6 STRUKTURY /* getword: weź następne słowo lub znak z wejścia */ int getword(char *word,
CCF20111108005 początek roku koniec roku 1 • 1 • 1 + 0,1© = M koniec roku 2 U + 0,11 = 1,21 kon
15 5 Instrukcje arytmetyczne 45 ADD A,#12H A.R7 ADDC A.D MOV R0J80H MOV SRO.A ;Ac= 12H ;A<=
SZWEDZKI INTERD YSCYPL1NARNY PROGRAM NA OKO WY „ ŻYWNOŚĆ 21" 173 Blok - Uprawa roślin (8
13 2. Struktura pamięci mikrokontrolera 13 transmisja szeregową reprezentuje dwa niezależne rejestr
13 Z. Struktura pamięci mikrokontrolera 13 transmisja szeregową reprezentuje dwa niezależne rejestr
15 2 Struktura pamięci mikrokomrolcia 15 i odczytywana: MOV ACC.SP    ;ACC c= SP, wp
19 19 2. Struktura pamięci mikrokontrolera Stan portu 1*2 równy jest bardziej znaczącemu bajtowi
15 2 Struktura pamięci mikrokomrolcia 15 i odczytywana: MOV ACC.SP    ;ACC c= SP, wp
17 2. Struktura pamięci mikrokontrolera 172.4. Zewnętrzna pamięć RAM mikrokontrolera Zewnętrzna pam
19 2. Struktura pamięci mikrokontrolera 19 Stan portu 1*2 równy jest bardziej znaczącemu bajtowi ws
21.    folder - logiczna struktura organizacji danych na nośnikach pamięci. Katalog m

więcej podobnych podstron