0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何才能更好實現(xiàn)CAN模塊之間數(shù)據(jù)傳輸

AGk5_ZLG_zhiyua ? 來源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2017-11-29 06:25 ? 次閱讀

ISO 11898-1定義了哪些內(nèi)容?相關(guān)項目如何測試?本文為您解讀。

一、關(guān)于ISO 11898

ISO是世界性的標(biāo)準(zhǔn)化組織,主要任務(wù)是制定國際標(biāo)準(zhǔn),協(xié)調(diào)世界范圍內(nèi)的標(biāo)準(zhǔn)化工作,與其他國際性組織合作研究有關(guān)標(biāo)準(zhǔn)化問題。IS0 11898由以下部分組成:

  • ISO11898-1:數(shù)據(jù)鏈路層和物理層信號

  • ISO11898-2:高速接入單元

  • ISO11898-3:低速容錯接入單元

  • ISO11898-4:時間觸發(fā)通訊

  • ISO11898-5:低功耗的高速接入單元

  • ISO11898-6:選擇性喚醒的高速接入單元

最新的ISO 11898-2、ISO 11898-5和ISO 11898-6已經(jīng)取代ISO 11898-2:2003、ISO 11898-5:2007和ISO 11898-6:2013。

二、ISO11898-1的定位

對比標(biāo)準(zhǔn)的OSI通訊協(xié)議模型,ISO 11898-1定義了CAN的數(shù)據(jù)鏈路層和部分物理層,如圖1。數(shù)據(jù)鏈路層和物理層具體可分為邏輯鏈路控制、媒介訪問控制、物理層編碼、物理層介質(zhì)、物理層媒介依賴。

圖1 ISO 11898的定位

三、適用范圍

ISO11898-1旨在實現(xiàn)CAN模塊之間數(shù)據(jù)鏈路層上的信息規(guī)范。控制器區(qū)域的網(wǎng)絡(luò)是一種串行通信協(xié)議,用于道路車輛和其他控制領(lǐng)域,支持分布式實時控制和多路復(fù)用。ISO11898-1:2015適用于經(jīng)典CAN幀與靈活CAN幀(CAN-FD)。經(jīng)典的CAN幀有效載荷達8個字節(jié),比特率最高允許1 Mbit/s。最新的CAN幀(CAN-FD)幀格式允許比特率高于1 mbit/s,并且有效載荷大于每幀8字節(jié)。新幀架構(gòu)(CAN-FD)兼容經(jīng)典幀結(jié)構(gòu)。

圖2 新舊幀關(guān)系

四、基本概念

SO11898-1詳細(xì)列舉出CAN總線涉及到的基本概念。具體細(xì)節(jié)請讀者參考原文,此處不再展開。

圖3 基本概念

四、CAN層體結(jié)構(gòu)

ISO 11898-1包含邏輯鏈接控制子層(LLC)、介質(zhì)訪問控制子層(MAC)、物理編碼子層(PCS)。其中LLC包括接受過濾、過載通知以及恢復(fù)管理;MAC層包括數(shù)據(jù)封裝與解封、幀編碼、介質(zhì)訪問管理、錯誤檢測、序列及反序列;PCS層包括位編碼、位解碼以及同步。

圖4 ISO 11898包含的規(guī)范

五、MAC數(shù)據(jù)的一致性

要傳送的消息是由LLC產(chǎn)生的,通過節(jié)點的控制器主機接口和數(shù)據(jù)鏈路層的子層傳輸?shù)組AC子層。MAC子層將把整個消息存儲在一個臨時緩沖區(qū)中,該緩沖區(qū)在傳輸開始之前被填充。當(dāng)傳送的信息被傳送到MAC的子層時,LLC子層應(yīng)檢查數(shù)據(jù)錯誤。如果檢測到數(shù)據(jù)錯誤,就不會啟動傳輸。如果在檢測到數(shù)據(jù)錯誤時已經(jīng)啟動,那么節(jié)點將被切換到總線監(jiān)控模式或進入受限的操作模式,接收節(jié)點將不會看到一條有效消息。

圖5 自動錯誤過濾

六、錯誤及恢復(fù)

為了避免設(shè)備因自身原因影響其他正常節(jié)點,11898-1固定每個CAN控制器都有一個發(fā)送錯誤計數(shù)器(TEC)和接收錯誤計數(shù)器(REC)。轉(zhuǎn)換流程如圖6。

  • 主動錯誤狀態(tài):這是設(shè)備正常狀態(tài),設(shè)備正常參加通信,當(dāng)檢測到錯誤時發(fā)送錯誤標(biāo)識。

  • 被動錯誤狀態(tài):檢測出錯誤后,設(shè)備將發(fā)送被動錯誤標(biāo)識。

  • 總線狀態(tài)關(guān)閉:因為自身嚴(yán)重問題使總線自身進入總線關(guān)閉狀態(tài),該狀態(tài)下無數(shù)據(jù)收發(fā)。

