C -- struct kerdes
hg12345
hg12345 at freemail.hu
Wed Nov 17 18:18:42 CET 2004
Fuzesi Arnold <arno at externet.hu> írta:
> Hopsz, jogos!!
>
> Sajna most nem tudom leellenorizni, de ilyennek tudom elkepzelni
hirtelen:
> (a __flash hianyzott a *pITEM elol)
>
> > > typedef struct {
> > > unsigned char a;
> > > unsigned char b;
> > > unsigned int d;
> > > } ITEM;
> > >
> > > __flash const ITEM Items[1000] = ...........................
> > >
> > > ITEM __flash *pITEM;
>
> A masik kerdesedre:
> Kecske is kaposzta is? :)
> Szerintem ha jot akarsz tedd tombbe, strukturaba, vagy hasonlo egy
egyseget
> kepviselo dologba.
> Es szepen mutogass ra amivel illik.
> A pointertombot meg varazsold be flash-be.
> Jobbat nem tudok hirtelen.
> Vagy lancolt lista.
> Ekkor kicsi helyet/eroforrast foglal, de lassu.
> Az elso elem egyik aleleme mutat a kovetkezo elem elejere.
> Annak egyik aleleme az azt kovetore.
> Stb.
>
Kis memoriaju kontrollerekben nem szivesen generalnek egy
pointertombot ami a strukturakra mutat, ugyan ez egyszerunek tunik.
Az ANSI C-ben nem szukseges __modosito elvileg a const is elegendo,
erre mar ROM-ba kellene forditani, persze lehet az adott implementacio
igy viselkedik.
Maga a felhasznalas linearis szerkezetu, ami viszonylag konnyen
leirhato, de a bovitessel van problemam, szeretnem automatikusan
kezelni uj ITEM-meket raadasul ezek mindig forditasi idoben tortennek,
de hatasara sok minden megvaltozik az eszkozben es a bovitesek
beszurasok is lehetnek. Sajnos ezt ASM-ben tudnam kezelni, de C-ben
nem latom lehetoseget. Nem szeretnek tipus fuggo kodot generalni a
programba.
A MSStudio C/C++ pedig a nem hasznalt constans struktarakat mar
nem is teszi be a kesz kodba, igy nem nagyon lehet ra hivatkozni :(),
mindezt optimalizacio nelkul.
Mindenesetre eddig tapasztalatom szerint nem teljes a kompatibilitas
Udv
HG
Nagyobb ennel a szomorusagom, vagy kecske vagy kaposzta, de
egeszen mas kell. Szeretnem az ITEM boviteseket automatizalni, de az
ITEM bovitesek nem a vegere kerulnek, hanem a kozepere
>
> Arnold
> ----- Original Message -----
> From: "hg12345" <hg12345 at freemail.hu>
> To: <elektro at tesla.hu>
> Sent: Wednesday, November 17, 2004 8:24 AM
> Subject: Re: C -- struct kerdes
>
>
> Amit irtal kodot, ott a kis Hardware arhitekturaju kontrolereknel
> gondvan, mert a MAS A RAM es mas FLASH/ROM pointer szerkezetileg
> es meretileg is, a lenti definicio RAM-ra mutat!
>
> Ha feltarthatlak, lenne meg egy kerdesem, hogyan tudom
> automatikusan generalni forditasi idoben egy structura tombnek
> kulonbozo pontjaihoz azonosito pointer vagy valami hasonlot
> A kulonbozo hozzaferesi pontokat szeretnem automatikusan
generalni.
>
> Elvileg mondjuk igy:
> const ITEM Item1=...........
> const ITEM Item2=...........
> const ITEM Item3=...........
> const ITEM Item4=...........
> const ITEM Item5=...........
>
> const struct ITEM *pITEM
>
> idaig mindent eltudok kepzelni, es liniearis tarolas eseten pointerrel
> tudom kezelni, de Mi garantalja szamomra a linearis tarolas, a MS
> Studio teljesen szamomra veletlenszeruen tarolta. A korrekt
megoldas
> egy strukturakra mutato pointer tomb lenne, de jelentosen lassitana
a
> kontrollert es ez elpocsekolt memoriarot meg meg sem emlitettem.
>
> Udv
> HG
>
>
>
> > IAR alatt uC-re pl igy:
> >
> > > typedef struct {
> > > unsigned char a;
> > > unsigned char b;
> > > unsigned int d;
> > > } ITEM;
> > >
> > > __flash const ITEM Items[1000] = ...........................
> > >
> > > ITEM *pITEM;
> >
> > elérni pedig igy tudod legegyszerűbben:
> > temp=pITEM->a;
> >
> > Milyen fordito amugy?
> >
> > Arnold
> > ----- Original Message -----
> > From: "hg12345" <hg12345 at freemail.hu>
> > To: <elektro at tesla.hu>
> > Sent: Wednesday, November 17, 2004 1:50 AM
> > Subject: C -- struct kerdes
> >
> >
> > > Udv,
> > > hogy tudom ravenni a C forditot, hogy egy struktura tombot
> > > kozvetlenul programmemoriabol kezeljen es ne olvassa be RAM
> > > teruletre., mert biztos nem fer el RAM-ban :-()
> > > pl.:
> > > struct ITEM {
> > > unsigned char a;
> > > unsigned char b;
> > > unsigned int d;
> > > };
> > >
> > > const struct ITEM Items[1000] = ...........................
> > >
> > > const struct ITEM *pITEM;
> > >
> > > elvileg mukodni kellene, de nem sikerult leforditani, mit hibaztam
el?
> > > Elore is kosz
> > > HG
> > >
> > > -----------------------------------
> > > Szponzorunk: http://tonerbolt.hu/
> >
> > -----------------------------------
> > Szponzorunk: http://tonerbolt.hu/
> >
>
>
> -----------------------------------
> Szponzorunk: http://tonerbolt.hu/
>
> -----------------------------------
> Szponzorunk: http://tonerbolt.hu/
>
More information about the Elektro
mailing list