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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

can协议crc计算_详解CAN/CAN FD通信中的循环冗余校验(CRC)方法

發布時間:2024/7/5 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 can协议crc计算_详解CAN/CAN FD通信中的循环冗余校验(CRC)方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數據校驗是為保證數據的完整性進行的一種驗證操作。CAN通信采用CRC校驗作為一種重要的錯誤檢測手段,是節點判斷CAN幀信息的完整性并產生確認應答的依據。

在現場總線通信和控制的實際應用中,工業應用環境往往是極端的溫度以及電磁噪聲或是其他的惡劣環境,系統在這種條件下能否正常工作至關重要,試想一下倘若生產線設備發送的位置信息在傳輸過程出現了錯誤,輕則可能造成生產癱瘓,重則可能導致設備損壞甚至人員傷害。

在CAN總線通信過程中CAN控制器具備完整的錯誤檢測能力,其中包含:位錯誤檢測、格式錯誤檢測、填充錯誤檢測、應答錯誤檢測和CRC錯誤檢測。作為一種重要的錯誤檢測手段,CRC錯誤檢測是接收節點判斷CAN幀信息的完整性并向總線確認應答的依據。

常見的校驗方法

1、最簡單的校驗是數據發送后進行主動回讀,結果一致才確認傳輸成功,很顯然這種傳輸溝通的方式很直觀并非常精準,但是由于回讀的操作使得數據傳輸量翻倍,也就是傳輸對帶寬要求高且效率低下。

2、奇偶校驗,就是傳輸中使用額外1個位來記錄傳輸數據二進制數中1的個數是奇數還是偶數,這個方案適合絕大多數硬件,傳輸開銷適中,因此被廣泛使用,例如常見的串口通信。

3、累加和校驗,該算法原理是對數據逐一進行累加后得到一個數值,接收方在接收數據同時也進行數據的累加并最終與發送過來的累加和進行比較,該算法計算簡單,無論在硬件或是軟件實現都能保證較高的效率,常用于低速串行數據通信校驗和芯片代碼的完整性判斷。

4、CRC檢驗,該算法是基于一個多項式除法取余的結果,其根據位數需求和多項式變化有數十種版本,憑借其硬件實現簡單,位反轉偵錯能力較強及運算開銷適中的優點被廣泛應用與數字網絡傳輸以及數據存儲領域,如磁盤數據校驗、USB、GSM/CDMA通信,在計算機應用中經常接觸到的RAR和ZIP文件的壓縮/解壓數據完整性檢查也采用了該算法。

5、MD5、SHA為代表的信息摘要校驗,數據摘要算法也被稱為哈希(Hash)算法、散列算法,摘要算法用于數據量比較大的場合。它通過對所有數據提取指紋信息以實現數據簽名、數據完整性校驗等功能,由于其不可逆性,有時候會被用做敏感信息的加密,如軟件注冊授權文件的內容保護,還有經常遇到的互聯網下載大文件(例如大小到GB級別的ISO鏡像)通常會帶有MD5、SHA1等信息方便用戶檢查傳輸數據的完整性。

CAN幀中的CRC檢驗

1、CRC域在CAN幀中的位置

圖1

如圖1橙色塊方框所示,一個傳統CAN幀結構中,CRC域放置在數據結束后應答檢測之前,對于CAN FD也是相同的位置,該信息對于用戶應用界面來說是不可見的,可以通過CANscope總線分析儀解碼窗口或者帶有CAN協議解碼能力的示波器從總線模擬波形上得到對應的CRC數據展示,見圖2。

圖2

2、CRC的在CAN幀中的生成

在經典CAN中,使用15位CRC,在硬件可使用移位和異或運算完成CRC的計算,而CAN FD規范中對幀數據長度進行了擴展,對于數據長度小于等于16字節的CAN FD幀,采用17位CRC,對于數據長度大于16字節的CAN FD幀采用21位CRC。CAN總線中使用的若干版本CRC生成多項式g整理如表1所示。

表1

3、CRC是如何完成校驗工作的

CAN幀基于CRC多項式的安全校驗是發送器根據發送的比特計算校驗值,并在CAN幀結構CRC字段中提供該結果。接收器使用相同的多項式來計算總線上所見位的校驗值,將自我計算的校驗值與接收的校準值進行比較,如果匹配,則認為幀被正確接收,接收節點在ACK時隙位中發送顯性狀態,從而覆蓋發送器的隱性狀態。在不匹配的情況下,接收節點在ACK定界符之后發送錯誤幀。

目前CAN FD的控制器CRC校驗實現過程會相對復雜一點,在一個CAN總線網絡中,幀起始被檢測到后所有的節點開始使用三組多項式g15、g17和g21同步計算CRC序列,其中也包含發送節點,由于CRC的計算受CAN幀類型和DLC長度影響,直到CAN幀的控制域以及DLC確認后才選擇采用對應的CRC生成序列,確定的CRC序列會在幀結構中CRC字段被采納用于發送或者用于接收比較。

