Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
gregor001 Mojster
Pridružen/-a: Pet Okt 2006 7:08 Prispevkov: 43
|
Objavljeno: Sob Sep 17, 2011 10:15 am Naslov sporočila: Bascom AVR |
|
|
zivjo,
kakšen je ukaz, ki se pise čisto v ivrp vrsti, ki potem omogoča zelo dolge programe? oz. dolge rutine?
mislim da je %long ali nekaj takega...
ofrward jump out of range .. :s (pri polni verziji b.avr)
hvala za pomoč |
|
Nazaj na vrh |
|
|
marko11 Profesionalec
Pridružen/-a: Ned Jan 2004 18:00 Prispevkov: 112 Kraj: Ponikve
|
Objavljeno: Sob Sep 17, 2011 1:47 pm Naslov sporočila: |
|
|
Mislim, da je ukaz $large.
Nisem čisto prepričan, naj me kdo popravi....
Pa velike začetnice in šumnike uporabljaj!
LP, _________________ Kdor visoko leta, daleč vidi. |
|
Nazaj na vrh |
|
|
Vlado Profesionalec
Pridružen/-a: Ned Jan 2004 16:11 Prispevkov: 556 Kraj: Ljubljana
|
Objavljeno: Sob Sep 17, 2011 5:13 pm Naslov sporočila: |
|
|
Pri Bascom AVR takega ukaza ni, to je bilo pri Bascom 8051 ($Large).
Poskusi malo urediti vprašanje ker je dokaj nerazumljivo.
Pripni tvojo kodo da lahko preizkusimo in vidimo kje bi bil problem.
Vprašanje, ali si pred inštalacijo polne verzije Bascom-a imel Demo verzijo?
LP |
|
Nazaj na vrh |
|
|
gregor001 Mojster
Pridružen/-a: Pet Okt 2006 7:08 Prispevkov: 43
|
Objavljeno: Sob Sep 17, 2011 5:51 pm Naslov sporočila: |
|
|
marko11 je napisal/a: | Mislim, da je ukaz $large.
Nisem čisto prepričan, naj me kdo popravi....
Pa velike začetnice in šumnike uporabljaj!
LP, | j
jap, prav imaš
"$large" treba napisat v čisto prvo vrsto orpgraba *.bas in lahko pišeš zelolod ge programe (itak da mora biti poleg b.avr original, en ad bi kdo napačno razumel) |
|
Nazaj na vrh |
|
|
Vlado Profesionalec
Pridružen/-a: Ned Jan 2004 16:11 Prispevkov: 556 Kraj: Ljubljana
|
Objavljeno: Ned Sep 18, 2011 7:48 am Naslov sporočila: |
|
|
V Helpu Bascom 8051 se nahaja:
Citiram: | Internally when a subroutine is called the ACALL statement is used.
The ACALL instruction needs only 2 bytes (the LCALL needs 3 bytes)
The ACALL statement however can only address routines with a maximal offset of 2048 within the page. AT89C2051 chips will have no problems with that.
When code is generated for another uP, the subroutine being called can be further away and you will receive an error. With the $LARGE statement you instruct the compiler to use the LCALL statement which can address the full 64K address space.
|
Ta ukaz se ne nahaja v Bascom AVR-u!
V svojem vprašanju in odgovoru govoriš o uporabi Bascom AVR-a. Bascom AVR tega ukaza ne pozna!
LP |
|
Nazaj na vrh |
|
|
|