發布日期:2022-07-14 點擊率:35
摘要:CAN總線網絡中,若其中一個節點出現硬件或者軟件上的錯誤,很可能導致總線電平持續保持在顯性狀態,總線上所有節點均不能正常通信。在節點設計時,應該如何通過硬件手段避免這一問題發生?
總線值
CAN總線上的數據采用不歸零編碼方式,可具有兩種互補的邏輯值之一:“顯性”或“隱性”。“顯性”位和“隱性”位同時傳送時,總線的結果值為“顯性”。比如,在執行總線的“線與”時,邏輯 0 代表“顯性”,邏輯1 代表“隱性”。
CAN總線節點的基本組成如圖1所示,當MCU的TXD引腳輸出0時,總線電平為顯性,若輸出1,總線電平則為隱性。
圖1 CAN節點基本組成示意圖
TXD 顯性超時
由于CAN總線顯性電平的“支配地位”,在CAN總線組網時,若有其中一個CAN節點出現硬件或者軟件上的錯誤,使控制器TXD引腳持續處于低電平,則會使總線電平持續保持在顯性狀態,總線上所有節點均不能正常通信,導致總線癱瘓。若總線節點數量眾多,確定問題節點將是一項艱巨的任務。
帶TXD顯性超時保護功能的CAN收發器可以有效防止出錯的CAN控制器通過發送持續的顯性TXD信號將總線箝位在顯性電平。
圖2 TXD顯性超時功能
如圖2所示,帶TXD顯性超時保護的CAN收發器,在TXD引腳顯性時間超過允許最大的時間tDOM后,發送器將被禁能,收發器輸出表現為隱性狀態,總線將不受該節點影響,從而保證總線的正常通信。收發器下一個顯性輸出只有在釋放了TXD后才可以產生。
隔離CAN收發器
表1列出了常用的隔離CAN收發器。從列表可以看出,CTM1051K(A)T具有TXD顯性超時保護功能,可以避免總線持續進入顯性狀態,保護總線正常通信。但由于tDOM的存在,收發器的最低工作位速率被限制。
表1 常用隔離CAN收發器
圖3 CAN隔離收發器
根據 CAN 協議(ISO 11898),除了錯誤幀和過載幀(允許6個相等顯性位),CAN幀報文中在5個連續相等位后,發送器自動插入一個與之互補的補碼位;接收時,這個填充位被自動丟掉。例如,5個連續的高電平位后,CAN自動插入一個低電平位。因此,TXD只允許最多11個連續的顯性位,最壞的情況是一個錯誤幀緊接在5個連續的顯性位后,即tDOM的最小值要求收發器的最小位速率必須大于。
下一篇: PLC、DCS、FCS三大控
上一篇: 現場總線與局域網的區