CRC16の計算方法

解決


鈴木  2007-06-26 22:28:46  No: 65527  IP: [192.*.*.*]

Buf[0]=0x02,Buf[1]=0x21,Buf[2]=0x10,Buf[3]-Buf[15]=0x00,Buf[16]=0x03
において、CRC codeの値の求め方を教えてください。
CRC-16(X16+X15+X2+1)を使用します。
よろしくお願いします。

編集 削除
オショウ  2007-06-26 23:02:59  No: 65528  IP: [192.*.*.*]

探せば沢山掲載されていますが・・・
http://www.vector.co.jp/soft/data/prog/se002453.html
ここに掲載されているものにCRC計算のサンプルが含まれています。
後はご自身の力でお願いします。
以上。

編集 削除
鈴木  2007-06-27 01:16:57  No: 65529  IP: [192.*.*.*]

オショウ様
回答ありがとうございます。

下記PDFに記載されている、CRCの求め方が分りません。
Buf[17]=Buf[1]~Buf[16] CRC code (calculation:X16 + X15 + X2 + 1) HIGH BYTEの箇所です。
先の質問で、Buf[0]も含めていたのが誤りの原因の一つでした。
しかしCRCが合わず、正しい結果が得られません。
下記のソフトを参考に作成してみました。http://www.zorc.breitbandkatze.de/crc.html


http://www.mintron.com/HTM/New_PRODUCTS/ALPHA/download/63V5%20Camera%20serial%20communication_A1%20.pdf

編集 削除
mあ  2007-06-27 02:10:04  No: 65530  IP: [192.*.*.*]

http://www.vector.co.jp/soft/data/prog/se002453.html
C言語アルゴリズム辞典のサンプルソース全部

http://piza2.2ch.net/tech/kako/994/994129650.html
ここから。

編集 削除
鈴木  2007-06-28 20:38:41  No: 65531  IP: [192.*.*.*]

mあ様
回答ありがとうございます。

こちらのソースでOKでした。
http://www.zorc.breitbandkatze.de/crc.html

原因は、私のコーディングミスでした。
申し訳ございませんでした。

編集 削除