Ride51
m |
|||
Řádka 59: | Řádka 59: | ||
''Nyní klávesou F7 nebo tlačítkem v rozhraní krokujete program. V simulaci se program vykonává. V struktuře registrů můžete vidět, jak se mění jejich hodnoty podle programu.'' | ''Nyní klávesou F7 nebo tlačítkem v rozhraní krokujete program. V simulaci se program vykonává. V struktuře registrů můžete vidět, jak se mění jejich hodnoty podle programu.'' | ||
+ | |||
+ | '''Ukázka příkladu''' | ||
+ | |||
+ | Příklad: Pomocí cyklu vyplňte hodnotou 0fh pole od 20 do 30. | ||
+ | |||
+ | Rešení: | ||
+ | |||
+ | MOV R3,#10 | ||
+ | |||
+ | MOV R4,#0fh | ||
+ | |||
+ | MOV R0,#20h | ||
+ | |||
+ | ADR1: MOV A,R4 | ||
+ | |||
+ | MOV@R0,A | ||
+ | |||
+ | INC R0 | ||
+ | |||
+ | DJNZ R3, ADR1 | ||
+ | |||
+ | NOP | ||
+ | |||
+ | END | ||
+ | |||
'''První příkaz''' | '''První příkaz''' | ||
+ | |||
+ | ''MOV R3,#10 '' | ||
''Přesune hodnotu 10(hexadecimálně 0A) do registru R3. V programu určuje kolikrát se bude opakovat cyklus'' | ''Přesune hodnotu 10(hexadecimálně 0A) do registru R3. V programu určuje kolikrát se bude opakovat cyklus'' | ||
Řádka 66: | Řádka 93: | ||
[[Soubor:ride-3.jpg|800px]] | [[Soubor:ride-3.jpg|800px]] | ||
+ | '''Druhý příkaz''' | ||
+ | |||
+ | ''MOV R4,#0fh'' | ||
+ | |||
+ | ''Přesune hodnotu která se bude zapisovat(0fh) do registru R4'' | ||
+ | |||
+ | [[Soubor:ride-4.jpg|800px]] | ||
+ | |||
+ | '''Třetí příkaz''' | ||
+ | |||
+ | ''MOV R0,#20h'' | ||
+ | |||
+ | ''Přesune do registru R0 hodnotu 20( hodnota ,kde se zacne zapisovat 0fh)'' | ||
+ | |||
+ | [[Soubor:ride-5.jpg|800px]] | ||
+ | |||
+ | '''Čtvrtý příkaz''' | ||
+ | |||
+ | ''ADR1: MOV A,R4 '' | ||
+ | |||
+ | ''ADR1 je návěští(Návěstí umístěné před instrukcí se používá jako pro definici bodu v programu, na který můžeme skočit). '' | ||
+ | |||
+ | ''MOV A,R4 přesune hodnotu zapsanou v registru R4 do akumulátoru'' | ||
+ | |||
+ | [[Soubor:ride-6.jpg|800px]] | ||
+ | |||
+ | '''Pátý příkaz''' | ||
+ | |||
+ | ''MOV@R0,A '' | ||
+ | |||
+ | ''Zapíše hodnotu uloženou v akumulátoru(0fh) do místa které je uložené v registru R0(20)'' | ||
+ | |||
+ | [[Soubor:ride-7.jpg|800px]] | ||
+ | |||
+ | '''Šestý příkaz''' | ||
+ | |||
+ | ''INC R0 '' | ||
+ | ''Incrementace R0 - Připočte hodnotu 1 k hodnotě uložené v registru R0'' | ||
− | [[Soubor: | + | [[Soubor:ride-8.jpg|800px]] |
Verze z 26. 5. 2011, 14:29
Instalace programu
Potvrzení podmínek
Zobrazení souboru readme.txt
Výběr verze programu
Pojmenování programu
Umístění programu
Založení nového projektu
Vytvoření souboru z programem
Svázání souboru z projektem
Kvůli simulaci programu a vytvoření jeho .hex souboru musíme program svázat se založeným projektem. To se dělá následujíím způsobem
Poté co máte soubor svázaný z projektem můžete začít psát program.
Simulace programu
K tomu abyste si ověřili zda váš program funguje, můžete v RIDE 51 nasimulovat jeho chování. Simulace se pouští tímto způsobem
Pokud máte v programu chybu program chybu rozpozná a ukáže
K simulaci je potřebna mít zapnutou strukturu registrů
Nyní klávesou F7 nebo tlačítkem v rozhraní krokujete program. V simulaci se program vykonává. V struktuře registrů můžete vidět, jak se mění jejich hodnoty podle programu.
Ukázka příkladu
Příklad: Pomocí cyklu vyplňte hodnotou 0fh pole od 20 do 30.
Rešení:
MOV R3,#10
MOV R4,#0fh
MOV R0,#20h
ADR1: MOV A,R4
MOV@R0,A
INC R0
DJNZ R3, ADR1
NOP
END
První příkaz
MOV R3,#10
Přesune hodnotu 10(hexadecimálně 0A) do registru R3. V programu určuje kolikrát se bude opakovat cyklus
Druhý příkaz
MOV R4,#0fh
Přesune hodnotu která se bude zapisovat(0fh) do registru R4
Třetí příkaz
MOV R0,#20h
Přesune do registru R0 hodnotu 20( hodnota ,kde se zacne zapisovat 0fh)
Čtvrtý příkaz
ADR1: MOV A,R4
ADR1 je návěští(Návěstí umístěné před instrukcí se používá jako pro definici bodu v programu, na který můžeme skočit).
MOV A,R4 přesune hodnotu zapsanou v registru R4 do akumulátoru
Pátý příkaz
MOV@R0,A
Zapíše hodnotu uloženou v akumulátoru(0fh) do místa které je uložené v registru R0(20)
Šestý příkaz
INC R0
Incrementace R0 - Připočte hodnotu 1 k hodnotě uložené v registru R0
- Microcontroller project Timer/ Counter Mode 2 : 8 bit Auto Reload
- Cornell University ECE 4760 Designing with Microcontrollers Final Projects
www:
- free 8051 Microcontroller tool downloads RKit-Eval51 pro vývoj v asm či C
- Download ftp SPS
- 8051 Tutorial