www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

iap funkcija težava

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
ciko
Član
Član



Pridružen-a: Čet 27 Mar 2008 11:41
Prispevkov: 126
Aktiv.: 0.60
Kraj: Novo mesto

PrispevekObjavljeno: Čet Apr 23, 2009 3:36 pm    Naslov sporočila:  iap funkcija težava Odgovori s citatom

Živjo!

Imam IAP funkcijo in jo normalno uporabljam. V enem primeru pa mi težava nastopi. IAP funkcija mi vrne vrednost 2 - SRC_ADDR_ERROR (Source address is not on a correct boundary).

V debug načinu sem ugotovil, da mi zapisuje iz naslova: 0x400005CD, 256 bytov(IRAM1 imam definiran: lokacija 0x40000000, velikost 0x8000).

Če pa naredim memcpy v malloc prostor (luceran v istem IRAMu), pa zapiše normalno. Ker gre za kar veliko podatkov, se bi seveda rad izognil memcpy funkciji.

Uporabljam pa lpc2378, uVison3, Ulink2.

Morda kak nasvet, kje je težava in kako jo rešiti?

Lep pozdrav!
Peter
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
xay
Član
Član



Pridružen-a: Tor 03 Jun 2008 9:24
Prispevkov: 41
Aktiv.: 0.20

PrispevekObjavljeno: Čet Apr 23, 2009 7:11 pm    Naslov sporočila:   Odgovori s citatom

Sicer nisem velik poznavalec tega, vendar se mi zdi logično, da ti vrne napako, glede na naslov iz katerega izpisuješ. Če prav vem (naj me kdo popravi, če ne), je beseda (word) v LPC2xxx dolga 4 bajte (32 bitov), torej mora biti naslov deljiv s štiri (da je word boundary). Če shranjuješ nek niz tipa char, lahko zadevo rešiš tako, da niz deklariraš kot tipa int (seveda 4x krajši) in mu nato spremeniš tip v char, tako bo njegov naslov "poravnan" z 32 bitnim "zaporedjem". Upam da sem napisal vsaj približno razumljivo Laughing

LP,

Blaž
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
ciko
Član
Član



Pridružen-a: Čet 27 Mar 2008 11:41
Prispevkov: 126
Aktiv.: 0.60
Kraj: Novo mesto

PrispevekObjavljeno: Pet Apr 24, 2009 1:42 pm    Naslov sporočila:   Odgovori s citatom

xay je napisal/a:
Sicer nisem velik poznavalec tega, vendar se mi zdi logično, da ti vrne napako, glede na naslov iz katerega izpisuješ. Če prav vem (naj me kdo popravi, če ne), je beseda (word) v LPC2xxx dolga 4 bajte (32 bitov), torej mora biti naslov deljiv s štiri (da je word boundary). Če shranjuješ nek niz tipa char, lahko zadevo rešiš tako, da niz deklariraš kot tipa int (seveda 4x krajši) in mu nato spremeniš tip v char, tako bo njegov naslov "poravnan" z 32 bitnim "zaporedjem". Upam da sem napisal vsaj približno razumljivo Laughing

LP,

Blaž


Hvala za odgovor!

Na to pa niti nism bil pozoren. Mi je vse jasno zakaj ne dela.

Lep pozdrav!

Peter
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> ARM arhitektura Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 494 dni


Powered by phpBB © 2001, 2005 phpBB Group