那曲檬骨新材料有限公司

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

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

3天內不再提示

CAN總線波形中為什么ACK電平偏高?

ZLG致遠電子 ? 2024-03-28 08:23 ? 次閱讀

在觀察CAN通信波形時,我們會發現差分電平在ACK段突然增高,這是什么原因導致的呢?本文結合測試實例對ACK電平偏高的原因做簡單分析。

74700860-ec99-11ee-9118-92fbcf53809c.jpg ?ACK簡介

ACK的作用:確認一幀報文是否正常接收。
以標準數椐幀為例,從結構上看分成7段,分別為起始段、仲裁段、控制段、數椐段、CRC校驗段、ACK應答段、幀結束段,如圖1所示:

7476c2c2-ec99-11ee-9118-92fbcf53809c.jpg

圖1 標準數椐幀結構ACK段長度為2個位,包含應答間隙(ACK SLOT)和應答界定符(ACK DELIMITER)。在應答場里,發送站發送兩個“隱性”位。當接收器正確地接收到有效的報文,接收器就會在應答間隙(ACK SLOT)期間(發送ACK信號)向發送器發送一“顯性”的位以示應答。如圖2(CANScope測試的ACK段波形圖)所示:

747bce5c-ec99-11ee-9118-92fbcf53809c.png

圖2 ACK應答位結構

應答間隙:所有接收到匹配CRC序列(CRC SEQUENCE)的節點會在應答間隙(ACK SLOT)期間用一“顯性”的位寫入發送器的“隱性”位來作出回答,由于CAN總線線與的原理,只要總線上有一個節點正確接收到數據,則ACK SLOT就會被填入顯性電平。

ACK界定符:ACK界定符是ACK場的第二個位,并且是一個必須為“隱性”的位。因此,應答間隙(ACK SLOT)被兩個“隱性”的位所包圍,也就是CRC界定符(CRC DELIMITER)和ACK界定符(ACK DELIMITER)。

當一個接收節點接收的幀起始到CRC段之間的內容沒發生錯誤時,它將在ACK段發送一個顯性電平。如圖3所示:

74945756-ec99-11ee-9118-92fbcf53809c.png

圖3 ACK應答過程分析

7499dcd0-ec99-11ee-9118-92fbcf53809c.jpg ?CAN總線ACK電平偏高原因分析

以使用ZLG致遠電子ZPS-CANFD測試某電車CAN網絡為例,20多個CAN節點采用手牽手方式組網,線兩端各接120歐電阻,通訊能夠正常,但差分信號波形應答位電平偏高較多,如圖4所示,從CANScope的波形圖中可以清楚的看到ACK電平突增。

74a45be2-ec99-11ee-9118-92fbcf53809c.jpg

圖4 CAN數椐幀波形分析

CAN總線通信存在異常?ACK應答有問題?——NO.

分析如下:

首先,我們看一款CAN收發器的典型內部結構圖,CANH、CANL連接總線。

74a8407c-ec99-11ee-9118-92fbcf53809c.jpg

圖5 CAN收發器的典型內部結構圖總線顯性時(邏輯為0),收發器內部Q1、Q2導通,CANH、CANL之間產生壓差;隱性時(邏輯為1),Q1、Q2截止,CANH、CANL處于無源狀態,壓差為0。

按照標準,在總線輸出為顯性時,CANH=3.5V,CANL=1.5V,差分分電平:CANH-CANL=2V,總線網絡電阻為60歐,流經終端電阻的電流約為33mA(2V/60歐);

然而,CAN收發器在輸出顯性時,CANH電平并不是標準的3.5V,而是5V(VCC)通過一個二極管降壓得到的,二極管的壓降由負載電流決定。圖6所示的VDH為CANH對應的二極管壓降,VDL為CANL對于的二極管壓降,流過的電流越大,二極管的壓降就越大。可知:

CANH的電壓=5V-VDHCANL的電壓=0V+VDL74af8224-ec99-11ee-9118-92fbcf53809c.png
圖6 AN收發器等效結構

