新聞中心

        BCC異或校驗法

        作者: 時間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
        BCC異或校驗法(Block Check Character)

        適用范圍:

        本文引用地址:http://www.104case.com/article/201611/317164.htm

        適用于大多數(shù)要求不高的數(shù)據(jù)通訊。

        應用例子:

        IC卡接口通訊、很多單片機系統(tǒng)的串口通訊都使用。

        實現(xiàn)方法:

        很多基于串口的通訊都用這種既簡單又相當準確的方法。它就是把所有數(shù)據(jù)都和一個指定的初始值(通常是0)異或一次,最后的結(jié)果就是校驗值,通常把它附在通訊數(shù)據(jù)的最后一起發(fā)送出去。接收方收到數(shù)據(jù)后自己也計算一次異或和校驗值,如果和收到的校驗值一致就說明收到的數(shù)據(jù)是完整的。
        校驗值計算的代碼類似于:

        typedefunsigned charINT8U;

        staticINT8U BCC_CheckSum(INT8U *buf, INT8U len)
        {
        INT8U i;
        INT8U checksum = 0;

        for(i = 0; i < len; i++) {
        checksum ^=*buf++;
        }

        returnchecksum;
        }



        關(guān)鍵詞: BCC異或校驗

        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 永登县| 敦煌市| 高雄县| 海林市| 昂仁县| 商都县| 兴文县| 贡山| 逊克县| 淮北市| 贞丰县| 花莲县| 迁西县| 读书| 法库县| 桂林市| 米脂县| 灵山县| 通海县| 仁怀市| 东阿县| 舒兰市| 聂荣县| 蒲江县| 富裕县| 青海省| 阜康市| 宜黄县| 吴堡县| 杭州市| 景谷| 宜兴市| 光山县| 昭通市| 元江| 乐亭县| 东乌珠穆沁旗| 康马县| 伊吾县| 清涧县| 工布江达县|