Programovanie v atmega 16 – Assembler – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

 Programovanie v atmega 16 – Assembler – Fórum – Programujte.com Programovanie v atmega 16 – Assembler – Fórum – Programujte.com

 

2. 5. 2010   #1
-
0
-

dobry den
chcel by som sa opytat ci bi mi niekto nepomohl modifikovat tento dany program tak aby do flash pamete zapisalo od adresi 600h tabulku 1,2,3....29,30
ale prepisat do RAM od addresy 90 hex
prepisat z RAM do RAM od adresy B0 kazdy druhy obsah /1,3,5
prepisat z RAM do EEPROM od adresy 50 hex kazdy druhy obsah 1,5,9...
a naslednu kontrolu toho
program je uz hotovy ale ako tam mam konkretne zapisat ,modifikovat tie urcene hodnoty napriklad tie,90 ,B0 ,50,600H hex, som to si dane hodnoty premenil do 2 kovej sustavy,ale udajne to nie je dobre,tak ako ich tam mam zadavat?
vopred diky

.include "m16def.inc"


.equ block1=$1c0 ;zaciatok pamati1
.equ block2=$1e0 ;zaciatok pamati2


.def reg=r16 ;pracovny register
.def ramsize=r17 ;pocet pamatovych buniek

rjmp reset

reset: ldi reg,low(ramend) ;nastavenie ramend-u
out spl,reg
ldi reg,high(ramend)
out sph,reg
ldi reg,0b00000011 ;nastavenie vystupnych led
out ddrb,reg
;1:
;------------------------------------------------

ldi zh,high(tab*2)
ldi zl,low(tab*2)
ldi yh,high(block1)
ldi yl,low(block1)
ldi ramsize,30
presun: lpm
st y+,r0
adiw zl,1
dec ramsize
brne presun
;2:
;------------------------------------------------
ldi zh,high(block1)
ldi zl,low(block1)
ldi yh,high(block2)
ldi yl,low(block2)
ldi ramsize,16
presun2:ld r0,z
st y+,r0
adiw zl,2
dec ramsize
brne presun2
;3:
;------------------------------------------------

ldi yh,high(block2)
ldi yl,low(block2)
ldi ramsize,8
ldi r25,0x01
ldi r24,0x80

presun3:sbic eecr,eewe
rjmp presun3
out eearh,r25
out eearl,r24

ld r0,y
out eedr,r0
sbi eecr,eemwe
sbi eecr,eewe

adiw yl,2
adiw r24,1
dec ramsize
brne presun3
presunn:sbic eecr,eewe
rjmp presunn


;4:
;------------------------------------------------

ldi zh,high(tab*2)
ldi zl,low(tab*2)
ldi r25,0x01
ldi r24,0x80
ldi ramsize,8

presun4:lpm ;flash z do r0
out eearh,r25
out eearl,r24
sbi eecr,eere
in r1,eedr
cpse r1,r0
rjmp chyba
adiw r24,1
adiw zl,4
dec ramsize
brne presun4

ldi reg,0b11111110
out portb,reg
rjmp end



chyba: ldi reg,0b11111101
out portb,reg
end: rjmp end



.org $1900
tab:
.db 1,2
.db 3,4
.db 5,6
.db 7,8
.db 9,10
.db 11,12
.db 13,14
.db 15,16
.db 17,18
.db 19,20
.db 21,22
.db 23,24
.db 25,26
.db 27,28
.db 29,30


Nahlásit jako SPAM
IP: 95.102.12.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 20 hostů

Podobná vlákna

Programovanie — založil MiReC

Programovanie — založil Tayson

Programovanie — založil fixa

Programovanie v c++ — založil kromap426

Programovanie c++ — založil toso992

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý