chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

【CAN總線知識】為什么CAN節(jié)點ID不能相同?

ZLG致遠電子 ? 2024-08-30 12:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

CAN-bus網(wǎng)絡中原則上不允許兩個及以上節(jié)點具有相同的ID段,但如果兩個及以上節(jié)點ID相同會怎樣呢?資深強迫癥患者想一探究竟!


實驗前,我們首先要對CAN報文的結(jié)構(gòu)組成、仲裁原理有清晰的認識。


24a157dc-668b-11ef-89ff-92fbcf53809c.jpg ?CAN報文結(jié)構(gòu)

目前使用最廣泛的CAN-bus網(wǎng)絡標準是V2.0版本,該標準又分為A、B兩部分,它們主要的區(qū)別在仲裁區(qū)域的ID碼長度。其中CAN2.0A(標準幀)為11位ID,CAN2.0B(擴展幀)為29位ID。下表1為CAN報文結(jié)構(gòu):圖1CAN報文結(jié)構(gòu) 24b85ca2-668b-11ef-89ff-92fbcf53809c.png

仲裁原理

CAN總線的仲裁是基于“線與原理”,如圖1所示。當收發(fā)器同時發(fā)出不同電平信號時,隱性電平總是被顯性電平覆蓋。CAN控制器在發(fā)送報文的同時會監(jiān)聽總線狀態(tài)與自己發(fā)送的電平是否一致,如果不一致發(fā)生在ID段則會發(fā)生仲裁,如果發(fā)生在其他區(qū)域則會觸發(fā)相應錯誤。

24dec180-668b-11ef-89ff-92fbcf53809c.png

