MCU 8051 IDE
(Rozdíly mezi verzemi)
Řádka 24: | Řádka 24: | ||
== Ukázka příkladu == | == Ukázka příkladu == | ||
+ | === Porty - write === | ||
− | == | + | [[Soubor:RD2kit_08.jpg|400px]] |
+ | |||
+ | <source lang="asm"> | ||
+ | org 0 ;pseudoinstrukce umistujici program do pameti programu pocitace adresou 000h | ||
+ | |||
+ | start: | ||
+ | mov A,#01010101b | ||
+ | mov P3,A | ||
+ | acall delay | ||
+ | |||
+ | mov A,#10101010b | ||
+ | mov P3,A | ||
+ | acall delay | ||
+ | |||
+ | sjmp start | ||
+ | |||
+ | delay: mov R0,#01h | ||
+ | skok1: mov R1,#01h | ||
+ | skok2: mov R2,#01h | ||
+ | |||
+ | skok: DJNZ R2,skok | ||
+ | DJNZ R1,skok2 | ||
+ | DJNZ R0,skok1 | ||
+ | |||
+ | ret | ||
+ | end | ||
+ | </source> | ||
+ | |||
+ | |||
+ | === Porty - Read/Write === | ||
+ | |||
+ | [[Soubor:RD2kit_09.jpg|400px]] | ||
+ | |||
+ | <source lang="asm"> | ||
+ | org 0 ;pseudoinstrukce umistujici program do pameti programu pocitace adresou 000h | ||
+ | |||
+ | start: | ||
+ | mov A,#P1 | ||
+ | mov P3,A | ||
+ | sjmp start | ||
+ | </source> | ||
+ | |||
+ | === Běžící světlo === | ||
+ | |||
+ | [[Soubor:MCU-8051-IDE_03.jpg|400px]] | ||
+ | |||
+ | <source lang="asm"> | ||
+ | org 0 ;pseudoinstrukce umistujici program od 00h | ||
+ | |||
+ | mov P3,#11111110B ;0. bit na log "0" | ||
+ | loop: mov A,P3 | ||
+ | rlc A ;posun obsah A přes C doleva | ||
+ | mov P3,A | ||
+ | acall delay ;zavolá podprogram pro zpoždění 1s | ||
+ | sjmp loop ;skočí zpět k rotaci P1 | ||
+ | |||
+ | delay: mov R0,#01h ;podprogram zpoždění | ||
+ | skok1: mov R1,#01h | ||
+ | skok2: mov R2,#01h | ||
+ | |||
+ | skok: djnz R2,skok | ||
+ | djnz R1,skok2 | ||
+ | djnz R0,skok1 | ||
+ | |||
+ | ret | ||
+ | end | ||
+ | </source> | ||
== www == | == www == | ||
+ | [[8051]] | ||
+ | |||
+ | [[Kategorie:SW]] | ||
+ | [[Kategorie:MIT]] | ||
[[Soubor:MCU 8051 IDE.jpg]] | [[Soubor:MCU 8051 IDE.jpg]] |
Verze z 10. 6. 2012, 09:29
MCU 8051 IDE | |
popis: | Vývoj aplikace pro 8051 v asm nebo C |
vývojář | Martin Ošmera |
aktuální verze | 1.4 (2011) |
OS | Unix-like, Microsoft Windows, freeBSD |
typ softwaru | aplikační |
licence | GNU General Public License |
web | mcu8051ide.sf.net wiki |
Obsah |
Instalace programu
Založení nového projektu
Simulace programu
Ukázka příkladu
Porty - write
org 0 ;pseudoinstrukce umistujici program do pameti programu pocitace adresou 000h start: mov A,#01010101b mov P3,A acall delay mov A,#10101010b mov P3,A acall delay sjmp start delay: mov R0,#01h skok1: mov R1,#01h skok2: mov R2,#01h skok: DJNZ R2,skok DJNZ R1,skok2 DJNZ R0,skok1 ret end
Porty - Read/Write
org 0 ;pseudoinstrukce umistujici program do pameti programu pocitace adresou 000h start: mov A,#P1 mov P3,A sjmp start
Běžící světlo
org 0 ;pseudoinstrukce umistujici program od 00h mov P3,#11111110B ;0. bit na log "0" loop: mov A,P3 rlc A ;posun obsah A přes C doleva mov P3,A acall delay ;zavolá podprogram pro zpoždění 1s sjmp loop ;skočí zpět k rotaci P1 delay: mov R0,#01h ;podprogram zpoždění skok1: mov R1,#01h skok2: mov R2,#01h skok: djnz R2,skok djnz R1,skok2 djnz R0,skok1 ret end