新聞中心

can總線基本概念

作者: 時間:2016-12-16 來源:網(wǎng)絡(luò) 收藏

  2. 遠程幀:請求數(shù)據(jù)
  遠程幀由6個域組成:起始域、仲裁域、控制域、CRC域、應(yīng)答域、幀結(jié)束域。
  遠程幀與數(shù)據(jù)幀不同之處在于:RTR位為高,無數(shù)據(jù)域。
  3. 錯誤指示幀:用于指示傳送過程中的錯誤信息
  錯誤指示幀由兩個不同的域組成:第一個域反映來自控制器的錯誤標志,第二個域為錯誤分界符。
  錯誤標志:有兩種,一個由6個強位組成的主動錯誤標志;另一個由6個弱位組成的被動錯誤標志,
  它是被其他CAN控制器強位改寫。 處于主動錯誤狀態(tài)的CAN節(jié)點檢測到錯誤發(fā)出主動錯誤標志,該錯誤標
  志不滿足位填充規(guī)則,或者是破壞應(yīng)答域或結(jié)束域固定格式,所有其他節(jié)點都檢測到錯誤狀態(tài),并發(fā)出該錯
  誤標志。因此,這些從總線上監(jiān)測到的強位串是不同節(jié)點發(fā)出錯誤標志的結(jié)果,這一標志最短為6個,最長
  為12個。被動錯誤標志(不太理解。。。后續(xù))
  錯誤分界:它由8個弱位組成,與過載分界有相同的格式,當(dāng)錯誤標志發(fā)生后,每一個CAN節(jié)點監(jiān)測
  總線,直到檢測到一個強位出現(xiàn),這表明所有CAN節(jié)點已經(jīng)完成錯誤標志的發(fā)送,并開始發(fā)送8個弱位的分
  界符,之后網(wǎng)絡(luò)上的主動錯誤節(jié)點便可同時開始其他的發(fā)送。如果數(shù)據(jù)幀或遠程幀在發(fā)送過程中發(fā)現(xiàn)錯誤
  后,當(dāng)前的信息作廢,并啟動重新發(fā)送。如果CAN節(jié)點發(fā)現(xiàn)錯誤指示幀錯誤,則重發(fā),當(dāng)連續(xù)多次出現(xiàn)此錯
  誤時,則相應(yīng)的節(jié)點變?yōu)楸粍渝e誤節(jié)點。為正確結(jié)束錯誤標志,被動態(tài)節(jié)點需要至少3個位周期。
  4. 過載幀:用于后續(xù)幀的延時
  過載幀由兩個域組成:過載標志和過載分界。
  以下情況可以導(dǎo)致過載幀發(fā)送:
 ?。?). 接收未準備好即接收方需要過多的時間處理當(dāng)前的數(shù)據(jù);
 ?。?).在幀間空隙的第一位或第二位發(fā)現(xiàn)顯性位信號;
  過載幀發(fā)送條件:
 ?。?).在幀間空隙域的第一個位周期;
 ?。?).在幀間空隙域中檢測到強位信號一個位周期后,方可啟動過載幀發(fā)送。
  過載標志:由6個顯性位組成,與錯誤標志格式相同,當(dāng)超載標志發(fā)生后,每個節(jié)點監(jiān)測總線狀態(tài),當(dāng)發(fā)
  現(xiàn)線上有弱位后,此時所有節(jié)點已完成超載標志的發(fā)送,并開始發(fā)8個弱位串;
  過載分界符:由8個隱性位組成,與錯誤分界符格式相同;
  -----------------------------------------------------------------------------------------------------------------------------------
  英飛凌(infineon)單片機XC800之CAN總線
  CAN內(nèi)部硬件結(jié)構(gòu),如下圖所示

