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