在CAN總線網絡中,當一幀報文被各個節點接收時,在ACK階段,多個CAN節點同時響應(都發顯性),流過終端電阻的電流被各個CAN節點均分,那么平均到每個節點的電流就減小了,如下圖所示,VDH、VDL的壓降也減小,相應CANH-CANL的差分電壓就增大了,即ACK應答電平偏高。

74bd6510-ec99-11ee-9118-92fbcf53809c.png

圖7 CAN網絡等效結構

7499dcd0-ec99-11ee-9118-92fbcf53809c.jpg ?ACK的意義

當CAN總線上只有一個節點可收發數據時,總線上因無接收節點在ACK SLOT時間內發送“顯性”位填充,而始終保持隱性,發送者會檢測到這個隱性位而知道發送失敗,此條報文需要重發。因此這個節點會一直重發數據直到發送成功或發送被取消。當總線上有多個CAN節點組網通信時,由于總線電平線與的原理,只要總線上有一個節點正確接收到數據,則ACK SLOT就會被填入顯性電平(此時認為數據幀發送成功),那么,接收錯誤的節點如何來告知發送者此次發送不成功呢?這就要用到CAN的錯誤幀,當一個接收節點收到錯誤數據時,它立即廣播發送一個錯誤幀,其它的節點和發送者也都會收到這個錯誤幀而丟掉此次報文,發送節點重新發送,這才是ACK 的意義。

7499dcd0-ec99-11ee-9118-92fbcf53809c.jpg ?總結

作為國內CAN總線系統解決方案供應商,同時也是CIA協會在中國最主要的CAN總線技術傳播的窗口,目前廣州致遠電子的產品覆蓋了從分析診斷設備、接口轉換設備、到協議組網設備等全面系統的CAN總線產品家族,可為用戶提供完整的CAN總線解決方案。74d8d93a-ec99-11ee-9118-92fbcf53809c.png?

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • CAN總線
    +關注

    關注

    145

    文章

    1955

    瀏覽量

    131087
  • 接收器
    +關注

    關注

    14

    文章

    2479

    瀏覽量

    72212
  • ACK
    ACK
    +關注

    關注

    0

    文章

    28

    瀏覽量

    11178