4、有關CRC的ISO CAN FD、non-ISO CAN FD兼容性問題

當前CAN FD協議有兩個版本,為提高故障(錯誤)檢測能力,新版本特別引入了一個3位填充位計數器和一個額外的奇偶校驗位。此外,CRC計算方法也發生了變化。這些改進使最新的CAN FD協議與博世(BOSCH)開發的原始CAN FD協議不兼容。負責ISO的工作組已完成其文件,并已將其提交給DIS(國際標準草案)在進行投票程序。

為了避免誤解,CiA建議使用術語“ISO CAN FD”和“non-ISO CAN FD”。所有符合ISO 11898-2:2015的產品都應稱為“ISO CAN FD”。執行博世(BOSCH)原始CAN FD協議的產品應命名為“non-ISO CAN FD”,在這個過度階段的產品主要目的是用于前期評估和開發,將來所有產品都將符合ISO標準。

請注意,早前一些供應商提供的組件或者工具是針對non-ISO CAN FD協議的,包括目前在售的部分CAN FD產品,CiA建議僅使用ISO CAN FD產品進行設計和開發,不過你可繼續使用non-ISO CAN FD做評估和前期開發,因為協議的改變對于用戶界面是不可見,但注意的是不能同一個網絡混用non-ISO CAN FD和ISO CAN FD接口設備,這樣會造成CAN總線錯誤無法完成發送和接收,如果僅僅是發送或接收傳統的CAN幀將不會受到任何影響,幸運的是部分設備供應商提供的組件或者工具允許用戶選擇支持ISO或者non-ISO模式,這樣能很好地在過渡時期幫助你完成工作。

總結

傳統CAN以及目前CAN FD采取的校驗機制,保證傳輸過程中遭受破壞的幀數據幾乎不會被接收以及應答成功,能有效防止物理層傳輸錯誤,讓用戶界面不需要額外關注幀傳輸數據的正確性。

總結

以上是生活随笔為你收集整理的can协议crc计算_详解CAN/CAN FD通信中的循环冗余校验(CRC)方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美黄大片 | 日韩网站免费 | 久久国产麻豆 | 草莓视频在线观看入口w | 少妇名器的沉沦 | 天堂色播 | 无套内谢的新婚少妇国语播放 | 欧美日韩在线影院 | 亚洲一二三四 | 亚洲理论视频 | 高清av免费 | 精品国产乱码一区二区 | 黑料视频在线 | 波多野结衣乳巨码无在线 | 国产福利精品在线 | 亚洲成人av电影 | 四虎影院永久 | 在线a级| 欧美三级色图 | 白丝女仆被免费网站 | 国产经典自拍 | 香港台湾日本三级大全 | 国产欧美一区二区三区鸳鸯浴 | ass东方小嫩模pics | 在线色资源 | 日韩毛片在线 | 激情久久网站 | 三级理伦| a色网站 | 精品深夜av无码一区二区老年 | 欧美精品四区 | 成人gav| 又色又爽又黄18网站 | 成人午夜免费毛片 | 91看篇| 不卡日本视频 | 国产乱码久久久 | 久久精品牌麻豆国产大山 | 亚洲视频五区 | 久久久精品免费视频 | 午夜少妇视频 | 男女免费网站 | 永久毛片 | 日韩精品一区二区三区电影 | av一级免费 | 中文无码一区二区三区在线观看 | 成人动漫一区二区三区 | 天天曰夜夜曰 | 日韩中文久久 | 亚洲色图综合网 | 亚洲春色av | 在线sese| 黄色的网站在线观看 | 草草视频网站 | 亚洲制服另类 | 一区二区三区四区av | 在线中文字幕一区 | 91大神在线看 | 神马午夜一区 | 一区二区三区高清 | 日韩欧美中文字幕一区二区三区 | 亚洲一区二区三区四区五区午夜 | 性色在线视频 | 草久影院 | 九久久| 色污网站 | 亚洲一区精品在线观看 | 国产成人手机在线 | 国产一区二区在线播放视频 | jizz一区二区 | 亚洲精品视频91 | 精品一区欧美 | 国产精品夜夜爽张柏芝 | 日韩五十路 | 少妇福利在线 | 天天爽夜夜爽视频 | 一区二区三区四区在线观看视频 | 欧美a网| 91精品国产综合久久精品图片 | 久久久久久久亚洲精品 | 大陆极品少妇内射aaaaa | 丰满人妻一区二区三区53视频 | 国产午夜毛片 | 欧美福利视频导航 | www精品国产 | 波多野av在线| 色噜噜狠狠成人中文 | 国产日韩网站 | 二区不卡 | 秋霞成人 | 日韩免费在线观看视频 | 潘甜甜在线| 亚洲欧美日韩成人在线 | 亚洲一区欧美二区 | 久草视频免费在线观看 | 午夜免费福利 | 久草这里只有精品 | 国产美女操 | 麻豆www.|