can匯流排協議中提到ID高7位不能同時為隱性,這是為什麼,實

2021-03-19 10:35:59 字數 5422 閱讀 7848

1樓:好思則敏

這要看你是什麼協議了,我記得高7位不能同時為隱性就是「1」,是canopen裡面的,就是說,canopen的節點號不能取127.

我就是想不通,人們為什麼喜歡can fd

2樓:匿名使用者

canfd其實可以認為是can生命末期的一種挽救措施,如果不是先前can通訊已經廣泛應用於汽車網路,替換為其他協議變更太大的話,估計早已被其他資料吞吐量更大的協議所取代。canfd雖然提高了can的通訊速率,但是對軟硬體都需要做相匹配的改動,尤其軟體這塊改動量不小。現有的基於can 2.

0的各種國際標準和協議更新還沒跟上,盲目的切換到fd其實並不明智。許多主機廠也就那麼一提說要支援fd,其實大部分主機廠跟進的慾望並不強烈。

為什麼can匯流排高7位禁止全為隱性?

3樓:匿名使用者

標準幀的識別符號id為11位,4位用來作為功能**區分16種不同型別的報文,剩下7位作為節點位址,可以表示128個節點,一般來說是足夠了。

4樓:匿名使用者

can通訊採用的是nzr編碼,而can的仲裁是靠資料幀中的id部分來實現的,全為隱性狀態,可能導致仲裁失敗!

can匯流排協議的協議內容

5樓:赤丶果果

can匯流排的物理層是將ecu連線至匯流排的驅動電路。ecu的總數將受限於匯流排上的電氣負荷。物理層定義了物理資料在匯流排上各節點間的傳輸過程,主要是連線介質、線路電氣特性、資料的編碼/解碼、位定時和同步的實施標準。

bosch can基本上沒有對物理層進行定義,但基於can的iso標準對物理層進行了定義。設計乙個can系統時,物理層具有很大的選擇餘地,但必須保證can協議中**訪問層非破壞性位仲裁的要求,即出現匯流排競爭時,具有較高優先權的報文獲取匯流排競爭的原則,所以要求物理層必須支援can匯流排中隱性位和顯性位的狀態特徵。在沒有傳送顯性位時,匯流排處於隱性狀態,空閒時,匯流排處於隱性狀態;當有乙個或多個節點傳送顯性位,顯性位覆蓋隱性位,使匯流排處於顯性狀態。

在此基礎上,物理層主要取決於傳輸速度的要求。從物理結構上看,can節點的構成如圖7-8所示。在can中,物理層從結構上可分為三層:

分別是物理訊號層(physical layer signaling,pls)、物理介質附件(physical mediaattachment,pma)層和介質從屬介面(media dependent:inter-face,mdi)層。其中pls連同資料鏈路層功能由can控制器完成,pma層功能由can收發器完成,mdi層定義了電纜和聯結器的特性。

目前也有支援can的微處理器內部整合了can控制器和收發器電路,如mc68hc908gzl6。pma和mdi兩層有很多不同的國際或國家或行業標準,也可自行定義,比較流行的是isoll898定義的高速can傳送/接收器標準。 在報文傳輸時,不同的幀具有不同的傳輸結構,下面將分別介紹四種傳輸幀的結構,只有嚴格按照該結構進行幀的傳輸,才能被節點正確接收和傳送。

(1)資料幀由七種不同的位域(bit field)組成:幀起始(start of )、仲裁域(arbitration field)、控制域(control field)、資料域(datafield)、crc域(crc field)、應答域(ack field)和幀結尾(end of )。資料域的長度可以為0~8個位元組。

1)幀起始(sof):幀起始(sof)標誌著資料幀和遠端幀的起始,僅由乙個「顯性」位組成。在can的同步規則中,當匯流排空閒時(處於隱性狀態),才允許站點開始傳送(訊號)。

所有的站點必須同步於首先開始傳送報文的站點的幀起始前沿(該方式稱為「硬同步」)。

2)仲裁域:仲裁域由識別符號和rtr位組成,標準幀格式與擴充套件幀格式的仲裁域格式不同。標準格式裡,仲裁域由1l位識別符號和rtr位組成。

識別符號位有id28~idl8。擴充套件幀格式裡,仲裁域包括29位識別符號、srr位、ide(identifier extension,標誌符擴充套件)位、rtr位。其識別符號有id28~ido。

為了區別標準幀格式和擴充套件幀格式,canl.0~1.2版本協議的保留位r1現表示為ide位。ide位為顯性,表示資料幀為標準格式;ide位為隱性,表示資料幀為擴充套件幀格式。在擴充套件幀中,替代遠端請求(substitute remote request,srr)位為隱性。

