新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 沒聽過這個(gè),都不好意思說自己做過CAN總線開發(fā)!

沒聽過這個(gè),都不好意思說自己做過CAN總線開發(fā)!

作者: 時(shí)間:2016-12-13 來源:網(wǎng)絡(luò) 收藏
CAN總線網(wǎng)絡(luò)中,若其中一個(gè)節(jié)點(diǎn)出現(xiàn)硬件或者軟件上的錯(cuò)誤,很可能導(dǎo)致總線電平持續(xù)保持在顯性狀態(tài),總線上所有節(jié)點(diǎn)均不能正常通信。在節(jié)點(diǎn)設(shè)計(jì)時(shí),應(yīng)該如何通過硬件手段避免這一問題發(fā)生?


總線值

CAN總線上的數(shù)據(jù)采用不歸零編碼方式,可具有兩種互補(bǔ)的邏輯值之一:“顯性”或“隱性”。“顯性”位和“隱性”位同時(shí)傳送時(shí),總線的結(jié)果值為“顯性”。比如,在執(zhí)行總線的“線與”時(shí),邏輯 0 代表“顯性”,邏輯1 代表“隱性”。

CAN總線節(jié)點(diǎn)的基本組成如圖1所示,當(dāng)MCU的TXD引腳輸出0時(shí),總線電平為顯性,若輸出1,總線電平則為隱性。

本文引用地址:http://2s4d.com/article/201612/329324.htm


圖1 CAN節(jié)點(diǎn)基本組成示意圖


TXD 顯性超時(shí)

由于CAN總線顯性電平的“支配地位”,在CAN總線組網(wǎng)時(shí),若有其中一個(gè)CAN節(jié)點(diǎn)出現(xiàn)硬件或者軟件上的錯(cuò)誤,使控制器TXD引腳持續(xù)處于低電平,則會(huì)使總線電平持續(xù)保持在顯性狀態(tài),總線上所有節(jié)點(diǎn)均不能正常通信,導(dǎo)致總線癱瘓。若總線節(jié)點(diǎn)數(shù)量眾多,確定問題節(jié)點(diǎn)將是一項(xiàng)艱巨的任務(wù)。

帶TXD顯性超時(shí)保護(hù)功能的CAN收發(fā)器可以有效防止出錯(cuò)的CAN控制器通過發(fā)送持續(xù)的顯性TXD信號(hào)將總線箝位在顯性電平。


圖2 TXD顯性超時(shí)功能


如圖2所示,帶TXD顯性超時(shí)保護(hù)的CAN收發(fā)器,在TXD引腳顯性時(shí)間超過允許最大的時(shí)間tDOM后,發(fā)送器將被禁能,收發(fā)器輸出表現(xiàn)為隱性狀態(tài),總線將不受該節(jié)點(diǎn)影響,從而保證總線的正常通信。收發(fā)器下一個(gè)顯性輸出只有在釋放了TXD后才可以產(chǎn)生。

隔離CAN收發(fā)器

表1列出了常用的隔離CAN收發(fā)器。從列表可以看出,CTM1051K(A)T具有TXD顯性超時(shí)保護(hù)功能,可以避免總線持續(xù)進(jìn)入顯性狀態(tài),保護(hù)總線正常通信。但由于tDOM的存在,收發(fā)器的最低工作位速率被限制。

表1 常用隔離CAN收發(fā)器


圖3 CAN隔離收發(fā)器


根據(jù) CAN 協(xié)議(ISO 11898),除了錯(cuò)誤幀和過載幀(允許6個(gè)相等顯性位),CAN幀報(bào)文中在5個(gè)連續(xù)相等位后,發(fā)送器自動(dòng)插入一個(gè)與之互補(bǔ)的補(bǔ)碼位;接收時(shí),這個(gè)填充位被自動(dòng)丟掉。例如,5個(gè)連續(xù)的高電平位后,CAN自動(dòng)插入一個(gè)低電平位。因此,TXD只允許最多11個(gè)連續(xù)的顯性位,最壞的情況是一個(gè)錯(cuò)誤幀緊接在5個(gè)連續(xù)的顯性位后,即tDOM的最小值要求收發(fā)器的最小位速率必須大于36.7kbit/s:



關(guān)鍵詞: CAN總線開

評(píng)論


技術(shù)專區(qū)

關(guān)閉