圖6 設(shè)備狀態(tài)轉(zhuǎn)換

七、一致性測試

CAN總線實際應(yīng)用中總會遇到很多問題,因此對總線的各個方面做一致性測試十分必要。CAN的一致性測試包括物理層一致性測試、數(shù)據(jù)鏈路層一致性測試、應(yīng)用層一致性測試。參考ISO 11898-1,可使用CANScope對CAN總線做數(shù)據(jù)鏈路層一致性測試,包括圖7內(nèi)的測試項目。

圖7 一致性測試項目

  • 采樣點測試:該測試旨在驗證CAN 控制器的波特率采樣點位置。采用干擾的手段,將采樣點位置的邏輯電平破壞,則這個 CAN 報文將出現(xiàn)錯誤。以此就可以確定干擾的位置為采樣點位置。

圖8 采樣點測試

  • CAN2.0B 兼容測試:測試被測設(shè)備DUT 是否能兼容CAN2.0B 的擴展幀,不會發(fā)出錯誤幀。根據(jù)GMW14242,要求在DUT在接收擴展幀時,不會有錯誤幀發(fā)出。測試平臺架構(gòu)如圖9所示。

圖9 CAN2.0B兼容性測試

  • 報文標(biāo)示符測試:測試被測DUT 發(fā)出的報文標(biāo)識符(ID)是否符合預(yù)期。根據(jù)ISO11898-1,要求在DUT在發(fā)送所有應(yīng)用報文,都具備正確的ID。如圖10在數(shù)據(jù)長度框、幀ID框內(nèi)進行關(guān)鍵字檢索,查找異常幀。

圖10 報文標(biāo)示符測試

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16133

    瀏覽量

    177147
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    57

    文章

    2701

    瀏覽量

    463183
  • 周立功
    +關(guān)注

    關(guān)注

    38

    文章

    130

    瀏覽量

    37559

原文標(biāo)題:【CAN高階】帶您認(rèn)識ISO11898-1:數(shù)據(jù)鏈路層和物理層信號