圖1 線“與”示意圖下面進入重點,如果兩個節(jié)點ID段相同會怎樣?我們用兩個CAN卡和一臺CANScope開始實驗,CAN卡模擬CAN標準節(jié)點收發(fā)報文,CANScope做通信監(jiān)控,如圖2所示。(注:CAN卡為USB轉(zhuǎn)CAN工具,CANScope為CAN總線分析儀,產(chǎn)品詳見致遠電子官網(wǎng)zlg.cn

24fbc94c-668b-11ef-89ff-92fbcf53809c.png

圖2 實驗平臺搭建


24a157dc-668b-11ef-89ff-92fbcf53809c.jpg ?實驗一:ID段相同但數(shù)據(jù)不同

使用一個CAN卡發(fā)送ID為000H數(shù)據(jù)為01020304050607H的CAN幀,使用另一個CAN卡發(fā)送ID為000H數(shù)據(jù)為02020304050607H的CAN幀。CANScope監(jiān)聽的數(shù)據(jù)如圖3所示,可以觀察到有大量的數(shù)據(jù)場填充錯誤。

25264c1c-668b-11ef-89ff-92fbcf53809c.png

圖3 數(shù)據(jù)場填充錯誤為什么會這樣呢?我們首先分別獲取兩個CAN卡發(fā)送報文對應的波形,如圖4。因為兩幀報文同為標準數(shù)據(jù)幀,且每幀包含8個字節(jié)數(shù)據(jù),所以兩幀報文對應的波形在ID段、RTR、IDE、R0以及DLC段完全一致。因此,仲裁作用失效,兩節(jié)點都認為自己獲得了優(yōu)先權(quán),繼續(xù)發(fā)送數(shù)據(jù)。

2541febc-668b-11ef-89ff-92fbcf53809c.png

圖4 報文對應波形對比現(xiàn)在我們聚焦數(shù)據(jù)段,第一個字節(jié)數(shù)據(jù)相同,均為為00H;第二個字節(jié)數(shù)據(jù)不同,分別為01H、02H。圖5箭頭標示處可以看到兩者對應位的邏輯分別為0和1。前面我們提到CAN節(jié)點在發(fā)送報文的同時會檢測總線電平是否與自己發(fā)送的電平一致,若不一致發(fā)生在非仲裁區(qū)域則觸發(fā)相應錯誤,因此若這兩幀報文同時發(fā)送到總線上必將發(fā)生位發(fā)送錯誤。因為位發(fā)送錯誤會引起節(jié)點發(fā)送違反填充規(guī)則的6個顯性位(主動錯誤破壞該幀數(shù)據(jù)),故出現(xiàn)數(shù)據(jù)場填充錯誤,如圖3。

2569bee8-668b-11ef-89ff-92fbcf53809c.png

圖5 數(shù)據(jù)場沖突
24a157dc-668b-11ef-89ff-92fbcf53809c.jpg ?實驗二:ID相同數(shù)據(jù)也相同同時使用兩個CAN卡發(fā)送ID為000H數(shù)據(jù)為01020304050607H的CAN幀,CANScope做通信監(jiān)控。首先,我們不勾選“總線應答”選項,使CANScope工作在僅監(jiān)聽模式。實驗結(jié)果如圖6所示,出現(xiàn)的是應答定界符格式錯誤。

258c6100-668b-11ef-89ff-92fbcf53809c.png

圖6 應答界定符格式錯誤為什么會發(fā)生這種錯誤呢?發(fā)送報文的節(jié)點會在ACK段發(fā)送兩個隱性位,若在第一個位期間接收到顯性電平則認為該幀被正確接收。由于仲裁段相同時兩節(jié)點都認為自己取得仲裁權(quán),在ACK段等待應答,但該網(wǎng)絡中僅存在兩個節(jié)點,因此在ACK段不能收到應答,進而發(fā)生應答定界符錯誤。簡單說來這種情形就類似于總線中只有一個節(jié)點將不能實現(xiàn)數(shù)據(jù)發(fā)送。圖7是在ACK段有無應答時的波形對比。

25ad9406-668b-11ef-89ff-92fbcf53809c.png

圖7 ACK應答我們勾選上總線應答,再次開始實驗(此時總線中相當于有3個節(jié)點)。這時如圖8所示,總線數(shù)據(jù)收發(fā)正常。

25ccd6a4-668b-11ef-89ff-92fbcf53809c.png

圖8 啟動總線應答

24a157dc-668b-11ef-89ff-92fbcf53809c.jpg ?總結(jié)

當兩節(jié)點同時發(fā)送ID相同數(shù)據(jù)不同的報文時,將發(fā)生數(shù)據(jù)場填充錯誤;當兩節(jié)點同時發(fā)送ID相同數(shù)據(jù)也相同的報文時,若有其他節(jié)點應答則不發(fā)生錯誤,若無其他節(jié)點應答則發(fā)生應答錯誤。因此,我們在設計CAN總線時應避免ID段相同的情況出現(xiàn)。

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

    關注

    10

    文章

    3742

    瀏覽量

    109767
  • CAN總線
    +關注

    關注

    145

    文章

    2007

    瀏覽量

    134162
  • 網(wǎng)絡
    +關注

    關注

    14

    文章

    8019

    瀏覽量

    92172
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    CAN總線節(jié)點ID相同會怎樣?

    CAN-bus網(wǎng)絡中原則上不允許兩個節(jié)點具有相同ID段,但如果兩個節(jié)點ID
    發(fā)表于 08-31 15:38 ?3050次閱讀

    CAN-bus網(wǎng)絡中,出現(xiàn)具有相同ID段的兩個節(jié)點會發(fā)生什么?

    CAN-bus網(wǎng)絡中原則上不允許兩個節(jié)點具有相同ID段,但如果兩個節(jié)點ID
    的頭像 發(fā)表于 09-14 14:03 ?1.1w次閱讀
    <b class='flag-5'>CAN</b>-bus網(wǎng)絡中,出現(xiàn)具有<b class='flag-5'>相同</b><b class='flag-5'>ID</b>段的兩個<b class='flag-5'>節(jié)點</b>會發(fā)生什么?

    基于CAN總線的煤礦瓦斯報警節(jié)點系統(tǒng)的設計

    文章介紹了一種基于CAN 總線的煤礦瓦斯報警節(jié)點系統(tǒng)的設計,給出了基于CAN 總線的智能監(jiān)控節(jié)點
    發(fā)表于 03-30 16:40 ?47次下載

    CAN總線節(jié)點電路的設計與實現(xiàn)

    CAN 總線作為一種現(xiàn)場總線,應用極為普及。本文給出了一種基于AT89C51 和SJA1000 的CAN 總線
    發(fā)表于 05-25 13:26 ?61次下載

    基于CAN總線智能節(jié)點設計

    CAN總線是一種應用極為普及的現(xiàn)場總線。文中提出了一種CAN總線通信接口的設計方案。CAN
    發(fā)表于 01-25 15:04 ?52次下載

    CAN總線系統(tǒng)智能節(jié)點設計

    摘要:CAN總線上的節(jié)點是網(wǎng)絡上的信息接收和發(fā)送站;智能節(jié)點能通過編程設置工作方式、ID、地址、波特率等參數(shù)。它主要由單片機和可編程的
    發(fā)表于 12-20 22:18 ?45次下載

    基于CAN總線的智能節(jié)點設計

    應用51單片機為控制核心結(jié)合其他的器件設計了一種能連接于CAN總線上的智能節(jié)點。通過單片機控制CAN總線控制器SJA1000,并進一步通過
    發(fā)表于 01-10 16:54 ?120次下載

    CAN總線節(jié)點ID相同會出現(xiàn)什么

    CAN-bus網(wǎng)絡中原則上不允許兩個節(jié)點具有相同ID段,但如果兩個節(jié)點ID
    發(fā)表于 11-12 10:52 ?8次下載
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>中<b class='flag-5'>節(jié)點</b><b class='flag-5'>ID</b><b class='flag-5'>相同</b>會出現(xiàn)什么

    can總線id如何定義設置?

    can總線ID是指標識符。也就是一個can節(jié)點的地址或者說名字。網(wǎng)絡中識別某一節(jié)點的信息。
    發(fā)表于 11-27 10:30 ?11w次閱讀

    CAN總線節(jié)點軟件的設計與實現(xiàn)

    CAN總線節(jié)點軟件的設計與實現(xiàn)說明。
    發(fā)表于 04-19 16:59 ?20次下載

    關于CAN總線錯誤的相關知識

    在本系列文章中,我們將為您詳細介紹CAN總線錯誤的相關知識,包括CAN總線錯誤的基礎概念、CAN
    的頭像 發(fā)表于 05-27 17:56 ?3686次閱讀

    CAN總線錯誤的類型介紹

    在本系列文章中,我們將為您詳細介紹CAN總線錯誤的相關知識,包括CAN總線錯誤的基礎概念、CAN
    的頭像 發(fā)表于 06-13 16:08 ?9005次閱讀

    CAN總線基礎知識

    CAN總線是一種常用的總線,對于剛開始接觸CAN總線的,面對著各式各樣的資料,可能不知道從何看起,今天科普一下
    的頭像 發(fā)表于 02-09 15:43 ?4995次閱讀

    基于FPGA的CAN總線通信節(jié)點設計

    點擊上方 藍字 關注我們 摘要:以FPGA 代替?zhèn)鹘y(tǒng)的單片機和外圍擴展芯片, 給出了CAN 總線通信節(jié)點的詳細設計方案。其中以SJA1000為CAN
    的頭像 發(fā)表于 06-18 11:15 ?3874次閱讀

    基于CAN總線的智能節(jié)點設計

    電子發(fā)燒友網(wǎng)站提供《基于CAN總線的智能節(jié)點設計.pdf》資料免費下載
    發(fā)表于 10-20 14:44 ?21次下載
    基于<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>的智能<b class='flag-5'>節(jié)點</b>設計