CRC校驗(yàn)工具是一款在Windows下用來計(jì)算和校驗(yàn)字符串CRC值。支持16進(jìn)制和文本模式;支持CRC16、CRC32校驗(yàn);綠色軟件,免費(fèi)使用。
功能特色:
1、選擇算法,設(shè)置初始值和多項(xiàng)式的值;
2、設(shè)置文本數(shù)據(jù),支持文本導(dǎo)入,支持16進(jìn)制和ASCII模式;
3、逆序跟大端、小端排列有關(guān),選中逆序數(shù)據(jù)為BIT0 為最高位;
4、如需異或輸出數(shù)據(jù),選中異或并輸入異或值;
5、Modbus-CRC16 自動(dòng)設(shè)置成modbus協(xié)議的CRC參數(shù);
6、CRC16-CCITT自動(dòng)設(shè)置成CRC16-CCITT的CRC參數(shù);
7、本軟件主要是方便Modbus協(xié)議CRC校驗(yàn)而作
CRC-16計(jì)算步驟:
1、定義一個(gè)初始值為FFFF的16位的變量,該變量稱為CRC寄存器。(想想在程序中,應(yīng)該怎么表示16位的變量呢?)
2、把欲發(fā)送或接收消息的高8位和CRC寄存器的底8位作異或運(yùn)算,并把結(jié)果在賦到CRC寄存器。
3、CRC寄存器右移1位(朝最低位),同時(shí)最高位添零。取出并檢查最低位是否為1。(Visual Basic 里如何做移位的運(yùn)算呢?)
4、如果為1,則CRC寄存器與多項(xiàng)式A001異或;如果為0,則重復(fù)第3步的動(dòng)作。(Visual Basic 里如何判斷一個(gè)字節(jié)里某個(gè)位的值呢?)
5、重復(fù)3和4直到完成了8次移位。這樣完整的8位字節(jié)將完成處理了。 6、對(duì)于下一個(gè)8位字節(jié)的處理就是重復(fù)第2步到第5步了
7、把所有的欲發(fā)送或接收消息這樣處理后, CRC寄存器里的值就是我們最終需要得到的CRC校驗(yàn)碼。