ZPA Ukazovací a registrační přístroje

| Kategorie: Leták / Datasheet Návody k obsluze  | Tento dokument chci!

Katalogové listy a montážní návody

Vydal: ZPA Nová Paka, a.s. Autor: ZPA NP

Strana 429 z 842

Vámi hledaný text obsahuje tato stránku dokumentu který není autorem určen k veřejnému šíření.







Poznámky redaktora
Nakonec výsledek bitech invertuje.paměť, celočísel. • Pro součet dat vypočítá “Binárních dat. */ len >>= Určete počet datových bodů použitím „zkráceného“ typu dat. Vzorový program Součtová hodnota určí následujícím vzorovým určený vzorovým programem může porovnat se datovým součtem úseku výstupu binárního zápatí.součet 0xffff; Jestliže opět přebývá číslice, přidejte */ návrat ((-kontr.součet) 0xffff); bitová inverze */ } programem vrátí vypočítaný výsledek.P-355333 PŘÍRUČKA UŽIVATELE KOMUNIKAČNÍHO ROZHRANÍ TYP 559 6. /* * Funkce výpočtu součtu (pro 32-bitovou CPU) * * Vyrovnávací paměť parametrů Ukazatel vrchol dat, nichž počítá součet.paměti, která se má sečíst.součet kontr. */ if(odd)i When the data length odd *J union tmp{ Pad with and add the unsigned short data.s; ifiicsum (csu* Oxffff) 4(C5um»16) Dxffff)) Qxffff) f* Add the overflowed its */ csura csum Oxffff; the overflows again, add *t return((-»csum) Oxffff); inversion *! 6-4 132/176 . * Vrácená hodnota Vypočítaný součet */ celočíselný kontrolní součet (znak bez znaménka *vyrovn.c[0] *(( znak bez znaménka *)p); kontrolní součet tmp.součet >>16) 0xffff)) 0xffff) /* Přidat přebývající číslice */ kontr. Pokud číslice přebývá, přidá se“1”. */ Celočísel. i; celé liché číslo; kontrolní součet Inicializovat. *! unsigned short s; unsigned char [2]; Jt-rp; tm p. Součet součtem záhlaví úseku výstupu binárního záhlaví a VIZ ORIGINAL Sum Calculation Function (for 32-bit CPU) ; Parameter buff : len : Returned value Pointer the top the data which the sum calculated Length the data which the sum calculated Calculated sum in cksum(unsigned char *buff, len) { unsigned short *p; Pointer the next tsre-byte data word tbs buffer that sumed.s; } jestliže((kontr. */ zkrácená bez znaménka s; znak bez znaménka c[2]; } tmp; tmp.paměť; pro(i=0;i<len;i++) Součet použitím druhu zkrácených dat bez znaménka.cIO] *((unsigned char *)p); csura tmp.e[l] Of tmp. Vyrovnávací pam které počítá hodnota součtu • Pro součet záhlaví vypočítá “datové délky příznak identifikátor” (pevně bytů). unsigned csumj Checksum value *f in ; in odd; csum itia liz */ odd len'2; Check whether not the number ofdata points even.c[1] 0; tmp.součet (kontr.délka) { zkrácený bez znaménka *p; Ukazatel další dvoubytové datové slovo vyrovn. */ kontrolní součet *p++; jestliže(lichá){ Když datová délka lichá */ sjednocený tmp{ Vložka přidat zkráceným datům bez znaménka. */ lichá délka%2; Zkontrolujte, zda počet datových bodů sudý nikoli.” 1byla výplň T~ <0 <2> (3} {4) (5) Jestliže datová délka vyrovnávací paměti lichá, použije výplň “0”, takže stane sudou.1 Syntax odezvy Výpočet součtové hodnoty Když parametr povelu nastaven “1,” výstup hodnot kontrolního součtu provádí pouze během sériových komunikací. * len Délka dat, nichž počítá součet.součet 0xffff) + ((kontr.kontrolní součet bez znaménka; Hodnota kontrolního součtu */ celočísel. Kontrolní součet stejný jako TCP/IP odvozen podle následujícího algoritmu. */ len Determine the number data points using "short' data type. *i p (unsigned short fo r{i=a;i<Len;i++) csum *p++j /* Sum using unsigned short data type. */ p (zkrácené bez znaménka vyrovn. (1) (6) se sečtou jako dvoubytová celá čísla bez znaménka (krátká čísla bez znaménka)