ATMega128, gcc a data ve FLASH
Miroslav Sinko
sinkomiro@rocketmail.com
Pondělí Září 17 16:50:05 CEST 2007
Som Vas nechtiac oklamal... uz som doma, takze zapis PROGMEM je OK, ale
na citanie musite pouzit pgm_read_byte_far apod pre dalsie datove typy.
A tento far pristup je podmieneny:
#if defined(RAMPZ) || defined(__DOXYGEN__)
/* Only for devices with more than 64K of program memory.
RAMPZ must be defined (see iom103.h, iom128.h).
*/
miro
--- Jan Smrz <jan.smrz@honeywell.com> wrote:
> Dekuji,
>
> bohuzel PROGMEM je definovan takto:
>
> #define __ATTR_PROGMEM__ __attribute__((__progmem__))
>
> zadne atributy near, far apod tam nevidim. Jedine atributy far tam
> vidim v souvislosti s instrukcemi pro cteni dat,
> coz mi ale moc nepomuze, kdyz neziskam spravnou adresu
>
>
> J.S.
>
>
>
>
>
>
> Miroslav Sinko wrote:
> > Teraz to nemam pri sebe, ale najdite si v prislusnom headri
> (pgmspace.h
> > ?) ako je definovane PROGMEM. Tam niekde uvidite, ze pointer je
> near *.
> > V tom istom headri su definovane aj far pointery, len ich treba
> > spravnym #define aktivovat. Je to tam cez #ifdef bloky.
> >
> > miro
> >
> > --- Jan Smrz <jan.smrz@honeywell.com> wrote:
> >
> >
> >> Zdravim,
> >>
> >> mam zde MCU ATMega128, kde ve flash bych chtel mit ulozeno
> pomerne
> >>
> >> velke mnozstvi dat. Protoze bych to chtel mit jednoduse
> odladitelne,
> >> programovatelne atd., tak data jsou soucasti zdrojoveho kodu a to
> >> jako
> >> pole, tj.
> >>
> >> uint8_t PROGMEM data[] = {0x12, 0x34, ....}
> >>
> >> Nemate nekdo reseni, jak se vyporadat s omezenim gcc na pouze
> >> 16-bit
> >> pointery? I kdyz se to pokusim pretypovat (uint32_t)data, tak
> adresu
> >> promenne nejdrive zmensi na 16-bit a pak pretypuje na 32-bit.
> >>
> >> J.S.
> >> __
> >>
> >
> >
> >
> _______________________________________________
> HW-list mailing list - sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
____________________________________________________________________________________
Be a better Heartthrob. Get better relationship answers from someone who knows. Yahoo! Answers - Check it out.
http://answers.yahoo.com/dir/?link=list&sid=396545433
Další informace o konferenci Hw-list