CAN總線錯誤及故障處理課件_第1頁
CAN總線錯誤及故障處理課件_第2頁
CAN總線錯誤及故障處理課件_第3頁
CAN總線錯誤及故障處理課件_第4頁
CAN總線錯誤及故障處理課件_第5頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

Version1.102006年5月總線錯誤及故障處理Version1.10總線錯誤及故障處理本節(jié)主要內(nèi)容五種錯誤檢測機制錯誤標記及錯誤計數(shù)錯誤幀及超載幀錯誤等級劃分主動錯誤模式及被動錯誤模式總線關(guān)閉模式常見總線故障原因及處理本節(jié)主要內(nèi)容五種錯誤檢測機制五種錯誤檢測機制CAN實現(xiàn)以下5種錯誤檢測機制其中基于信息流級別的錯誤檢測有CRC校驗幀格式檢測應(yīng)答錯誤檢測

基于位(bit)級別錯誤檢測有位檢測位填充五種錯誤檢測機制CAN實現(xiàn)以下5種錯誤檢測機制基于信息流級別的錯誤檢測CRC校驗錯誤15位的CRC通過發(fā)送端根據(jù)發(fā)送信息的內(nèi)容計算產(chǎn)生接收端根據(jù)接收內(nèi)容重新計算CRC并于發(fā)送端發(fā)送過來的CRC數(shù)值進行比較當兩個數(shù)字不一致時候CRC錯誤標記產(chǎn)生基于信息流級別的錯誤檢測CRC校驗錯誤基于信息幀級別的錯誤檢測幀格式錯誤檢測,當接收端在以下位置檢測到非法的位時格式錯誤標記CRC認可位ACK認可位幀結(jié)束位基于信息幀級別的錯誤檢測幀格式錯誤檢測,當接收端在以下位置檢基于信息幀級別的錯誤檢測應(yīng)答錯誤檢測每一個接收端都回在ACK場向總線回應(yīng)一個顯性位如果發(fā)送端在ACK場檢測不到一個ACK應(yīng)答將產(chǎn)生應(yīng)答錯誤標記常見的應(yīng)答錯誤多數(shù)由于總線上沒有一個活躍的節(jié)點引起,即孤立節(jié)點的情況基于信息幀級別的錯誤檢測應(yīng)答錯誤檢測基于位(bit)級別錯誤檢測位檢測在發(fā)送過程中發(fā)送器通過接收端監(jiān)視總線上每一位發(fā)送出去的電平是否與發(fā)送驅(qū)動的一致當發(fā)監(jiān)視位電平與發(fā)送驅(qū)動的不一致將產(chǎn)生一個位錯誤標記在仲裁場和ACK場不執(zhí)行填充位錯誤檢測基于位(bit)級別錯誤檢測位檢測基于位(bit)級別錯誤檢測位填充發(fā)送端根據(jù)發(fā)送內(nèi)容每5個相同的位插入一個反向電平進行填充接收端自動消除填充位保重信息透明傳輸及恢復(fù)當接收檢測到連續(xù)6個相同的位是將出發(fā)位填充錯誤標記補充位填充用于保證在NRZ位流中有足夠的邊沿用于從同步錯誤幀違背位填充規(guī)則基于位(bit)級別錯誤檢測位填充錯誤標記及錯誤計數(shù)錯誤標記當節(jié)點最少檢測到一個錯誤時將馬上終止總線上的傳輸并發(fā)送一個錯誤幀錯誤幀的組成錯誤幀由兩個場組成,錯誤標志及錯誤界定場,其中包含6位的顯性位幀結(jié)構(gòu)圖(續(xù))錯誤標記及錯誤計數(shù)錯誤標記錯誤幀的組成錯誤幀結(jié)構(gòu)(續(xù))ErrorFlag6SuperpositionofErrorFlags6-12bitsErrorDelimiter8111111111000000000000錯誤幀的組成錯誤幀結(jié)構(gòu)(續(xù))Error6Superposit超載幀超載幀當控制器未能足夠快地處理當前的信息時將發(fā)送超載幀中斷其他發(fā)送控制器發(fā)送過程以減緩發(fā)送速度,加長發(fā)送幀間隔組成由超載標志場及超載界定場組成超載幀超載幀錯誤標記及錯誤計數(shù)錯誤計數(shù)每監(jiān)測到一個接收錯誤其錯誤計數(shù)加1每監(jiān)測到一個發(fā)送錯誤其錯誤計數(shù)加8,發(fā)送錯誤更容易被察覺到SJA1000相關(guān)寄存器介紹errorwarninglimitregisterRXerrorcounterregisterTXerrorcounterregister錯誤標記及錯誤計數(shù)錯誤計數(shù)錯誤等級劃分劃分標準主動錯誤ErrorCounter<127錯誤警告ErrorCounter==ErrorLimit被動錯誤ErrorCounter>127總線關(guān)閉ErrorCounter==255錯誤警告門限 默認數(shù)值為96錯誤等級劃分劃分標準主動錯誤模式主動錯誤模式(錯誤激活模式)在錯誤激活模式下控制器能執(zhí)行的所有功能(正常模式)當發(fā)送或者接收到一個正確的信息幀時相應(yīng)的錯誤計數(shù)器遞減1當所有的錯誤計數(shù)寄存器返回0時控制器返回正常模式主動錯誤模式主動錯誤模式(錯誤激活模式)主動錯誤模式及被動錯誤模式被動錯誤模式當控制器錯誤計數(shù)超越錯誤警告限制時進入被動錯誤模式(消極錯誤模式)僅能發(fā)送錯誤認可標志,錯誤計數(shù)仍舊生效,但不會破壞總線主動錯誤模式及被動錯誤模式被動錯誤模式總線關(guān)閉模式總線關(guān)閉模式,任意一個錯誤計數(shù)器超越255導(dǎo)致控制器進入總線關(guān)閉模式持久的總線故障將導(dǎo)致總線關(guān)閉在總線故障清除,控制器檢測到總線上連續(xù)的11位隱性位發(fā)生128次后,總線關(guān)閉的節(jié)點將返回到錯誤激活狀態(tài),錯誤寄存器狀態(tài)清零總線關(guān)閉模式總線關(guān)閉模式,任意一個錯誤計數(shù)器超越255導(dǎo)致控常見總線故障原因及處理硬件故障波特率不一致。終端電阻失配。軟件故障CAN錯誤中斷類型。錯誤中斷處理。常見總線故障原因及處理硬件故障CAN錯誤中斷類型(SJA1000)CAN錯誤中斷類型總線錯誤中斷EBI。數(shù)據(jù)溢出中斷DOI。出錯警告中斷EI。錯誤認可中斷EPI。仲裁丟失中斷ALI。CAN錯誤中斷類型(SJA1000)CAN錯誤中斷類型錯誤中斷處理(SJA1000)總線錯誤,檢查是否總線已經(jīng)關(guān)閉,為保證總線保持在工作模式,應(yīng)該嘗試重新進入總線工作模式。數(shù)據(jù)溢出中斷,對于應(yīng)用中應(yīng)該通過提升軟件處理效率及處理器性能解決接收速度引起的瓶頸;程序務(wù)必向CAN控制器發(fā)送清除溢出命令,否則將一直引起數(shù)據(jù)一處中斷。其他錯誤中斷一般可以不加處理,不過在調(diào)試過程中應(yīng)該打開所有中斷以監(jiān)視網(wǎng)絡(luò)質(zhì)量。錯誤中斷處理(SJA1000)總線錯誤,檢查是否總線已經(jīng)關(guān)閉錯誤中斷處理(SJA1000)總線錯誤入口inlinevoidKSJA1000T::INT_BusError(void){ if(((UCHAR)m_rMode&RM_BIT)!=0) { StartCAN(); } m_TraceCode|=INT_BUS_ERROR;}錯誤中斷處理(SJA1000)總線錯誤入口錯誤中斷處理(SJA1000)數(shù)據(jù)溢出中斷處理inlinevoidKSJA1000T::INT_DataOverrun(void){ if(((UCHAR)m_rMode&RM_BIT)!=0) { StartCAN(); } if(((UCHAR)m_rStatus&DOS_BIT)!=0) { //數(shù)據(jù)溢出處理 m_rCommand=(UCHAR)CMD_CLR_DATA_OVER; } m_TraceCode|=INT_DATA_OVERFLOW;}錯誤中斷處理(SJA1000)數(shù)據(jù)溢出中斷處理內(nèi)容回顧五種錯誤檢測機制錯誤標記及錯誤計數(shù)錯誤幀及超載幀錯誤等級劃分主動錯誤模式及被動錯誤模式總線關(guān)閉模式常見總線故障原因及處理內(nèi)容回顧五種錯誤檢測機制謝謝!謝謝!Version1.102006年5月總線錯誤及故障處理Version1.10總線錯誤及故障處理本節(jié)主要內(nèi)容五種錯誤檢測機制錯誤標記及錯誤計數(shù)錯誤幀及超載幀錯誤等級劃分主動錯誤模式及被動錯誤模式總線關(guān)閉模式常見總線故障原因及處理本節(jié)主要內(nèi)容五種錯誤檢測機制五種錯誤檢測機制CAN實現(xiàn)以下5種錯誤檢測機制其中基于信息流級別的錯誤檢測有CRC校驗幀格式檢測應(yīng)答錯誤檢測

基于位(bit)級別錯誤檢測有位檢測位填充五種錯誤檢測機制CAN實現(xiàn)以下5種錯誤檢測機制基于信息流級別的錯誤檢測CRC校驗錯誤15位的CRC通過發(fā)送端根據(jù)發(fā)送信息的內(nèi)容計算產(chǎn)生接收端根據(jù)接收內(nèi)容重新計算CRC并于發(fā)送端發(fā)送過來的CRC數(shù)值進行比較當兩個數(shù)字不一致時候CRC錯誤標記產(chǎn)生基于信息流級別的錯誤檢測CRC校驗錯誤基于信息幀級別的錯誤檢測幀格式錯誤檢測,當接收端在以下位置檢測到非法的位時格式錯誤標記CRC認可位ACK認可位幀結(jié)束位基于信息幀級別的錯誤檢測幀格式錯誤檢測,當接收端在以下位置檢基于信息幀級別的錯誤檢測應(yīng)答錯誤檢測每一個接收端都回在ACK場向總線回應(yīng)一個顯性位如果發(fā)送端在ACK場檢測不到一個ACK應(yīng)答將產(chǎn)生應(yīng)答錯誤標記常見的應(yīng)答錯誤多數(shù)由于總線上沒有一個活躍的節(jié)點引起,即孤立節(jié)點的情況基于信息幀級別的錯誤檢測應(yīng)答錯誤檢測基于位(bit)級別錯誤檢測位檢測在發(fā)送過程中發(fā)送器通過接收端監(jiān)視總線上每一位發(fā)送出去的電平是否與發(fā)送驅(qū)動的一致當發(fā)監(jiān)視位電平與發(fā)送驅(qū)動的不一致將產(chǎn)生一個位錯誤標記在仲裁場和ACK場不執(zhí)行填充位錯誤檢測基于位(bit)級別錯誤檢測位檢測基于位(bit)級別錯誤檢測位填充發(fā)送端根據(jù)發(fā)送內(nèi)容每5個相同的位插入一個反向電平進行填充接收端自動消除填充位保重信息透明傳輸及恢復(fù)當接收檢測到連續(xù)6個相同的位是將出發(fā)位填充錯誤標記補充位填充用于保證在NRZ位流中有足夠的邊沿用于從同步錯誤幀違背位填充規(guī)則基于位(bit)級別錯誤檢測位填充錯誤標記及錯誤計數(shù)錯誤標記當節(jié)點最少檢測到一個錯誤時將馬上終止總線上的傳輸并發(fā)送一個錯誤幀錯誤幀的組成錯誤幀由兩個場組成,錯誤標志及錯誤界定場,其中包含6位的顯性位幀結(jié)構(gòu)圖(續(xù))錯誤標記及錯誤計數(shù)錯誤標記錯誤幀的組成錯誤幀結(jié)構(gòu)(續(xù))ErrorFlag6SuperpositionofErrorFlags6-12bitsErrorDelimiter8111111111000000000000錯誤幀的組成錯誤幀結(jié)構(gòu)(續(xù))Error6Superposit超載幀超載幀當控制器未能足夠快地處理當前的信息時將發(fā)送超載幀中斷其他發(fā)送控制器發(fā)送過程以減緩發(fā)送速度,加長發(fā)送幀間隔組成由超載標志場及超載界定場組成超載幀超載幀錯誤標記及錯誤計數(shù)錯誤計數(shù)每監(jiān)測到一個接收錯誤其錯誤計數(shù)加1每監(jiān)測到一個發(fā)送錯誤其錯誤計數(shù)加8,發(fā)送錯誤更容易被察覺到SJA1000相關(guān)寄存器介紹errorwarninglimitregisterRXerrorcounterregisterTXerrorcounterregister錯誤標記及錯誤計數(shù)錯誤計數(shù)錯誤等級劃分劃分標準主動錯誤ErrorCounter<127錯誤警告ErrorCounter==ErrorLimit被動錯誤ErrorCounter>127總線關(guān)閉ErrorCounter==255錯誤警告門限 默認數(shù)值為96錯誤等級劃分劃分標準主動錯誤模式主動錯誤模式(錯誤激活模式)在錯誤激活模式下控制器能執(zhí)行的所有功能(正常模式)當發(fā)送或者接收到一個正確的信息幀時相應(yīng)的錯誤計數(shù)器遞減1當所有的錯誤計數(shù)寄存器返回0時控制器返回正常模式主動錯誤模式主動錯誤模式(錯誤激活模式)主動錯誤模式及被動錯誤模式被動錯誤模式當控制器錯誤計數(shù)超越錯誤警告限制時進入被動錯誤模式(消極錯誤模式)僅能發(fā)送錯誤認可標志,錯誤計數(shù)仍舊生效,但不會破壞總線主動錯誤模式及被動錯誤模式被動錯誤模式總線關(guān)閉模式總線關(guān)閉模式,任意一個錯誤計數(shù)器超越255導(dǎo)致控制器進入總線關(guān)閉模式持久的總線故障將導(dǎo)致總線關(guān)閉在總線故障清除,控制器檢測到總線上連續(xù)的11位隱性位發(fā)生128次后,總線關(guān)閉的節(jié)點將返回到錯誤激活狀態(tài),錯誤寄存器狀態(tài)清零總線關(guān)閉模式總線關(guān)閉模式,任意一個錯誤計數(shù)器超越255導(dǎo)致控常見總線故障原因及處理硬件故障波特率不一致。終端電阻失配。軟件故障CAN錯誤中斷類型。錯誤中斷處理。常見總線故障原因及處理硬件故障CAN錯誤中斷類型(SJA1000)CAN錯誤中斷類型總線錯誤中斷EBI。數(shù)據(jù)溢出中斷DOI。出錯警告中斷EI。錯誤認可中斷EPI。仲裁丟失中斷ALI。CAN錯誤中斷類型(SJA1000)CAN錯誤中斷類型錯誤中斷處理(SJA1000)總線錯誤,檢查是否總線已經(jīng)關(guān)閉,為保證總線保持在工作模式,應(yīng)該嘗試重新進入總線工作模式。數(shù)據(jù)溢出中斷,對于應(yīng)用中應(yīng)該通過提升軟件處理效率及處理器性能解決接收速度引起的瓶頸;程序務(wù)必向CAN控制器發(fā)送清除溢出命令,否則將一直引起數(shù)據(jù)一處中斷。其他錯誤中斷一般可以不加處理,不過在調(diào)試過程中應(yīng)該打開所有中斷以監(jiān)視網(wǎng)絡(luò)質(zhì)量。錯誤中斷處理(SJA1000)總線錯誤,檢查是否總線已經(jīng)關(guān)閉錯誤中斷處理(SJA1000)總線錯誤入口inlinevoidKSJA1000T::INT_BusError(void){ if(((UCHAR)m_rMode&RM_BIT)!=0) { StartCAN(); } m_TraceCode|=INT_BUS_ERROR;}錯誤中斷處理(SJA1000)總線錯誤入口錯誤中斷處理(SJA1000)數(shù)據(jù)溢出中斷處理inlinevoidKSJA1000T::INT_DataOverrun(void){ if(((UCHAR)m_rMo

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論