[elektro] még mindíg alap C18 kérdés

SZIGETI Szabolcs szigiszabolcs at gmail.com
Tue Nov 5 12:12:16 CET 2013


Hali!

A unionos dologgal vigyázni kell, mert rendszerfüggő lehet, hogy az egyes
tagok milyen illesztéssel vannak és a C teljesen jogosan rakhat be padding
bájtokat vagy szavakat. A fenti példa valószínűleg működik, be összetettebb
esetben nagyot lehet bukni.

Szabolcs



2013. november 5. 11:38 potyo írta, <potyo.ada at gmail.com>:

> ((BYTE *)&W)[0] és ((BYTE *)&W)[1] - ezekre lehet makrót is írni, de nekem
> rémlik, hogy van ilyesmi már a C18-ban alapból. Nézz szét a header
> fájlokban
>
> Esetleg így is lehet:
>
> typedef union {
> WORD W
> BYTE B[2];
> } ujTipus;
>
> ujTipus valtozo;
> valtozo.W=0x1234;
> valtozo.B[0]=0x56;
>
>
>
>
> 2013. november 5. 11:25 Tibor Kovács írta, <kovacs.tibor7909 at gmail.com>:
>
> > Sziasztok!
> >
> > Azt hogy tudom a microchip C18 -ban megcsinálni hogy teszem azt fel van
> egy
> > WORD változóm és én annak külön akarom kezelni a BYTE-jait?
> >
> > pl.:
> > WORD W;
> > SPBGR = W.byte1
> > SPBRGH = W.byte2
> > -----------------------------------------
> >           elektro[-flame|-etc]
> >
> -----------------------------------------
>           elektro[-flame|-etc]


More information about the Elektro mailing list