仲裁域傳輸順序為從最高位到最低位,其中最高7位不能全為零。rtr的全稱為「遠端傳送請求(remote tran**issionrequest)」。rtr位在資料幀裡必須為「顯性」,而在遠端幀裡必須為「隱性」。

它是區別資料幀和遠端幀的標誌。

3)控制域:控制域由6位組成,包括2個保留位(r0、r1同於can匯流排協議擴充套件)及4位資料長度碼,允許的資料長度值為0~8位元組。

4)資料域:傳送緩衝區中的資料按照長度**指示長度傳送。對於接收的資料,同樣如此。它可為0~8位元組,每個位元組包含8位,首先傳送的是msb(最高位)。

5)crc校驗碼域:它由crc域(15位)及crc邊界符(乙個隱性位)組成。crc計算中,被除的多項式包括幀的起始域、仲裁域、控制域、資料域及15位為0的解除填充的位流給定。

此多項式被下列多項式x15+x14+x10+x8+x7+x4+x3+1除(係數按模2計算),相除的餘數即為發至匯流排的crc序列。傳送時,crc序列的最高有效位被首先傳送/接收。之所以選用這種幀校驗方式,是由於這種crc校驗碼對於少於127位的幀是最佳的。

6)應答域:應答域由傳送方發出的兩個(應答間隙及應答界定)隱性位組成,所有接收到正確的crc序列的節點將在傳送節點的應答間隙上將傳送的這一隱性位改寫為顯性位。因此,傳送節點將一直監視匯流排訊號已確認網路中至少乙個節點正確地接收到所發資訊。

應答界定符是應答域中第二個隱性位,由此可見,應答間隙兩邊有兩個隱性位:crc域和應答界定位。

7)幀結束域:每乙個資料幀或遠端幀均由一串七個隱性位的幀結束域結尾。這樣,接收節點可以正確檢測到乙個幀的傳輸結束。

(2)錯誤幀錯誤幀由兩個不同的域組成:第乙個域是來自控制器的錯誤標誌;第二個域為錯誤分界符。

1)錯誤標誌:有兩種形式的錯誤標誌。

①啟用(active)錯誤標誌。它由6個連續顯性位組成。

②認可(passive)錯誤標誌。它由6個連續隱性位組成。

它可由其他can匯流排協議控制器的顯性位改寫。

2)錯誤界定:錯誤界定符由8個隱性位組成。傳送了錯誤標誌以後,每一站就傳送乙個隱性位,並一直監視匯流排直到檢測出1個隱性位為止,然後就開始傳送其餘7個隱性位。

(3)遠端幀: 遠端幀也有標準格式和擴充套件格式,而且都由6個不同的位域組成:幀起始、仲裁域、控制域、crc域、應答域、幀結尾。

與資料幀相比,遠端幀的rtr位為隱性,沒有資料域,資料長度編碼域可以是0~8個位元組的任何值,這個值是遠端幀請求傳送的資料幀的資料域長度。當具有相同仲裁域的資料幀和遠端幀同時傳送時,由於資料幀的rtr位為顯性,所以資料幀獲得優先。傳送遠端幀的節點可以直接接收資料。

(4)過載幀 過載幀由兩個區域組成:過載標識域及過載界定符域。下述三種狀態將導致過載幀傳送:

1)接收方在接收一幀之前需要過多的時間處理當前的資料(接收尚未準備好);

2)在幀空隙域檢測到顯性位訊號;

3)如果can節點在錯誤界定符或過載界定符的第8位取樣到乙個顯性位節點會傳送乙個過載幀。

can匯流排的id怎麼設定的

6樓:勝利之

can匯流排id是包含在報文幀中的。

1、主要用作can匯流排的仲裁使用,所以一般來說網路上的每個節點(向匯流排上傳送)的id應該有所不同。id值越低,報文優先順序越高,在兩組不同id報文同時上線時候,仲裁機制使得id值低的占用匯流排,id值高的退出。

2、id域可以是11位和29位,其值和含義可以由使用者自定義,可以用作高層協議的管理,比如canopen等協議中把id的部分做為「源位址」,部分作為「目的位址」,這樣can報文從哪來到哪去都清晰了。

3、id的另乙個作用是配合接收方濾波使用,就是說一般接收的濾波器可以設定接收id的範圍等,用於過濾掉不需要接收的資訊,減輕cpu的處理負擔。

為什麼can匯流排,數字"0"是顯性的,而數字"1"是隱性的?

