女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

CAN報(bào)文為什么會(huì)發(fā)送失敗?

ZLG致遠(yuǎn)電子 ? 2024-04-12 08:25 ? 次閱讀

CAN總線調(diào)試過程中出現(xiàn)報(bào)文發(fā)送失敗。很多工程師都對(duì)此只知其一不知其二,今天我們就以CAN報(bào)文發(fā)送失敗的問題來做一次探討。

在了解CAN報(bào)文為什么會(huì)發(fā)送失敗之前我們先看看一幀標(biāo)準(zhǔn)的CAN報(bào)文到底應(yīng)該是怎么樣的。表1是一幀正常標(biāo)準(zhǔn)數(shù)據(jù)幀的報(bào)文組成。
表1 標(biāo)準(zhǔn)數(shù)據(jù)幀報(bào)文格式組成24143244-f863-11ee-9118-92fbcf53809c.png

24197de4-f863-11ee-9118-92fbcf53809c.jpg

圖1 標(biāo)準(zhǔn)數(shù)據(jù)幀格式CAN總線是一種基于廣播的通訊方式,為了保證總線上的每一個(gè)正常節(jié)點(diǎn)都能正確的接收到報(bào)文,報(bào)文的發(fā)送者要求至少一個(gè)接收節(jié)點(diǎn)在報(bào)文發(fā)送結(jié)束前要作出應(yīng)答,這也是報(bào)文里ACK存在的原因。

一幀CAN報(bào)文中ACK段長(zhǎng)度為2個(gè)位,包含應(yīng)答間隙(ACK Slot)和應(yīng)答界定符(ACK Delimter)。在應(yīng)答場(chǎng)里,發(fā)送器發(fā)送兩個(gè)隱性位。當(dāng)接收器正確地接收到有效的報(bào)文,接收器就會(huì)在應(yīng)答間隙(ACK Slot)期間(發(fā)送ACK信號(hào))向發(fā)送器發(fā)送一“顯性”的位以示應(yīng)答。

應(yīng)答間隙:所有接收到匹配CRC序列(CRC SEQUENCE)的站會(huì)在應(yīng)答間隙(ACK Slot)期間用一顯性的位寫入發(fā)送器的隱性位來作出回答。

應(yīng)答界定符:ACK界定符是ACK場(chǎng)的第二個(gè)位,并且是一個(gè)必須為隱性的位。因此,應(yīng)答間隙(ACK Slot)被兩個(gè)隱性的位所包圍,也就是CRC界定符(CRC Delimter)和ACK界定符(ACK Delimter)。

241d1c2e-f863-11ee-9118-92fbcf53809c.png

圖2 正常ACK段報(bào)文

而如果總線上沒有ACK應(yīng)答(即應(yīng)答間隙為隱性),發(fā)送器就會(huì)發(fā)送一個(gè)錯(cuò)誤標(biāo)志,并且發(fā)送錯(cuò)誤計(jì)數(shù)器值加8,節(jié)點(diǎn)就會(huì)對(duì)報(bào)文進(jìn)行自動(dòng)重發(fā),若自動(dòng)重發(fā)依然收不到ACK,則在發(fā)送錯(cuò)誤計(jì)數(shù)器計(jì)數(shù)滿128后(即出現(xiàn)16幀錯(cuò)誤幀),由錯(cuò)誤主動(dòng)轉(zhuǎn)為錯(cuò)誤被動(dòng)狀態(tài),如圖3所示。那導(dǎo)致ACK段出錯(cuò)的原因有哪些呢?下面小編總結(jié)了一些。

  • 總線上只有一個(gè)有效節(jié)點(diǎn):發(fā)送報(bào)文的節(jié)點(diǎn)在發(fā)送出一幀報(bào)文后會(huì)檢測(cè)總線上應(yīng)答間隙的狀態(tài),如果檢測(cè)到應(yīng)答間隙為隱性位,則表示該幀報(bào)文沒有得到ACK,發(fā)送失敗,需要重發(fā),而由于發(fā)送錯(cuò)誤計(jì)數(shù)器會(huì)在發(fā)送失敗后累加,直到該節(jié)點(diǎn)關(guān)閉。所以,當(dāng)總線上只有一個(gè)有效節(jié)點(diǎn)時(shí),這個(gè)節(jié)點(diǎn)是發(fā)不出去數(shù)據(jù)的,因?yàn)樗l(fā)出的數(shù)據(jù)幀中的ACK Slot沒有另外一個(gè)節(jié)點(diǎn)來填充,將永遠(yuǎn)是隱性位,這個(gè)節(jié)點(diǎn)會(huì)一直重發(fā)數(shù)據(jù)直到發(fā)送成功或發(fā)送被取消。
  • 波特率不匹配或者節(jié)點(diǎn)沒有初始化,導(dǎo)致沒有ACK;
  • 總線線纜短路,斷路,接反;
  • 高速CAN總線上接的節(jié)點(diǎn)不是高速CAN,而是容錯(cuò)低速CAN,導(dǎo)致不匹配。

