CAN匯流排如何偵聽匯流排空閒,CAN匯流排 什麼情況下為空閒狀態?

2021-04-25 09:26:12 字數 3665 閱讀 2855

1樓:匿名使用者

can匯流排

偵聽bai類似csma匯流排衝突檢測,一du旦發現總zhi線有資料dao傳輸,就等

待,發現專匯流排空閒就屬可以傳送報文。

參考資料曙光微控制器

can匯流排 什麼情況下為空閒狀態?

2樓:好思則敏

錯了,can匯流排空閒的定義是連續11個位的隱性電平(邏輯為1),一般用於匯流排關閉時的自動恢復。而can的顯性電平邏輯為0,一旦有顯性就說明肯定至少有1個節點在傳送波形,那就不是空閒了。can的幀間隙是連續3個以上隱性電平。

如何判斷匯流排忙還是空閒呢? 5

3樓:匿名使用者

判斷匯流排狀態可copy以監測匯流排電壓,簡單來說can_h和can_l之間的差分電壓大的(一般在2v左右)就是顯性狀態,差分電壓小的(理論上是0v)就是隱性,當然容錯can要複雜很多,就不是這樣的。當你一值監測到匯流排都處於隱性狀態(就是兩根線電壓值差不多)那就說明匯流排處於空閒狀態,如果是顯隱交替,那就是匯流排不處於空閒狀態。

不過can匯流排傳輸速率還是比較快的,拿低速一般125k的來說,就算是一幀擴充套件幀29位識別符號的報文,也大概在130位左右,這樣算起來這幀報文只需1ms多一點就傳輸完了,如果是高速can時間就更短。不過應該會有這樣的軟體可以監測匯流排的狀態的,不是很專業職能這樣回答,希望能幫到您。

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

4樓:匿名使用者

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

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

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

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

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

大神,你好!我有幾個關於can匯流排的問題問你,比如說的匯流排電平值怎麼確定的?仲裁失敗的報文怎麼處理?

5樓:匿名使用者

你好,偶然間發現有人找我,很榮幸。大神愧不敢當,只是接觸過一些can匯流排方面的東西,可以互相**一下。

can匯流排是一種雙絞線,他的電平值是一種差分電壓,也就是說匯流排電平值是雙絞線兩根線電平的差值,一般制定can協議的時候會定義好,如果差分電壓高於某個值(自己定義)就表示當前匯流排是顯性狀態,用邏輯0表示。

只要匯流排空閒,任何單元都可以開始傳送報文。如果2 個或2 個以上的單元同時開始傳送報文,那麼就會有匯流排訪問衝突。通過使用識別符的位形式仲裁可以解決這個衝突。

仲裁的機制確保資訊和時間均不會損失。當具有相同識別符的資料幀和遠端幀同時初始化時,資料幀優先於遠端幀。仲裁期間,每一個傳送器都對傳送位的電平與被監控的匯流排電平進行比較。

如果電平相同,則這個單元可以繼續傳送。如果傳送的是一隱性電平而監控視到一顯性電平,那麼該單元就失去了仲裁必須退出傳送狀態。仲裁競爭失敗的節點,必須等匯流排空閒時,參與下一次仲裁競爭,直至競爭成功才能把報文傳送出去。

您好,本人初學can匯流排,不太明白顯性和隱性的狀態,想請教您一個問題?

6樓:匿名使用者

後面半句對了,前面半句不全對。can匯流排在沒有節點傳輸報文時是一直處於隱性狀態。當有節點傳輸報文時顯性覆蓋隱性,由於can匯流排是一種序列匯流排,也就是說報文是一位一位的傳輸的,而且是數字訊號(0和1),1代表隱性,0代表顯性。

在傳送報文的過程中是顯隱交替的,就像二進位制數字0101001等,這樣就能把資訊傳送出去,而匯流排空閒的時候是一直處於隱性的。

rs232和can序列通訊時怎麼判斷匯流排處於空閒? 20

7樓:匿名使用者

④.seed-dsk2407電機專業控制板增加的電機控制模板以ti的tms320lf2407a為核心進行設計,來完成電機控制方面的功能。配置如下:

