can匯流排在所有節點的優先順序都是唯一的,所以每次都會讓高優先

2021-03-28 19:37:50 字數 4173 閱讀 2306

1樓:巨集一點

帶來的問題:

如果高優先順序的一直髮送,低優先順序的報文無法傳送,通訊上不會有問題,對應用的影響較大。

解決:控制所有報文的傳送時間間隔。讓所有報文都有機會發出。

can匯流排報文的優先順序是如何確定的?詳細解答

2樓:匿名使用者

樓上對了一半 只有摩托羅拉格式 是id越小優先順序越高 英特爾格式 反之

3樓:爾駿騰琴心

由傳送資料的報文中的識別符號決定報文佔用匯流排的優先權。識別符號越小,優先權越高。

【【廣州研煌——can匯流排全面產品和技術支援,搜adawin】】

can匯流排可靠性如何體現出來的?can在什麼時候才會自動重發?

4樓:匿名使用者

1、can匯流排的可靠性體現它的優越的仲裁機制上。can採用的是c**a/cd(帶有衝突檢測的c**a)。這種仲裁機制中規定:

當一個節點要傳送資料時,首先監聽通道;如果通道空閒就傳送資料,並繼續監聽;如果在資料傳送過程中監聽到了衝突,則立刻停止資料傳送,等待一段隨機的時間後,重新開始嘗試傳送資料。並且在can匯流排把通過設定節點地址來區分各個節點傳送資料的優先順序別,在發生匯流排衝突時優先順序高的節點能夠獲得使用匯流排的權利。最高優先順序的節點在任何時刻都可以向外傳送資料,況且資料不會補同時傳送資料其它節點破壞。

而最低優先順序的節點任何時刻都要等待其它節點傳送完畢後才可以傳送資料。

正是由於有了匯流排監聽和發生衝突時不破壞資料的優點才保證了can匯流排的可靠性。

2、至於節點什麼時候重發,可能要看一些更專業的書籍才知道,因為很多講述can協議的書都只說了要等待一段隨機的時間,這一段隨機的時間就竟是什麼範圍不得而知。

can匯流排報文傳送的優先順序是如何確定的

5樓:勝利之

由傳送資料的報文中的識別符號決定報文佔用匯流排的優先權。識別符號越小,優先權越高。

【【廣州研煌——can匯流排全面產品和技術支援,搜 adawin 】】

6樓:匿名使用者

識別符號就是id,也就是一串數字,數字越小,優先順序越高。

can匯流排仲裁 5

7樓:匿名使用者

首先,你要明確

一個概念,can匯流排上的節點都是自顧自的傳送報文,搶奪匯流排資源的;

然後,一個can節點在傳送報文的同時也在接收匯流排上的資訊,每個報文都是從id先開始傳送,並且通過id判斷優先順序(顯性覆蓋隱性),當它發現接收到的資料(id)與它傳送的不一致時就退出傳送,等待一會;

再然後,為什麼資料(id)不一致就退出呢,因為只有優先順序比它高的報文才能覆蓋它的id場,既然

最後,回答你第一個問題,幾個報文在搶,優先順序最高的就搶到了匯流排,其實它並不知道有人跟它搶(因為它優先順序高),她認為匯流排對它來說是空閒的。

我覺得我解釋得很通俗易懂!

8樓:匿名使用者

而can匯流排是使用的無損仲裁方式(即你所指的非破壞性仲裁):就是當兩個或者以上的不同id節點「同時」向匯流排傳送資料時候,優先順序最高的就能直接傳送,

各位大神,關於can匯流排優先順序和仲裁權的問題。

9樓:匿名使用者

1、如果這個節點發得足夠快,就是一幀和一幀之間幾乎不留空隙那麼有可能。不過能否完全達到效果不好說。

2、通過應用層的管理來實現,用定時的辦法傳送之類的。硬體層基本無法去完全的做到,即使有優先順序的區分。

3、如果匯流排資料負載不是很大的情況,可以不考慮被第二個節點岔開的影響,因為兩個點的id畢竟不同,所以接收節點的軟體自然能夠以此為依據分開兩個節點的資料。廣州研煌——can系統

關於can匯流排的id號,遠端幀,有一些問題,迷茫的要死,求高手解答

10樓:匿名使用者

問題1: can資料域都是事先定義好了的,必然會包含can.bin的資料,node b只需要響應遠端幀即可正確迴應node a想要的資料了。

問題2: 不是節點優先順序不同,而是資料幀的優先順序不同,每個資料幀的仲裁域中包含id,優先順序就是比較id的大小。兩個節點同時傳送資料幀和遠端幀,也是靠正常的仲裁機制來判斷髮送順序的,沒有衝突。

如果某一時刻資料幀和遠端幀的id相同,那麼資料幀的優先順序高於遠端幀。

問題3: 問題2 已回答。

11樓:匿名使用者

1.你可以不發遠端幀,發資料幀,然後在資料部分指定要求的檔案。或者發遠端幀,但是遠端幀id的謀幾位規定為要求的檔案號

12樓:小連

我們工作一年多,遠端幀在實際是沒有應用的。

三個問題結合到一起回答

