[問卦] 玩過 CAN bus 的請進

看板Gossiping作者時間3年前 (2022/12/23 17:16), 編輯推噓10(1006)
留言16則, 14人參與, 3年前最新討論串1/3 (看更多)
內葛阿 我在研究 CAN 的規格的時候遇到個想不通的點, 我們知道,在 CAN bus 裡面,當一個 sender 收到與自己正在傳輸的位元不一樣的準位 的信號時,也就是它原本正在送 1,結果收到 0,它會知道發生碰撞,並且讓出 bus 給 正在傳輸的節點。 問題來了! 如果 header 已經傳完了,當下正在傳輸的是 payload,並且正在傳送 1 的資料,這時 剛好其他節點開始說話了,並且發送 0。這樣不就造成即便 can_id 是最小的 frame, 也就是優先序最高的 frame,也會失去這次發送資料的機會?!?! 還是說,transceiver 的實做會在收完 header 的那幾個位元之後,就停止自己這個節點 的發送,直到其他節點傳送完資料,才會再次發送待傳送的資料,以避免上述情況發生? 蛤? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.162.146.9 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1671787009.A.B54.html

12/23 17:17, 3年前 , 1F
我文組看不懂耶 ㄅ欠
12/23 17:17, 1F

12/23 17:17, 3年前 , 2F
把版友當免費FAE? XD
12/23 17:17, 2F

12/23 17:18, 3年前 , 3F
偶都去csdn查
12/23 17:18, 3F

12/23 17:20, 3年前 , 4F
Can bus料又EOL,好煩
12/23 17:20, 4F

12/23 17:20, 3年前 , 5F
看 iec 61375 吧
12/23 17:20, 5F

12/23 17:22, 3年前 , 6F
看不懂啦,說人話好嗎
12/23 17:22, 6F

12/23 17:37, 3年前 , 7F
Call vendor 叫他出來擼給你看啊
12/23 17:37, 7F

12/23 17:58, 3年前 , 8F
同時時有仲裁機制阿,平常沒人傳你才能
12/23 17:58, 8F

12/23 17:58, 3年前 , 9F
12/23 17:58, 9F

12/23 17:59, 3年前 , 10F
跟smbus差不多啦
12/23 17:59, 10F

12/23 18:05, 3年前 , 11F
就掉包而已啊 沒什麼
12/23 18:05, 11F

12/23 20:10, 3年前 , 12F
我都用嘴砲大法叫底下的解決就好
12/23 20:10, 12F

12/23 20:34, 3年前 , 13F
作業自己做
12/23 20:34, 13F

12/23 23:48, 3年前 , 14F
去問ChatGPT啦
12/23 23:48, 14F

12/23 23:52, 3年前 , 15F
沒有壓碼嗎?不是有驗證機制
12/23 23:52, 15F

12/24 00:31, 3年前 , 16F
關鍵是 can id priority / open drain
12/24 00:31, 16F
文章代碼(AID): #1ZfN81jK (Gossiping)
文章代碼(AID): #1ZfN81jK (Gossiping)