日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

汽车电子嵌入式技术篇(一) -CRC-8和CRC-16算法

發(fā)布時(shí)間:2023/12/2 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汽车电子嵌入式技术篇(一) -CRC-8和CRC-16算法 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1  什么是CRC校驗(yàn)

CRC8校驗(yàn)在整車通信系統(tǒng)中應(yīng)用比較廣泛,相當(dāng)于以前XOR(異或)的升級(jí)版,今天介紹下CRC8的校驗(yàn)算法。

當(dāng)我們要發(fā)送報(bào)文信息時(shí),為了避免傳輸過(guò)程的干擾,一般會(huì)在8字節(jié)的CAN報(bào)文中,增加Rolling counter和Checksum校驗(yàn)。Rolling counter 校驗(yàn),即滾動(dòng)計(jì)數(shù),是為了發(fā)現(xiàn)丟幀和漏幀情況,原理很簡(jiǎn)單,就是從0-15滾動(dòng)計(jì)數(shù),當(dāng)接收的Rolling counter 和自己計(jì)算的counter相等或相差2以上,那就可以判斷幀未對(duì)齊,或有丟幀、漏幀現(xiàn)象。

例如,Rolling counter代碼可以這么寫:

if ( RollingCounter < 15){ RollingCounter ++;}else{ RollingCounter = 0; }

Checksum,校驗(yàn)和,是為了發(fā)現(xiàn)同一時(shí)刻是否有錯(cuò)幀的情況,可以有效地降低數(shù)據(jù)的錯(cuò)誤率。而我們提到的CRC8校驗(yàn)算法,就是對(duì)一幀報(bào)文進(jìn)行校驗(yàn)和計(jì)算的算法。

2  CRC8的原理

在發(fā)送節(jié)點(diǎn),根據(jù)要傳送的m位二進(jìn)制碼序列,以一定的規(guī)則(CRC校驗(yàn)有不同的規(guī)則,在差錯(cuò)控制理論中稱為“生成多項(xiàng)式”)產(chǎn)生一個(gè)校驗(yàn)用的n位校驗(yàn)碼(CRC碼),附在原始報(bào)文中(一般在報(bào)文的最后位置),構(gòu)成一個(gè)新的二進(jìn)制碼序列數(shù)共m

總結(jié)

以上是生活随笔為你收集整理的汽车电子嵌入式技术篇(一) -CRC-8和CRC-16算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。