首先說下什麼是遠端幀,最新iso11898 -2015版,frame that requests the tran**ission of a dedicated data frame   請求專用資料幀傳輸的幀。a傳送給b一幀遙控幀報文(同時c/d/e都會收到,但不作處理),b會發給a一幀資料幀報文。(幀的結構如下圖,資料幀比遙控幀多一個資料段)

id是一般是主機廠自定義,比如 $0-500是 資料幀id 500-600是遠端幀id 600-700診斷id(實際用不到遠端幀,都是資料幀)。非同時傳送時誰先發出,誰先發;同時發出時,id越小優先順序越高,無論是什麼幀!

id只是幀的一部分,資料段也是幀的一部分(如圖,看幀的結構)。

幀裡面具體是什麼呢?是二進位制數,比如11111111111,前三個1代表id 後三個1代表資料。資料幀的三個1也是主機廠自定義的,如can矩陣。

can匯流排的仲裁方式具體是什麼?

13樓:雲紋抹額小忘機

匯流排的仲裁方式:搶奪,高階的比低階優先接受。

首先,你要明確一個概念,can匯流排上的節點都是自顧自的傳送報文,搶奪匯流排資源的。

一個can節點在傳送報文的同時也在接收匯流排上的資訊,每個報文都是從id先開始傳送,並且通過id判斷優先順序,當它發現接收到的資料與它傳送的不一致時就退出傳送,等待一會。

再然後,資料不一致就退出呢,因為只有優先順序比它高的報文才能覆蓋它的id場,最後,幾個報文在搶,優先順序最高的就搶到了匯流排,其實它並不知道有人跟它搶,認為匯流排是空閒的。

14樓:_____良人未歸

can匯流排是使用的無損仲裁方式。

在匯流排空閒態,最先開始傳送訊息的單元獲得傳送權。多個單元同時開始傳送時,各傳送單元從仲裁段的第一位開始進行仲裁。連續輸出顯性電平最多的單元可繼續傳送。

即逐位地對比各個結點發出的報文id。由於線與的關係,顯示位「0」可以覆蓋隱性位「1」,因此id最小的節點贏得仲裁,匯流排上表現為該結點的報文,其他結點失去仲裁,退出傳送,轉為接收狀態。

標準格式id與具有相同id的遠端幀或者擴充套件格式的資料幀在匯流排上競爭時,標準格式的rtr位為顯性位的具有優先權,可繼續傳送。

而can匯流排是使用的無損仲裁方式(即你所指的非破壞性仲裁):就是當兩個或者以上的不同id節點「同時」向匯流排傳送資料時候,優先順序最高的就能直接傳送。

15樓:匿名使用者

can本身通過識別符號來確定每個can節點,匯流排上識別符號不能有相同的。

can是多主機的方式,所有節點都可以傳送資料,傳送時,識別符號是本機的識別符號,傳送資料為**方式,廣播方式,具體資料,所有can節點都可以同時得到,但可以每個can節點可以設定can識別符號濾波,可設定只接收需要的節點的資料,設定後由硬體完成篩選,這樣優於485單主機的主從傳輸匯流排傳輸方式,物理上採用差分訊號傳輸。

如果專案不是像你說的優先順序高佔用頻寬那麼嚴重,就採用(非實時資訊空閒時候)輪詢+(實時資訊)主動傳送的方式管理網路。

請問can匯流排上一個節點能用兩個id號傳送訊息嗎,會不會用一個id號傳送完,再換個id號就發不出去了/

16樓:匿名使用者

首先我覺得你對can匯流排的理解上有點偏差,can匯流排上傳送的報文是根據報文資訊重要性和實時性來定義優先順序的,其次can匯流排的報文識別符號(也就是你所說的id)都是不同的,這個就是你軟體定義的一個識別符號的報文對應哪些節點要接收。can匯流排節點不存在物理ip地址,它所謂的ip地址(叫識別符號)只是和報文內容有關,如果一個節點要連續傳送兩個不同的報文前提是第二個報文的優先順序比其他節點同時想要傳送的報文高。具體想要了解具體的匯流排競爭規範可以追問~~~·

下面運算子優先順序最高的是ABCD

最高 left to right type sizeof right to left left to right left to right left to right left to right left to right left to right left to right left to r...

excel中公式中運算子的優先順序

運算子優先順序 引用運算子 算術運算子 連線運算子 比較運算子引用運算子優先順序 冒號 單個空格 逗號 算術運算子優先順序 負數 如 1 百分比 乘方 和 乘和除 和 加和減 連線運算子優先順序 連線兩個文字字串 串連 比較運算子 或 小於或大於 不小於 不等於 注 這些比較運算子是屬同級運算 使用...

下列運算子中運算優先順序最高的是AB

運算先,邏輯後 邏輯運算子 運算中,特殊運算先 如!等 所以選b 下列運算子中,優先順序最高的是 a,b,c,d,答案選a 邏輯反abcd選項的運算子的優先順序從高到低為 邏輯反 取餘 邏輯與 賦值。盧韜旭 1 下列運算子中優先順序最低的是 a b c d 運算子中優先順序最低的是 c的運算子有以下...