新聞中心

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

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

        作者: 時間:2016-09-12 來源:網絡 收藏

        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總線

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 洞口县| 原平市| 隆回县| 满洲里市| 陵川县| 余江县| 尼勒克县| 长宁县| 西贡区| 同江市| 平阳县| 简阳市| 乐都县| 边坝县| 松桃| 山丹县| 威宁| 稻城县| 宁明县| 平和县| 左云县| 青海省| 惠州市| 定陶县| 大港区| 大竹县| 左云县| 兴文县| 辽阳县| 佛山市| 顺平县| 湖南省| 贵阳市| 资讯 | 珠海市| 徐闻县| 比如县| 呼伦贝尔市| 日土县| 财经| 敖汉旗|