1樓:匿名使用者
can 遠端幀是乙個空資料場的幀, 關鍵是在它的id場和遠端幀標誌位,當遠端幀標誌位為1時他就是遠端幀,資料場必須為空,被請求節點通過id場的辨識來響應,傳送被請求的幀到匯流排上,具體舉例,我隨便舉乙個,bcm需要知道車門的狀態,乙個遠端幀過去,車門把自己的狀態發回來
2樓:上官代芹
首先canbus是問答式的通訊方式報文最大長度11char
1仲裁場(共12位)
bit10 bit9 bit8 bit7 bit6
功能編碼
bit5 bit4 bit3
目的位址
bit2 bit1 bit0
源插位址
rtr遠端幀
2.控制場
ide r0 dl3 dl2 dl1 dl0
0 0 資料長度
3.資料場
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
資料幀資料(最長8組)
應答時仲裁場目的位址源位址交換,就是目的位址就是你回答的詢問報文中的原位址,當然原位址就是你位址 485匯流排的通訊距離也在300m以上!485的通訊協議比較靈活!可以自己定值問答式協議!
可參考通訊中常用的同步頭+資料長度+效驗的格式自己設計,
例如:採用0xeb 0x90 同步頭
可以給你乙份我做過的協議!自己分析一下!不明白給我發郵件!llzyong@sohu.***
我也希望能幫你啊!
3樓:爆76吧在行動
都過去好幾年了呢,你關於can協議學的咋樣了啊?我剛開始學啊,對於遠端幀非常的迷茫啊。
關於can匯流排的id號,遠端幀,有一些問題,迷茫的要死,求高手解答
4樓:匿名使用者
問題1: can資料域都是事先定義好了的,必然會包含can.bin的資料,node b只需要響應遠端幀即可正確回應node a想要的資料了。
問題2: 不是節點優先順序不同,而是資料幀的優先順序不同,每個資料幀的仲裁域中包含id,優先順序就是比較id的大小。兩個節點同時傳送資料幀和遠端幀,也是靠正常的仲裁機制來判斷傳送順序的,沒有衝突。
如果某一時刻資料幀和遠端幀的id相同,那麼資料幀的優先順序高於遠端幀。
問題3: 問題2 已回答。
5樓:匿名使用者
1.你可以不發遠端幀,發資料幀,然後在資料部分指定要求的檔案。或者發遠端幀,但是遠端幀id的謀幾位規定為要求的檔案號
6樓:小連
我們工作一年多,遠端幀在實際是沒有應用的。
三個問題結合到一起回答
首先說下什麼是遠端幀,最新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匯流排中什麼是遠端幀。另外能不能把can匯流排的整體工作流程簡單的說一下
7樓:匿名使用者
所謂「遠端幀」是乙個傳統翻譯上的誤區。remote frame實際上它的意義是「遙控幀」,發起方發起特定id的遠端幀,並且只傳送id部分,那麼與其id相符的終端裝置就有義務在後半段的資料部分接管匯流排控制權並傳送自己的資料。
打個比方,中控機需要定時獲取某個節點的資料(例如轉速計的實時轉速、油量計的實時油量等),可以向匯流排傳送遠端幀;相應節點在接收判斷幀id與自己相符、並且是遠端幀的情況下,就可以將自己的實時資料傳送到匯流排上;這樣中控機就獲取到了相關節點的實時資料。
遠端幀最大的好處就是只需要一幀的時間就能完成一次雙向互動。
8樓:成楊氏伍秋
can遠端幀是乙個空資料場的幀,
關鍵是在它的id場和遠端幀標誌位,當遠端幀標誌位為1時他就是遠端幀,資料場必須為空,被請求節點通過id場的辨識來響應,傳送被請求的幀到匯流排上,具體舉例,我隨便舉乙個,bcm需要知道車門的狀態,乙個遠端幀過去,車門把自己的狀態發回來
can匯流排節點id相關問題,遠端幀啊,資料幀啊
9樓:匿名使用者
問題一。假設a點為接收方,如果我設定了id濾波,那麼不是所有的id都能接收,
只有符合我的需要的id才能接收,那不就相當id連帶了目標mac,而卻每個節點id都是不一樣的,根據id值你就能知道是哪個節點傳送過來的資料了。這與接受資料時需要仲裁並不矛盾啊。
問題四很簡單解決。在b節點你設定報文濾波就行了。遮蔽掉c節點的id,這樣就算c節點傳送報文。b也不會接受的
can匯流排怎樣確定是遠端幀還是資料幀
10樓:匿名使用者
遠端幀後面是不帶資料位元組的,資料幀後面必然會帶1到8個位元組資料。
遠端幀就是can資料流中的rtr位為1,為0時是資料幀,具體位置要查can標準,在暫存器中的位置要看相關的晶元手冊
11樓:匿名使用者
一樓正確,支援一下,樓主還是先把協議看兩遍吧
can匯流排問題
12樓:兩嗅沁風
首先不得不說提問者愛思考也愛**竟,不過我要提醒您一句的是,can匯流排資料幀
與資料幀可不像串列埠一樣緊挨著,之間還有「幀間空間」,也就是說,即使迴圈傳送can幀,也至少還有3位隱性位間歇場,換句話說,最小間隔至少是8+3=11位,即16*11/8=22微秒。
13樓:匿名使用者
can的資料幀不是這樣理解的,can包括幀起始位、id位、擴充套件幀標誌位和遠端幀標誌位,資料長度位、資料段和crc段還有應答位,再加上can的物理層機制,每遇到5個相同的資料位就要加一位取反資料,所以要確定傳送資料幀才能確認一幀的具體傳輸時間
14樓:伊藉禹馳
1,感測器是不能直接連can的,是由微控制器採集感測器的訊號然後通過can匯流排發出去,所以要考慮的是感測器和微控制器的連線
2.這個根據你的實際需求可以自己去設定時間3,。一般情況不用人去管了,只需要出問題了再進行維修4,這個就看你系統硬體是怎麼設計的了,不同方案肯定不一樣5,這個依然看你的硬體設計來估算
can匯流排 節點之間通訊 如何確認接收資訊 +20
15樓:匿名使用者
首先,要明確你要的應答是什麼,是正確
接收某個報文,還是某個節點向另一節點請求報文
一、正確接收報文:
can報文包含乙個id場的部分,每個報文在匯流排上廣播,節點收到報文後比較id,如果是該節點應該接受的報文id,該節點則完成接受;
二、請求報文:
can報文內在id場前有乙個1bit長度遠端幀場,0表示為普通幀,1表示為遠端幀,當a節點希望b節點向它傳送某個報文時,a節點向匯流排廣播遠端幀,遠端幀無資料場,匯流排上節點同樣也是比較報文的id場,當b節點比對id場發現該遠端幀是向它請求時,b節點傳送該遠端幀請求的幀,a通過第一點中的方法接受收
ps:can匯流排報文的crc校驗場後面會有乙個ack應答場,傳送報文的節點發出的ack(1bit)為「1」,正確應答的節點(報文資料校驗通過正確)會將匯流排上的這個ack位電平拉成「0」,表示正確應答。
若a節點廣播報文後,發現該報文的ack始終為「1」,則其收發器將從快取中自動重發該幀,直到有節點正確接受ack為「0」或者a節點離線
希望對你有幫助,還有不完整或不理解的可以追加提問或者m我
16樓:**是
本人自學can通訊,蒐集了大量資料
除錯了一些裝置
開發過can-bus can-rs232以及485通訊有需要請看名字
一起交流
本和chinaku2005為同乙個人
基於can匯流排的資料採集
17樓:匿名使用者
把問抄題分解開後分析
所謂基bai於can匯流排的資料採集,du可分解為
1、zhican-bus匯流排系統
2、ad模數轉換dao
3、如果如pc連線還要can-rs232
關於資料幀遠端幀這些你不用管他,按照can2.0a說明書,人家怎麼設定你怎麼設定就ok了
現在常用的can都是基於微控制器的你可以選擇 51微控制器+sja1000+82c250
如果你的要求不是很嚴格的話,可以選擇帶ad的微控制器
其實如果你對arm比較熟悉的話,用arm最好不過了,arm相對較難,開發成本較高。
你可以自己買些晶元,參照網上成熟的電路和程式,做一些實驗準備,如先連幾個你做好的can模組,看看能否通訊
再則,你可以用帶ad的微控制器,採集一些電壓訊號(0—5v),
最後,把這些程式,柔和到一起,就ok了
程式都很成熟,如果你的要求比較高,就有些困難了。
微控制器比如選擇巨集晶科技的stc帶ad的,程式官方**上也有
can你可以參照 周立功的
ok祝你能找到感覺
關於微控制器和CAN匯流排,微控制器的CAN匯流排問題。希望大家能幫助我下。
缺少檔案。因而找不到報錯的那幾個巨集定義。帶can匯流排功能的微控制器有哪些?帶can匯流排控制器 的微控制器還有西門子的sab c505c和ti的tms320lf2407 帶can匯流排功能的微控制器,就內是整合can控制器的微控制器 比如容 p87c591 是乙個單片8 位高效能微控制器,具有片...
傳輸資料中的資料幀和遠端幀的區別
遠端幀後面是不帶資料位元組的,資料幀後面必然會帶1到8個位元組資料。遠端幀就是can資料流中的rtr位為1,為0時是資料幀,具體位置要查can標準,在暫存器中的位置要看相關的晶元手冊 can匯流排協議定義的介質訪問控制方式有什麼特點 一 can 匯流排的位數值表示與通訊距離 cancan採用了iso...
can匯流排有哪幾種形成的網路故障
某一節點失效,導致以下節點不能上網。線纜連線混亂,很不慎會連線到別交換機,會導致環路等等情況發生。在can匯流排中存在5種錯誤型別,它們互相並不排斥,下面簡單介紹一下它們的區別 產生的原因及處理方法。位錯誤 向匯流排送出一位的某個節點同時也在監視匯流排,當監視到匯流排位的電平和送出的電平不同時,則在...