新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CRC校驗原理與程序設計――(RS485總線系統應用之1)

        CRC校驗原理與程序設計――(RS485總線系統應用之1)

        作者: 時間:2018-08-17 來源:網絡 收藏

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

        H61, HA1, H63, HA3, HA2, H62, H66, HA6, HA7, H67,_

        HA5, H65, H64, HA4, H6C, HAC, HAD, H6D, HAF, H6F,_

        H6E, HAE, HAA, H6A, H6B, HAB, H69, HA9, HA8, H68,_

        H78, HB8, HB9, H79, HBB, H7B, H7A, HBA, HBE, H7E,_

        H7F, HBF, H7D, HBD, HBC, H7C, HB4, H74, H75, HB5,_

        H77, HB7, HB6, H76, H72, HB2, HB3, H73, HB1, H71,_

        H70, HB0, H50, H90, H91, H51, H93, H53, H52, H92,_

        H96, H56, H57, H97, H55, H95, H94, H54, H9C, H5C,_

        H5D, H9D, H5F, H9F, H9E, H5E, H5A, H9A, H9B, H5B,_

        H99, H59, H58, H98, H88, H48, H49, H89, H4B, H8B,_

        H8A, H4A, H4E, H8E, H8F, H4F, H8D, H4D, H4C, H8C,_

        H44, H84, H85, H45, H87, H47, H46, H86, H82, H42,_

        H43, H83, H41, H81, H80, H40)

        End Function

        Function GetCRCLo(Ind As Long) As Byte ’CRC低位字節值表

        GetCRCLo = Choose(Ind + 1,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

        H80, H41, H00, HC1, H81, H40, H01, HC0, H80, H41,_

        H00, HC1, H81, H40, H00, HC1, H81, H40, H01, HC0,_

        H80, H41, H01, HC0, H80, H41, H00, HC1, H81, H40,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H00, HC1,_

        H81, H40, H01, HC0, H80, H41, H01, HC0, H80, H41,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H00, HC1,_

        H81, H40, H00, HC1, H81, H40, H01, HC0, H80, H41,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

        H80, H41, H00, HC1, H81, H40, H00, HC1, H81, H40,_

        H01, HC0, H80, H41, H01, HC0, H80, H41, H00, HC1,_

        H81, H40, H01, HC0, H80, H41, H00, HC1, H81, H40,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

        H80, H41, H00, HC1, H81, H40, H00, HC1, H81, H40,_

        H01, HC0, H80, H41, H00, HC1, H81, H40, H01, HC0,_

        H80, H41, H01, HC0, H80, H41, H00, HC1, H81, H40,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

        H80, H41, H00, HC1, H81, H40, H01, HC0, H80, H41,_

        H00, HC1, H81, H40, H00, HC1, H81, H40, H01, HC0,_

        H80, H41, H00, HC1, H81, H40, H01, HC0, H80, H41,_

        H01, HC0, H80, H41, H00, HC1, H81, H40, H01, HC0,_

        H80, H41, H00, HC1, H81, H40, H00, HC1, H81, H40,_

        H01, HC0, H80, H41, H01, HC0, H80, H41, H00, HC1,_

        H81, H40, H00, HC1, H81, H40, H01, HC0, H80, H41,_

        H00, HC1, H81, H40, H01, HC0, H80, H41, H01, HC0,_

        H80, H41, H00, HC1, H81, H40)

        End Function

        3.2 用計算法求CRC函數的程序

        計算法的優點是程序編碼量小,雖然比查表法速度偏慢,但當被校驗的數據量不大時并不明顯。

        3.2.1 用VC編寫的程序

        unsigned short CRC16(unsigned char buf[], int n)

        {

        unsigned short crc = 0xffff ;

        for(i = 0; i n; i++)

        {

        crc ^ = buf[i] ;

        for(b = 0; b 8; b++)

        {

        bool f = crc 1 ;

        crc >> = 1 ;

        if(f)

        crc ^ = 0xa001 ;

        }

        }

        return(crc) ;

        }

        3.2.2 用VB編寫的程序

        Function CRC16(Data() As Byte, No As Integer, CRC16Lo As Byte, CRC16Hi As Byte) As String



        關鍵詞: CRC校驗 RS485總線

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 奎屯市| 博爱县| 垦利县| 靖安县| 崇礼县| 高密市| 老河口市| 繁峙县| 罗山县| 禹城市| 剑阁县| 信阳市| 洛阳市| 白山市| 垣曲县| 台中县| 正安县| 江西省| 清流县| 邮箱| 商南县| 永仁县| 盖州市| 昂仁县| 榆树市| 遵义县| 论坛| 广昌县| 布拖县| 镇宁| 芦溪县| 龙门县| 库车县| 大宁县| 通化县| 土默特左旗| 清水县| 阿克苏市| 南皮县| 泗阳县| 大同市|