本文引用地址:http://m.butianyuan.cn/article/201612/331038.htm


  一,CAN處理機制
  發(fā)送:根據(jù)報文緩存中的報文對象,由位流處理器產(chǎn)生的通過can總線發(fā)送的數(shù)據(jù)幀和過程幀,即從報
  文緩存中取出的報文對象,位流處理器給它加上起始域,結(jié)束域和CRC校驗數(shù)據(jù),組成一個完整的數(shù)據(jù)幀
  和遠程幀,此時位流控制器還在對總線進行監(jiān)測,當(dāng)發(fā)現(xiàn)總線空閑時,就啟動數(shù)據(jù)的傳送,傳送過程中監(jiān)測
  總線的信息,當(dāng)發(fā)現(xiàn)與傳送的信息不相符時,就會產(chǎn)生一個“最近錯誤”中斷請求。
  接收:數(shù)據(jù)幀或遠程幀通過總結(jié)接口,到CAN節(jié)點,位流控制器對其進行CRC域進行檢測,驗證數(shù)據(jù)的
  一致性,當(dāng)檢測到錯誤時,產(chǎn)生一個“最近錯誤”中斷請求,并產(chǎn)生一個錯誤幀,發(fā)送到總線上。對一個無
  錯誤的幀,位流處理器將它分解成數(shù)據(jù)部分和標識符部分,列表控制器將其以鏈表的形式存儲于報文緩存
  中,執(zhí)行遠程幀或數(shù)據(jù)幀處理。
  在上述數(shù)據(jù)傳送和處理過程中,會出現(xiàn)一些狀態(tài)字,指示操作完成或出現(xiàn)錯誤,這些狀態(tài)字或引發(fā)中
  斷,進行中斷處理。
  二,從上述結(jié)構(gòu)框圖可以看出,主要包括:CAN節(jié)點,報文控制器,中斷處理單元
 ?。ㄒ唬珻AN節(jié)點
 ?。?),位流控制器(Bitstream Prosessor)
  主要任務(wù):處理數(shù)據(jù)幀,遠程幀,錯誤幀和過載幀,同時還進行串行數(shù)據(jù)流與輸入/輸出寄存器之間
  轉(zhuǎn)換工作(Perdiv data frame ,remote frame ,error frame and overload,conversion thd seiral data
  stream and the input/output register)。
  詳述:位流控制器:對于發(fā)送:根據(jù)報文緩存中的報文對象,由位流處理器產(chǎn)生通過CAN總線的數(shù)據(jù)
  幀和遠程幀。該的控制器控制CRC產(chǎn)生器,且給新的遠程幀和數(shù)據(jù)幀加上校驗和信息。在加入‘幀起始
  位’和‘幀
  結(jié)束域’之后,位流處理器開始CAN總線仲裁過程,且當(dāng)發(fā)現(xiàn)總線空閑時連續(xù)進行幀發(fā)送。進行數(shù)據(jù)發(fā)送
  的同時,位流控制器連續(xù)地監(jiān)測I/O線的的電平和發(fā)送移位寄存器當(dāng)前送出位的邏輯狀態(tài)之間檢測到失配,
  產(chǎn)生一個‘最近錯誤’中斷請求,錯誤碼由位域NSRX.LEC給出。
  對于接收:通過驗證CRC相關(guān)域,確定接收到的幀是否有問題,或有問題,產(chǎn)生一個‘最近錯
  誤’中斷請求,同時產(chǎn)生一個錯誤幀,并發(fā)送到總線上。若接收的幀無錯誤,將接收到的幀分解成標志符和
  數(shù)據(jù)部分,并將接收到的信息傳給報文緩存,執(zhí)行遠程幀或數(shù)據(jù)幀處理,中斷產(chǎn)生和狀態(tài)處理。
 ?。?),位時序單元(Bit timing unit)
  考慮到傳播延遲和相移,根據(jù)用戶設(shè)置確定采樣點和位時間長度,同時也處理再同步操作(define a
  length of a bit time and the location of the sample point according to the user settings,takeing into
  accout propration delays and phase shift errors and re-sychronization).
  (3),錯誤處理單元(error handling unit)
  對發(fā)送和接收過程中錯誤進行計數(shù),當(dāng)計數(shù)值達到一定時,進入不同的錯誤指示狀態(tài):錯誤激活,錯
  誤認可,關(guān)閉總線。
 ?。?),節(jié)點控制單元(Node control unit)
  A, 使能/禁止節(jié)點的傳送
  B, 使能/禁止可引發(fā)中斷的特定節(jié)點事件
  C 幀計數(shù)管理
 ?。?),中斷控制單元(interrupt control unit)
  控制CAN產(chǎn)生的不同類型的事件的中斷
 ?。ǘ瑘笪目刂破?br /> ?。ㄈ?,列表控制器
 ?。ㄋ模?,中斷處理單元


上一頁 1 2 下一頁

關(guān)鍵詞: can總線基本概

評論


技術(shù)專區(qū)

關(guān)閉