• <del id="qqie6"><sup id="qqie6"></sup></del>
  • <tfoot id="qqie6"></tfoot>
  • <ul id="qqie6"></ul>
  • 產(chǎn)品推薦:水表|流量計|壓力變送器|熱電偶|液位計|冷熱沖擊試驗箱|水質(zhì)分析|光譜儀|試驗機|試驗箱


    儀表網(wǎng)>技術(shù)中心>故障維護>正文

    歡迎聯(lián)系我

    有什么可以幫您? 在線咨詢

    CAN為什么會發(fā)送失敗

       2017年07月19日 15:46  
      CAN總線調(diào)試過程中出現(xiàn)報文發(fā)送失敗,很多工程師都對此只知其一不知其二,這里就CAN報文發(fā)送失敗的問題我們來做一次探討。
     
      在了解CAN報文為什么會發(fā)送失敗之前我們先看看一條正確的CAN報文到底應(yīng)該是怎么樣的,表1是一個正常標準數(shù)據(jù)幀的報文組成。
     
      表 1 標準數(shù)據(jù)幀報文格式組成
     

     
    圖 1 標準數(shù)據(jù)幀格式
     
      CAN總線是一種基于廣播的通訊方式,為了保證總線上的每一個正常節(jié)點都能正確的接收到報文,報文的發(fā)送者要求每一個接收節(jié)點在報文發(fā)送結(jié)束前要作出應(yīng)答,這也是報文里ACK存在的原因。
     
      一幀CAN報文中ACK段長度為2個位,包含應(yīng)答間隙(ACK Slot)和應(yīng)答界定符(ACK Delimter)。在應(yīng)答場里,發(fā)送站發(fā)送兩個隱性位。當接收器正確地接收到有效的報文,接收器就會在應(yīng)答間隙(ACK Slot)期間(發(fā)送ACK信號)向發(fā)送器發(fā)送一“顯性”的位以示應(yīng)答。
     
      應(yīng)答間隙:所有接收到匹配CRC序列(CRC SEQUENCE)的站會在應(yīng)答間隙(ACK Slot)期間用一顯性的位寫入發(fā)送器的隱性位來作出回答。
     
      應(yīng)答界定符:ACK界定符是ACK場的第二個位,并且是一個必須為隱性的位。因此,應(yīng)答間隙(ACK Slot)被兩個隱性的位所包圍,也就是CRC界定符(CRC Delimter)和ACK界定符(ACK Delimter)。
     

     
    圖 2 正常ACK段報文
     
      而如果總線上沒有ACK應(yīng)答(即應(yīng)答間隙為隱性),發(fā)送器就會發(fā)送一個錯誤標志,并且發(fā)送錯誤計數(shù)器值加8,節(jié)點就會對報文進行自動重發(fā),若自動重發(fā)依然收不到ACK,則在發(fā)送錯誤計數(shù)器計數(shù)滿128后(即出現(xiàn)16幀錯誤幀),由錯誤主動轉(zhuǎn)為錯誤被動狀態(tài),如圖3所示。
     
      那導(dǎo)致ACK段出錯的原因有哪些呢?
     
      總線上只有一個有效節(jié)點:發(fā)送報文的節(jié)點在發(fā)送出一幀報文后會檢測總線上應(yīng)答間隙的狀態(tài),如果檢測到應(yīng)答間隙為隱性位,則表示該幀報文沒有得到ACK,發(fā)送失敗,需要重發(fā),而由于發(fā)送錯誤計數(shù)器會在發(fā)送失敗后累加,直到該節(jié)點關(guān)閉。所以,當總線上只有一個有效節(jié)點時,這個節(jié)點是發(fā)不出去數(shù)據(jù)的,因為它所發(fā)出的數(shù)據(jù)幀中的ACK Slot沒有另外一個節(jié)點來填充,將永遠是隱性位,這個節(jié)點會一直重發(fā)數(shù)據(jù)直到發(fā)送成功或發(fā)送被取消。
     
      波特率不匹配或者節(jié)點沒有初始化,導(dǎo)致沒有ACK;
     
      總線線纜短路,斷路,接反;
     
      高速CAN總線上接的節(jié)點不是高速CAN,而是容錯低速CAN,導(dǎo)致不匹配。
     

     
    圖 3 應(yīng)答界定符錯誤幀
     

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

     
    圖 5 CANScope測試項目

    免責(zé)聲明

    • 凡本網(wǎng)注明“來源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-儀表網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
    • 本網(wǎng)轉(zhuǎn)載并注明自其它來源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或和對其真實性負責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品第一來源,并自負版權(quán)等法律責(zé)任。
    • 如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
    聯(lián)系我們

    客服熱線: 15024464426

    加盟熱線: 15024464426

    媒體合作: 0571-87759945

    投訴熱線: 0571-87759942

    關(guān)注我們
    • 下載儀表站APP

    • Ybzhan手機版

    • Ybzhan公眾號

    • Ybzhan小程序

    企業(yè)未開通此功能
    詳詢客服 : 0571-87759942
    主站蜘蛛池模板: 亚洲精品午夜国产va久久成人| 国产成人av在线影院| 成人精品一区二区三区中文字幕| 久久久久久成人毛片免费看| 91成人高清在线播放| 成人品视频观看在线| 国产成人免费a在线视频色戒| 久久国产成人精品国产成人亚洲| 欧美成人精品一区二三区在线观看 | 国产成人久久精品| 美国成人a免费毛片| 国产成人福利精品视频| 七次郎成人免费线路视频| 成人乱码一区二区三区AV| 久久精品成人欧美大片| 国产成人精品2021| 成人做受120视频试看| 中文国产成人精品久久一区 | 欧美成人在线免费| 久久久久亚洲AV成人片| 国产成人免费午夜在线观看| 无码成人精品区在线观看| 中文字幕成人在线| 久久成人国产精品| 亚洲国产成人av网站| 亚洲欧美成人在线| 四虎高清成人永久免费影院| 在线观看www成人影院| 窝窝午夜看片成人精品| 99国产精品久久久久久久成人热| 亚洲AV无码成人黄网站在线观看| 久久成人国产精品| 韩国成人毛片aaa黄| 成人黄页网站免费观看大全| 成人午夜免费视频免费看| 成人合集大片bd高清在线观看| 成人综合久久综合| 天堂成人一区二区三区| 国产成人亚洲精品蜜芽影院| 亚洲国产成人高清在线观看 | 亚洲最大成人网色|