處理器tms320lf2407a,工作主頻 40mhz64k×16 bits sram;

4路輸出範圍為(0~+5v)的d/a輸出

can匯流排驅動輸出

外擴a/d、pwm口、spi口、rs232口輸出具有4個led指示燈

seed-dsk2407控制板;

處理器-tms320lf2407,主頻40mhz;

sram:片外64k×16位;

4路輸出範圍為(0~+5v)的da輸出;

can匯流排、pwm口、spi口、rs232口輸出;

rtc+eeprom實時時鐘;

控制直流與步進電機;

具有4個led指示燈;

jtag**介面;

can匯流排問題

8樓:橙

1.標準格式資料幀包括:

1位幀起始位,11位id位+1irq位,8個控制位,8位元組的資料位,2位元組的crc校驗位,7個終止位(記得不一定全面)

同時有碼流控制功能,即位填充功能。當出現4個相同電平的位時,會在中間插入1個不同的位。

碼流填充區域包括從起始位一直到資料位結束。

具體細節可以參見《現場匯流排can原理與應用》一書,北京航空航天大學出版社。

2.11位識別符號與遮蔽暫存器和**暫存器組成了can匯流排的濾波模式。

3.初始化匯流排定時暫存器,控制暫存器,輸出暫存器,中斷暫存器。

4.遮蔽暫存器全部為0xff,使濾波位「無關」

5. 高8位為9,即為0000_1001,code0= 0000_1001 mask0 = 1111_0110 (二進位制表示)

6. 這個我以前算過,《現場匯流排can原理與應用》一書中有詳細介紹,現在書沒有在手邊,印象裡是

btr0 = 0x43;

btr1 = 0x1c;

滿意請採納。

怎麼監視can匯流排負載

9樓:匿名使用者

前面那個哥們兒的回答比較凶悍!

假如你對can匯流排資料格式十分清楚,買個can轉232/usb的模組,在電腦上通過串列埠除錯工具記錄資料包就行。

也可以自己寫個小軟體按照你的應用層需求給資料轉換一下。

10樓:匿名使用者

用canoe掛到匯流排上,然後看bus statistics視窗就能知道busload

11樓:匿名使用者

小電流用繼bai電器,大電流用接觸器du。接法比較簡zhi單,用1個12v變壓器dao,接繼電器內線圈,中容間串一個開關,開關用線引到需要的位置,繼電器的常開觸點代替原來開關就可以了,一般電子原件商店就有賣。12v.

5a的可以控制1000w以下的非感性負載,要是負載大的話,就要買大點的,如果負載在2000w以上的話建議使用接觸器。

汽車CAN匯流排技術難學嗎,如何學習汽車CAN匯流排相關的知識

好學,看看匯流排協議,條件允許的話買個can分析儀。其實目前來說匯流排通訊是比較簡單的了 如何學習汽車can匯流排相關的知識?其實這個不難的,首先,網上有很多資料,對於汽車can匯流排相關知識的學習,首先要了解can通訊的理論知識,可參考 專案驅動 canbus現場匯流排基礎教程 另外還需要多點實戰...

can匯流排問題,請問can匯流排特點優點都有什麼?

首先不得不說提問者愛思考也愛 竟,不過我要提醒您一句的是,can匯流排資料幀 與資料幀可不像串列埠一樣緊挨著,之間還有 幀間空間 也就是說,即使迴圈傳送can幀,也至少還有3位隱性位間歇場,換句話說,最小間隔至少是8 3 11位,即16 11 8 22微秒。can的資料幀不是這樣理解的,can包括幀...

CAN匯流排最大傳輸距離,為什麼CAN匯流排在位速率為1Mbps,最大傳輸距離只有40米

通訊距離最bai遠可達10km 速率低du於5kbps 速率可達到1mbps 通訊距離zhi小於dao40m 傳輸距離和速率成反比,還有線材要版求比較高。can匯流排特點權 資料通訊沒有主從之分,任意一個節點可以向任何其他 一個或多個 節點發起資料通訊,靠各個節點資訊優先順序先後順序來決定通訊次序,...