24205d76-f863-11ee-9118-92fbcf53809c.jpg

圖3 應(yīng)答界定符錯(cuò)誤幀242459c6-f863-11ee-9118-92fbcf53809c.png

圖4 沒有ACK的報(bào)文

當(dāng)你在調(diào)試CAN總線時(shí)出現(xiàn)節(jié)點(diǎn)發(fā)送報(bào)文失敗的情況時(shí),一定要檢查是不是以上幾點(diǎn)疏漏導(dǎo)致你的總線上ACK異常。而借助恰當(dāng)?shù)膬x器,可以在查找CAN總線錯(cuò)誤時(shí)事半功倍。圖4即采用致遠(yuǎn)電子的CANScope來對(duì)錯(cuò)誤幀進(jìn)行標(biāo)記,同時(shí)找到錯(cuò)誤幀對(duì)應(yīng)的波形來查找出錯(cuò)誤情況。CANScope還可以對(duì)CAN總線物理層、數(shù)據(jù)鏈路層、應(yīng)用層做一系列的測(cè)試,為CAN工程師解決測(cè)試難題。

243449d0-f863-11ee-9118-92fbcf53809c.jpg

圖5 CANScope測(cè)試項(xiàng)目

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

    關(guān)注

    145

    文章

    1974

    瀏覽量

    132247
  • 數(shù)據(jù)幀
    +關(guān)注

    關(guān)注

    0

    文章

    49

    瀏覽量

    6914
  • can報(bào)文
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    2361
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    CAN報(bào)文流程解析

    CAN報(bào)文流程解析,直流充電樁上的CAN通訊解析過程
    發(fā)表于 03-24 14:03 ?0次下載

    使用CAN以及CANIF配置了S32K310的CAN驅(qū)動(dòng)模塊,如何進(jìn)行報(bào)文的接收呢?

    我使用CAN以及CANIF配置了S32K310的CAN驅(qū)動(dòng)模塊。我知道調(diào)用CAN_Write()函數(shù)進(jìn)行報(bào)文發(fā)送,但我存有以下的一些問題:
    發(fā)表于 03-21 07:24

    STM32G473 CAN發(fā)送數(shù)據(jù)出現(xiàn)丟幀怎么解決?

    配置CAN以FIFO模式發(fā)送,單片機(jī)周期發(fā)送不同ID的CAN報(bào)文,同時(shí)使用軟件ZCANPRO周期發(fā)送
    發(fā)表于 03-11 08:30

    CAN loopback模式測(cè)試

    ); HAL_NVIC_EnableIRQ(CAN_RX0_IRQn);。 發(fā)送和接收測(cè)試 發(fā)送報(bào)文:創(chuàng)建一個(gè) CAN 報(bào)文結(jié)構(gòu)體,填寫標(biāo)準(zhǔn)
    發(fā)表于 01-18 16:29

    基于APM32E103 SPI轉(zhuǎn)CAN芯片MCP2515移植測(cè)試

    發(fā)送者以廣播形式把報(bào)文發(fā)送給所有接收者,節(jié)點(diǎn)在接收報(bào)文時(shí),會(huì)經(jīng)過過濾器組根據(jù)標(biāo)識(shí)符決定是否需要該報(bào)文,這種設(shè)計(jì)節(jié)省了 CPU 的開銷。
    的頭像 發(fā)表于 11-11 11:44 ?1064次閱讀
    基于APM32E103 SPI轉(zhuǎn)<b class='flag-5'>CAN</b>芯片MCP2515移植測(cè)試

    CAN總線知識(shí)】全面了解CAN總線協(xié)議

    基本概念1.報(bào)文總線上的信息以不同格式的報(bào)文發(fā)送,但長(zhǎng)度有限?當(dāng)總線開放時(shí),任何連接的單元均可開始發(fā)送一個(gè)新報(bào)文?2.信息路由在
    的頭像 發(fā)表于 10-15 08:05 ?2131次閱讀
    【<b class='flag-5'>CAN</b>總線知識(shí)】全面了解<b class='flag-5'>CAN</b>總線協(xié)議

    CAN底層報(bào)文抓到了,卻不知怎么解析?以及如何看到信號(hào)運(yùn)行狀態(tài)?

    本文介紹CAN總線中DBC文件的重要性及ZCANPRO如何實(shí)現(xiàn)DBC解析、數(shù)據(jù)發(fā)送和實(shí)時(shí)曲線分析,幫助您更有效地分析和利用CAN總線數(shù)據(jù)。在CAN總線的實(shí)際應(yīng)用中,我們經(jīng)常需要解析底層
    的頭像 發(fā)表于 09-30 08:05 ?2403次閱讀
    <b class='flag-5'>CAN</b>底層<b class='flag-5'>報(bào)文</b>抓到了,卻不知怎么解析?以及如何看到信號(hào)運(yùn)行狀態(tài)?

    CAN總線的報(bào)文類型介紹

    CAN(Controller Area Network)總線是一種廣泛使用的串行通信協(xié)議,特別適用于汽車和工業(yè)自動(dòng)化領(lǐng)域。CAN總線上的報(bào)文類型主要可以分為以下幾種,每種類型都有其特定的用途和格式。
    的頭像 發(fā)表于 09-03 14:20 ?3870次閱讀

    如何在CANtest上通過報(bào)文發(fā)送實(shí)現(xiàn)CCP指令的發(fā)送

    如題,我在CANtest上通過CAN報(bào)文發(fā)送了CCP指令\'CONNECT\'、\'SET-MTA\'和‘Upload’。前兩個(gè)指令的返回均沒有報(bào)錯(cuò),可\'Upload\'的返回直接
    發(fā)表于 08-13 10:46

    基于VB6.0 實(shí)現(xiàn) CAN信號(hào)收發(fā) Demo

    、VB6.0、libTSCAN1關(guān)于Demo工程簡(jiǎn)要描述:VB6.0編程語言調(diào)用libTSCAN接口實(shí)現(xiàn)硬件掃描、連接、CAN報(bào)文單幀發(fā)送、周期發(fā)送
    的頭像 發(fā)表于 07-27 08:21 ?1205次閱讀
    基于VB6.0 實(shí)現(xiàn) <b class='flag-5'>CAN</b>信號(hào)收發(fā) Demo

    CYT2BL和SDL v8.0.0是否有可能實(shí)現(xiàn)以相同ID發(fā)送和接收CAN報(bào)文(RxID、TxID)的功能?

    我使用的是 CYT2BL 和 SDL v8.0.0。 我想發(fā)送和接收具有相同 ID 的 CAN 報(bào)文。 1.是否有可能實(shí)現(xiàn)以相同 ID 發(fā)送和接收
    發(fā)表于 07-23 06:12

    TC3XX can發(fā)送報(bào)文,周期上下波動(dòng)嚴(yán)重怎么解決?

    使用FULL CAN發(fā)送,周期調(diào)用Can_17_McmCan_lWriteMsgObj發(fā)送報(bào)文,查看周期是穩(wěn)定的,但到發(fā)出來和中斷觸發(fā)的時(shí)間會(huì)上下波動(dòng),而且波動(dòng)越來越大。
    發(fā)表于 07-11 08:00

    試圖從CAN卡向TC375發(fā)送報(bào)文時(shí),TC375始終收不到,為什么?

    我試圖在TC375上進(jìn)行CAN收發(fā)測(cè)試,測(cè)試目的是完成TC375和CAN卡的通訊,現(xiàn)在我已經(jīng)成功地將CAN報(bào)文從TC375發(fā)送到了
    發(fā)表于 07-04 06:04

    CAN總線測(cè)試工具的主要功能

    和分析CAN幀: CAN測(cè)試工具能夠捕獲CAN總線上的CAN幀,并進(jìn)行詳細(xì)的分析。 這包括檢測(cè)報(bào)文、過濾
    的頭像 發(fā)表于 06-25 16:02 ?1643次閱讀

    TSMaster 中不同總線報(bào)文消息過濾的操作方式

    TSMaster軟件平臺(tái)支持對(duì)不同總線(CAN、LIN、FlexRay)報(bào)文和信號(hào)的過濾,包括全局接收過濾、數(shù)據(jù)流過濾、窗口過濾、字符串過濾、可編程過濾,針對(duì)不同的總線信號(hào)過濾器的使用方法基本相
    的頭像 發(fā)表于 06-22 08:21 ?2028次閱讀
    TSMaster 中不同總線<b class='flag-5'>報(bào)文</b>消息過濾的操作方式