收藏 人收藏

    評論

    相關推薦

    什么是CAN總線通信?CAN總線工作原理

    這意味著變送器通過CAN收發器改變總線電平,并將其信息傳輸到CAN總線。接收器通過監測總線
    發表于 02-19 14:53 ?6955次閱讀
    什么是<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>通信?<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>工作原理

    CAN總線幾種正常的“異常”波形

    CAN波形一定都是標標準準的方波嗎?其實并非如此,今天就把CAN總線上的幅值“異常”歸歸類。CAN-bus信號產生原理眾所周知,一個標準
    的頭像 發表于 06-26 08:25 ?3281次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>幾種正常的“異常”<b class='flag-5'>波形</b>

    ADM3053在CAN總線上顯示錯誤的信號電平如何解決?

    的檢測,因為“丟失的”ACK將導致出現此錯誤幀。我們無法通過ADM3053觸發數據流的丟失位,但根據我的觀點,如果ACK位丟失,所有其他位也可能丟失。丟失意味著邏輯低電平(必須是
    發表于 01-03 09:00

    CAN總線測試,示波器測量差分信號波形發現應答位電平偏高很多,這個是怎么回事,有何影響,如何處理?

    應答位電平偏高很多,模塊少一點相對會低一點,僅當只有兩個模塊時應答位電平才和正常數據顯性電平一制,不知道這個是怎么產生的,會不會影響到通訊或芯片壽命。下圖附示波器
    發表于 10-27 11:39

    CAN報文中ACK應答錯誤的檢測原理

    的含義。 下面我們通過一個實例來看看CAN節點是如何進行ACK SLOT的動作的。我們抓取一個總線上面的信號波形,此波形已經是通過82C25
    發表于 07-02 05:22

    ADM3053在CAN總線上顯示錯誤的信號電平

    ADM3053偶爾出現問題。癥狀是ADM3053沒有通過ACK正確確認CAN消息。ADM3053后的CAN控制器嘗試發送主動電平,但ADM3053在
    發表于 12-05 09:17

    CAN總線波形為什么ACK電平偏高

    CAN總線一直以實時性強、傳輸距離遠、抗干擾能力強、數據保證到達等特點而廣泛應用于高可靠性的場合。但常常在觀察CAN通信波形時,我們會發現差分電平
    發表于 07-05 15:08 ?9571次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b><b class='flag-5'>波形</b><b class='flag-5'>中</b>為什么<b class='flag-5'>ACK</b><b class='flag-5'>電平</b><b class='flag-5'>偏高</b>?

    CAN總線波形為什么ACK電平偏高

    CAN總線一直以實時性強、傳輸距離遠、抗干擾能力強、數據保證到達等特點而廣泛應用于高可靠性的場合。
    發表于 07-11 15:45 ?19次下載

    CAN總線是什么?CAN總線數據鏈路層又是什么?

    CAN 總線的物理連接只需要兩根線,常稱為 CAN_H 和 CAN_L,通過差分信號進行數據的傳輸。CAN
    發表于 07-11 16:31 ?1.3w次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>是什么?<b class='flag-5'>CAN</b><b class='flag-5'>總線</b>數據鏈路層又是什么?

    CAN總線定義與CAN協議的基本概念

    CAN-H和CAN-L)的電位差來確定總線電平,在任一時刻,總線上有2種電平:顯性
    發表于 12-27 13:40 ?3.2w次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>定義與<b class='flag-5'>CAN</b>協議的基本概念

    CAN總線波形ACK電平為什么會偏高

    摘要:如果CAN總線中有多個節點,在某一點測試CAN總線波形(CANH和CANL之間)時,會發現在一幀數據的末尾
    發表于 06-14 13:44 ?4656次閱讀

    CAN總線的顯性電平與隱性電平

    CAN總線的書時,都會涉及到總線電平的問題,CAN總線
    發表于 04-19 16:58 ?21次下載

    高速CAN總線和低速CAN總線區別分析

    高速CAN總線上為顯性電平(邏輯0)時,CAN_H為3.5V、CAN_L為1.5V,此時電壓差是2V,顯性狀態的
    發表于 09-13 16:57 ?4881次閱讀

    CAN總線電平邏輯介紹

    分傳輸,為了避免信號的反射和干擾,還需要在CAN_H和CAN_L之間接上120歐姆的終端電阻。 每一個設備既可做主設備也可做從設備。CAN總線的通信距離可達10千米(速率低于5Kbps
    的頭像 發表于 11-09 18:11 ?1796次閱讀
    <b class='flag-5'>CAN</b><b class='flag-5'>總線</b>和<b class='flag-5'>電平</b>邏輯介紹

    can總線的故障波形有哪些

    詳細介紹CAN總線的故障波形及其原因和解決方法。 故障波形概述 故障波形是指在CAN
    的頭像 發表于 06-16 10:04 ?2065次閱讀
    百家乐官网庄闲统计数| 百家乐怎么赢对子| 威尼斯人娱乐城是真的吗| 安平县| 赌片百家乐官网的玩法技巧和规则| 威尼斯人娱乐城首选金杯娱乐城| 百家乐官网博彩优惠论坛| 百家乐象棋赌博| e世博官网| 24山是什么意思| 黄金岛棋牌游戏下载| 战神百家乐官网的玩法技巧和规则 | 大众娱乐城| 菠菜百家乐娱乐城| 娱乐城棋牌| 网上百家乐哪家最好| 鸡西市| 象山县| 百家乐出千方法技巧| 百家乐官网一代龙虎机| 海尔百家乐的玩法技巧和规则| 习水县| 百家乐技巧公司| 网上百家乐官网如何作假| 玩百家乐掉房| 百家乐官网五种路单规| 顶级赌场官方网站| 菲律宾百家乐游戏| 云霄县| 永利百家乐娱乐网| 百家乐官网推饼| 大发888官网注册| 百家乐娱乐城彩金| 网上百家乐官网心得| 赌博百家乐官网弱点| 大发888优惠代码| 百家乐是不是有技巧| 百家乐官网庄闲收益率| 大发888娱乐城手机| 百家乐路单下注| 海立方百家乐官网赢钱|