pointery C

Jaromir Sukuba jarin.hw na gmail.com
Středa Květen 22 11:32:55 CEST 2013


ak je to bug, tak to reportujte microchipu - support.microchip.com


2013/5/22 Miroslav Draxal <evik na volny.cz>

> Pánové, vy co děláte v MPLABx 1.80, tak pozor, v předchozích verzích bylo
> správně, teď je tam bug u práce s FSR2L, FSR2H, INDF2 ( nenačítá se
> korektní
> hodnota do INDF2 podle adresy FSR2) to byla další věc s tím pointerem,
> protože jsem to ladil v sw simulátoru, a stále to házelo nesmysly. V ICD(3)
> to načíta hodnyty OK. Míra
>
> -----Original Message-----
> From: hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz] On
> Behalf Of Luboš Melichar
> Sent: Wednesday, May 22, 2013 10:39 AM
> To: HW-news
> Subject: Re: pointery C
>
> Asi už to tu padlo ale.. keep it simple, místo tohoto..
>
> (*((_ProgramEEprom*) pTest)).Mesic
>
> je přece hezčí a čitelnější toto..
>
> ((_ProgramEEprom*) pTest)->Mesic
>
>
> 2013/5/22 Miroslav Draxal <evik na volny.cz>
>
> > Doufám, že nevadí kousek kódu.****
> >
> > Nejprve si jednou nastavím začátek bufferu adresu do ukazatele, a pak
> > jí pouze inkrementuji. Nemůže být problém v tomhle? Jakmile to přeteče
> > adresování 255, tak to neskočí do další stránky. Míra     ****
> >
> > ** **
> >
> > for (Program = 0; Program <= 2; Program++)****
> >
> >     {****
> >
> >                pTest = (char*)
> > &ProgramRAM[Program][RAM_AutoMesic];****
> >
> >                if ((*((_ProgramEEprom*) pTest)).Mesic == 0 ||
> > (*((_ProgramEEprom*) pTest)).Mesic > 12)//kontrola mezí****
> >
> >                    (*((_ProgramEEprom*) pTest)).Mesic = 1;****
> >
> >                tmp = (*((_ProgramEEprom*) pTest)).Mesic;****
> >
> > ** **
> >
> >                pTest++; //RAM_Den****
> >
> >                if (*pTest == 0)****
> >
> >                    *pTest = 1;****
> >
> >                else if (*pTest > MesicDnu [tmp])****
> >
> >                    * pTest = MesicDnu [tmp];****
> >
> > ** **
> >
> >                pTest++; //RAM_Hodin****
> >
> >                if (*pTest > 23)****
> >
> >                    *pTest = 0;****
> >
> > ** **
> >
> >                pTest++; //RAM_Minut****
> >
> >                if (*pTest > 59)****
> >
> >                    *pTest = 0;****
> >
> > ** **
> >
> >                pTest++; //RAM_ZaDnu****
> >
> >                if (*pTest > RAM_ZaDnuMaxSet)****
> >
> >                    *pTest = 0;****
> >
> > ** **
> >
> >                pTest++; //RAM_CyklProgram****
> >
> >                if (*pTest > RAM_CyklProgMaxSet)****
> >
> >                    *pTest = 0;****
> >
> > ** **
> >
> >                for (ProgPolSekce = 0; ProgPolSekce <= MaxProgPolSekce;
> > ProgPolSekce++)****
> >
> >                {****
> >
> >                    pTest++; //RAM_CisloSekce****
> >
> >                    if (*pTest > PocetSekci)//test číslo sekce****
> >
> >                               *pTest = 1;****
> >
> > ** **
> >
> >                    pTest++; //test čas sekce****
> >
> >                    if (*pTest > CasSekceMax)****
> >
> >                               *pTest = 1;****
> >
> >                    tmp = *pTest;****
> >
> > ** **
> >
> >                    pTest++; //test čas čerpadla sekce****
> >
> >                    if (*pTest > tmp)****
> >
> >                               *pTest = tmp;****
> >
> > ** **
> >
> >                    pTest++; //test čas prolnutí pauza****
> >
> >                    if ((*((_ProgramEEprom*) pTest)).ProlnutiPauza.cas
> > >
> > CasSekceMax)****
> >
> >                               *pTest = 0; //neber v úvahu
> > prolnutí/pauza - nastav natvrdo na pauza OFF****
> >
> >                    tmp = (*((_ProgramEEprom*)
> > pTest)).ProlnutiPauza.cas;**
> > **
> >
> > ** **
> >
> >                    pTest++; //test čerpadlo prolnutí****
> >
> >                    if (*pTest > tmp)****
> >
> >                               *pTest = tmp;****
> >
> >                }****
> >
> >     }****
> >
> > }****
> >
> > ** **
> >
> > *From:* hw-list-bounces na list.hw.cz [mailto:hw-list-bounces na list.hw.cz]
> > *On Behalf Of *Ladislav Vaiz
> > *Sent:* Wednesday, May 22, 2013 7:55 AM
> >
> > *To:* HW-news
> > *Subject:* Re: pointery C****
> >
> > ** **
> >
> > Normu jsem nečetl, třeba k tomu Jano nebo Ced dodají něco zajímavého,
> >
> > ale v praxi to není pravda, viz Debian AMD64:
> >
> > checking size of char... 1
> > checking size of short... 2
> > checking size of int... 4
> > checking size of long... 8
> > checking size of long long... 8
> > checking size of void *... 8
> >
> > L.
> >
> > Pavel Hudecek napsal(a):
> > > To je nějaké divné. Pointer by měl být vždy int, ať už ukazuje na
> > > cokoli. Int je právě tak definován: Typ určený k adresování na dané
> > > platformě, akorát navíc se znaménkem. Proto má na různých
> > > platformách různý počet bitů.
> > >
> > > Ale třeba je to v Hitecu jinak.
> > >
> > > PH
> >
> > _______________________________________________
> > 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 8359
> > (20130521) __________
> >
> > Tuto zpravu proveril ESET NOD32 Antivirus.
> >
> > http://www.eset.cz****
> >
> >
> >
> > __________ Informace od ESET NOD32 Antivirus, verze databaze 8359
> > (20130521) __________
> >
> > 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
> >
> >
>
>
> --
> Vy závodíte, my měříme.
> http://www.casomira-ewitis.cz/
> https://www.facebook.com/casomira.ewitis
>
>
> __________ Informace od ESET NOD32 Antivirus, verze databaze 8359
> (20130521)
> __________
>
> Tuto zpravu proveril ESET NOD32 Antivirus.
>
> http://www.eset.cz
>
>
>
>
>
>
> __________ Informace od ESET NOD32 Antivirus, verze databaze 8360
> (20130522)
> __________
>
> 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
>
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20130522/b8e022b8/attachment.htm>


Další informace o konferenci Hw-list