文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    【OK210申請】無線數(shù)據(jù)傳輸模塊設(shè)計

    和單片機的接口電路。(3) 編寫控制無線數(shù)據(jù)傳輸器件進行數(shù)據(jù)。目標(biāo):(1) 單片機系統(tǒng):通過串口傳輸向上位機發(fā)送數(shù)據(jù),同時,控制無線數(shù)據(jù)傳輸
    發(fā)表于 07-24 10:39

    基于SDRAM的u***與pc之間數(shù)據(jù)傳輸資料

    請問各位大神有沒有基于SDRAM的u***與pc之間數(shù)據(jù)傳輸資料啊,急用!
    發(fā)表于 11-27 08:30

    請問怎么驗證Hyperlink的片間數(shù)據(jù)傳輸功能?

    本帖最后由 一只耳朵怪 于 2018-6-25 10:07 編輯 貴公司目前只推出了開發(fā)板,上面只有一個dsp芯片,怎么驗證Hyperlink的片間數(shù)據(jù)傳輸功能?
    發(fā)表于 06-25 06:23

    無線數(shù)據(jù)傳輸模塊的實際應(yīng)用

    數(shù)據(jù)傳輸模塊的實際應(yīng)用一、智能安防安防是物聯(lián)網(wǎng)的一大應(yīng)用市場,傳統(tǒng)安防對人員的依賴性比較大,非常耗費人力,而智能安防能夠通過設(shè)備實現(xiàn)智能判斷。目前,智能安防最核心的部分在于智能安防系統(tǒng),該系統(tǒng)中應(yīng)用無線
    發(fā)表于 06-18 04:21

    openmv與STM32之間數(shù)據(jù)傳輸怎么實現(xiàn)?

    openmv與STM32之間數(shù)據(jù)傳輸怎么實現(xiàn)?
    發(fā)表于 12-13 07:35

    如何正確實現(xiàn)EndDevice和Coordinator之間數(shù)據(jù)傳輸

    無法將數(shù)據(jù)從Coordinator傳輸到EndDevice。雖然模板提供了數(shù)據(jù)傳輸的功能,但它并沒有告訴我如何以及在哪里調(diào)用該功能。所以我需要你幫助告訴我如何正確實現(xiàn)EndDevice
    發(fā)表于 03-24 08:38

    WNS無線數(shù)據(jù)傳輸模塊

      WNS是為傳感器實現(xiàn)無線網(wǎng)絡(luò)數(shù)據(jù)傳輸而設(shè)計的產(chǎn)品。該產(chǎn)品有嵌入式無線數(shù)據(jù)傳輸模塊和獨立部件可滿足各類傳感器配套選擇。
    發(fā)表于 09-25 17:20 ?13次下載
    WNS無線<b class='flag-5'>數(shù)據(jù)傳輸</b><b class='flag-5'>模塊</b>

    Linux0.11-內(nèi)核和用戶空間的數(shù)據(jù)傳輸

    內(nèi)核空間數(shù)據(jù)段的選擇符為0x10,用戶空間數(shù)據(jù)段選擇符為0x17。內(nèi)核空間、用戶空間之間數(shù)據(jù)傳輸,是段間數(shù)據(jù)傳輸。C語言中的賦值語句編譯成
    發(fā)表于 05-15 15:34 ?1144次閱讀

    一種面向MapReduce的中間數(shù)據(jù)傳輸流水線優(yōu)化機制

    送給 Reducer任務(wù),由此導(dǎo)致的大量傳輸延遲成為 Mapreduce框架性能的重要瓶頸。為此,文中提出了一種面向 Mapreduce的中間數(shù)據(jù)傳輸流水線優(yōu)化機制,將有效計算與中間數(shù)據(jù)傳輸解耦,以流水線的方式重疊執(zhí)行各個階段,
    發(fā)表于 04-13 14:19 ?4次下載
    一種面向MapReduce的中<b class='flag-5'>間數(shù)據(jù)傳輸</b>流水線優(yōu)化機制

    無線數(shù)據(jù)傳輸模塊的功能特點

    無線數(shù)據(jù)傳輸模塊主要采用RS485通訊方式,將有線采集端的數(shù)據(jù)傳送到模塊中,再以無線方式進行數(shù)據(jù)傳輸
    發(fā)表于 07-20 10:21 ?1622次閱讀

    如何在主機和主機之間實現(xiàn)數(shù)據(jù)傳輸優(yōu)化

      這篇文章的重點是提高數(shù)據(jù)傳輸的效率。在 下一篇文章 中,我們討論了如何將數(shù)據(jù)傳輸與計算和其他數(shù)據(jù)傳輸重疊。
    的頭像 發(fā)表于 04-11 10:32 ?2207次閱讀
    如何在主機和主機<b class='flag-5'>之間</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>數(shù)據(jù)傳輸</b>優(yōu)化

    如何實現(xiàn)MQTT協(xié)議數(shù)據(jù)傳輸?

    如何實現(xiàn)MQTT協(xié)議數(shù)據(jù)傳輸? 隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,越來越多的設(shè)備和應(yīng)用需要實現(xiàn)互聯(lián)互通。而MQTT作為一種輕量級的發(fā)布/訂閱消息傳輸協(xié)議,在物聯(lián)網(wǎng)領(lǐng)域應(yīng)用廣泛,成為了許多設(shè)備
    的頭像 發(fā)表于 11-15 17:23 ?1089次閱讀

    虹科方案 | 如何破解CAN與車載以太網(wǎng)之間數(shù)據(jù)傳輸和協(xié)議轉(zhuǎn)換的難題?

    在車輛網(wǎng)絡(luò)時代,數(shù)據(jù)傳輸和協(xié)議轉(zhuǎn)換在通信領(lǐng)域中扮演著至關(guān)重要的角色。它們不僅能夠實現(xiàn)車輛內(nèi)部系統(tǒng)之間的互聯(lián)互通,還支持車輛與外部網(wǎng)絡(luò)進行通信,從而為駕駛者帶來更智能、便捷的駕駛體驗。本文將介紹
    的頭像 發(fā)表于 11-27 09:55 ?867次閱讀
    虹科方案 | 如何破解<b class='flag-5'>CAN</b>與車載以太網(wǎng)<b class='flag-5'>之間數(shù)據(jù)傳輸</b>和協(xié)議轉(zhuǎn)換的難題?

    CAN轉(zhuǎn)以太網(wǎng)模塊數(shù)據(jù)傳輸時有時無的問題如何解決?

    CAN轉(zhuǎn)以太網(wǎng)模塊數(shù)據(jù)傳輸時有時無的問題可能由多種原因引起。
    的頭像 發(fā)表于 05-17 09:19 ?405次閱讀

    CAN總線數(shù)據(jù)傳輸速率設(shè)置

    CAN(Controller Area Network)總線是一種串行通信協(xié)議,主要用于汽車和工業(yè)控制系統(tǒng)中,以實現(xiàn)電子控制單元(ECU)之間的通信。CAN總線的
    的頭像 發(fā)表于 11-12 10:03 ?79次閱讀