pic a C

Miroslav Draxal evik na volny.cz
Pondělí Leden 14 15:13:39 CET 2013


Nééé, chtěl jsem si to zpřehlednit. Míra

 

From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz] On Behalf Of Josef Štengl
Sent: Monday, January 14, 2013 1:06 PM
To: HW-news
Subject: Re: pic a C

 

Takhle?

switch ((*(unsigned char *)&_changeDateTime))  /* Naposledy jsem to
použil před 7 lety, nyní to mám v kolonce NEPOUŽÍVAT. Ale to je jedno.
*/
{
   case 0x01u; /* newHalfSec */
        ...
        break;
   case 0x02u; /* newSec */
        ...
}

Ale pozor. nejsem si jist pořadím bitů, je to závislé na architektuře.
Možná to bude chtít prohodit.

Já bych na to šel jinak.

unsigned char date_time;

#define newHalfSec 0x01u;
#define newSec 0x02u;
#define newMinuta 0x04u;
atd ...

#define set_time(co) date_time |= co
#define clear_time(co) date_time &= ~co;

No není to sice SIL validní, ale to bitové pole ne, tak to zřejmě nebude
vadit :-)

Dne 14.1.2013 12:31, Miroslav Draxal napsal(a):
> Dobrý den,
>
> Tak zase zápis.
>
> typedef struct {
>
>      unsigned newHalfSec : 1; // nová půlsekunda
>
>      unsigned newSec : 1; // nová sekunda
>
>      unsigned newMinuta : 1; // nová minuta
>
>      unsigned newHodina : 1; // nová hodina
>
>      unsigned new10ms : 1; // nových 10ms
>
>      unsigned new20ms : 1;//nových 20ms
>
>      unsigned new100ms : 1;//nových 100ms
>
>      unsigned HodinyStop : 1; //zastaví běh hodin
>
> } _changeDateTime;
>
> typedef struct {
>
>      char rok;
>
>      char mesic;
>
>      char den;
>
>      char den_tyden;
>
>      char hodin;
>
>      char minut;
>
>      char sekund;
>
>      char counter; // kolikrát za 1sekundu dojde k přerušení
>
>      uint * pDenNazev; // ukazatel na paměťový prostor s názvem dnu
>
>      _changeDateTime changeDateTime;
>
> } _DateTime;
>
> _DateTime DateTime;
>
> Jak do Switch zapsat něco takového viz níže. Zase nějak přes pointery?
>
> /Switch (DateTime.changeDateTime)/
>
> /{/
>
> /Case . new10ms:/
>
> /…. /
>
> /               Break;/
>
> /Case …./
>
> /}/
>
> Míra**
>
>
>
> __________ Informace od ESET NOD32 Antivirus, verze databaze 7890
> (20130114) __________
>
> Tuto zpravu proveril ESET NOD32 Antivirus.
>
> http://www.eset.cz
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list



__________ Informace od ESET NOD32 Antivirus, verze databaze 7891 (20130114) __________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz



__________ Informace od ESET NOD32 Antivirus, verze databaze 7891 (20130114) __________

Tuto zpravu proveril ESET NOD32 Antivirus.

http://www.eset.cz

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20130114/98cc4044/attachment.htm>


Další informace o konferenci Hw-list