7樓:匿名使用者

就是這樣設計的唄。

高電位差為0,第電位差為1。

如果兩個終端同時向匯流排上送信,乙個發1,乙個發0,那麼匯流排上表現出來的為高電位差,為0,那個1就送不出去了,所以0為「顯性」1為「隱性」

8樓:遺落之章

因為can匯流排採用"線與"的規則進行匯流排衝裁,1&0為0,所以稱0為顯性,1為隱性

can匯流排協議定義的介質訪問控制方式有什麼特點

9樓:匿名使用者

一、can 匯流排的位數值表示與通訊距離:cancan採用了iso/osi的3層模型(物理層、資料鏈路層和應用層),對應的匯流排位數值表示與通訊距離。can支援的拓撲結構為匯流排型。

傳輸介質為雙絞線、同軸電纜和光纖等。採用雙絞線通訊時,速率為1mbps/40m,50kbps/10km,節點數可達110個。

二、報文傳輸特點:can突出的差錯檢驗機理,如5種錯誤檢測、出錯標定和故障界定;can傳輸訊號為短幀結構,因而傳輸時間短,受干擾概率低。這些保證了出錯率極低,剩餘錯誤概率為報文出錯率的4.

7x10-11。

三、仲裁特性:在發生衝突時,採用非破壞性匯流排優先仲裁技術:當幾個節點同時向網路傳送資訊時,運用逐位仲裁規則,借助幀中開始部分的識別符號,優先順序低的節點主動停止傳送資料,而優先順序高的節點可不受影響地繼續傳送資訊,從而有效地避免了匯流排衝突,使資訊和時間均無損失。

四、可靠性較高:can節點在嚴重錯誤的情況下,具有自動關閉輸出的功能,以使匯流排上其它節點的操作不受其影響。可見,can具有高可靠性。

五、現場控制的實時性要求:can的傳輸訊號採用短幀結構(有效資料最多為8個位元組),和帶優先順序的c**a/ca的通訊介質訪問方式,對高優先順序的通訊請求來說,在1mbps的通訊速率時,最長的等待時間為0.15ms,完全可以滿足現場控制的實時性要求。

什麼是can協議

10樓:浙江張小飛

can協議用於汽車中各種不同元件之間的通訊,以此取代昂貴而笨重的配電線束。該協議的健壯性使其用途延伸到其他自動化和工業應用。can協議的特性包括完整性的序列資料通訊、提供實時支援、傳輸速率高達1mb/s、同時具有11位的定址以及檢錯能力。

擴充套件資料can匯流排的特點:

(1)具有實時性強、傳輸距離較遠、抗電磁干擾能力強、成本低等優點;

(2)採用雙線序列通訊方式,檢錯能力強,可在高雜訊干擾環境中工作;

(3)具有優先權和仲裁功能,多個控制模組通過can 控制器掛到can-bus 上,形成多主機區域性網路;

(4)可根據報文的id決定接收或遮蔽該報文;

(5)可靠的錯誤處理和檢錯機制;

(6)傳送的資訊遭到破壞後,可自動重發;

(7)節點在錯誤嚴重的情況下具有自動退出匯流排的功能;

(8)報文不包含源位址或目標位址,僅用標誌符來指示功能資訊、優先順序資訊。

CAN匯流排負載率計算CAN匯流排負載率計算

根據波特率計算10 ms總共可以傳送多少 bit 1s 1000ms 250000 bit 1000 ms 10 ms 2500 bit 計算最長的一幀報文有多少個bit 擴充套件幀 1sof 29id 1ide 1rtr 1srr 2r 4dlc 8 8data 16crc 2ack 7eof 1...

CAN匯流排多節點程式設計問題,CAN匯流排多節點程式設計問題

1,對哈!就是把程式寫進每個節點的can控制晶元。2,can節點都要是智慧型節點才可以通訊。can匯流排通訊中,如果是多節點通訊。多通訊中遇到了問題。問題在補充中 50 首先,can匯流排不分主機,最多是整車廠在網路規劃的時候定義了乙個功能比較多的節點,各家車廠不一樣 如閘道器 或者類似powerm...

關於微控制器和CAN匯流排,微控制器的CAN匯流排問題。希望大家能幫助我下。

缺少檔案。因而找不到報錯的那幾個巨集定義。帶can匯流排功能的微控制器有哪些?帶can匯流排控制器 的微控制器還有西門子的sab c505c和ti的tms320lf2407 帶can匯流排功能的微控制器,就內是整合can控制器的微控制器 比如容 p87c591 是乙個單片8 位高效能微控制器,具有片...