CAN協(xié)議規(guī)范PPT教學(xué)課件_第1頁(yè)
CAN協(xié)議規(guī)范PPT教學(xué)課件_第2頁(yè)
CAN協(xié)議規(guī)范PPT教學(xué)課件_第3頁(yè)
CAN協(xié)議規(guī)范PPT教學(xué)課件_第4頁(yè)
CAN協(xié)議規(guī)范PPT教學(xué)課件_第5頁(yè)
已閱讀5頁(yè),還剩87頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、什么是CAN ? CAN CAN 全稱為全稱為Controller Area Network Controller Area Network 即控制器局域網(wǎng),即控制器局域網(wǎng),是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一;是國(guó)際上應(yīng)用最廣泛的現(xiàn)場(chǎng)總線之一; 最初最初CAN CAN 被設(shè)計(jì)作為汽車環(huán)境中的微控制器通訊在車載被設(shè)計(jì)作為汽車環(huán)境中的微控制器通訊在車載各電子控制裝置各電子控制裝置ECU ECU 之間交換信息形成汽車電子控制網(wǎng)之間交換信息形成汽車電子控制網(wǎng)絡(luò)比如發(fā)動(dòng)機(jī)管理系統(tǒng)變速箱控制器儀表裝備電子主干系絡(luò)比如發(fā)動(dòng)機(jī)管理系統(tǒng)變速箱控制器儀表裝備電子主干系統(tǒng)中均嵌入統(tǒng)中均嵌入CAN CAN 控制裝置;控

2、制裝置; 一個(gè)由一個(gè)由CAN CAN 總線構(gòu)成的單一網(wǎng)絡(luò)中理論上可以掛接無數(shù)總線構(gòu)成的單一網(wǎng)絡(luò)中理論上可以掛接無數(shù)個(gè)節(jié)點(diǎn),實(shí)際應(yīng)用中節(jié)點(diǎn)數(shù)目受網(wǎng)絡(luò)硬件的電氣特性所限個(gè)節(jié)點(diǎn),實(shí)際應(yīng)用中節(jié)點(diǎn)數(shù)目受網(wǎng)絡(luò)硬件的電氣特性所限制。例如當(dāng)使用制。例如當(dāng)使用Philips P82C250 Philips P82C250 作為作為CAN CAN 收發(fā)器時(shí)同收發(fā)器時(shí)同一網(wǎng)絡(luò)中允許掛接一網(wǎng)絡(luò)中允許掛接110 110 個(gè)節(jié)點(diǎn);個(gè)節(jié)點(diǎn); CAN CAN 可提供高達(dá)可提供高達(dá)1Mbit/s 1Mbit/s 的數(shù)據(jù)傳輸速率這使實(shí)時(shí)控制的數(shù)據(jù)傳輸速率這使實(shí)時(shí)控制變得非常容易,另外硬件的錯(cuò)誤檢定特性也增強(qiáng)了變得非常容易,另外硬

3、件的錯(cuò)誤檢定特性也增強(qiáng)了CAN CAN 的抗電磁干擾能力的抗電磁干擾能力。第1頁(yè)/共92頁(yè)CAN 是怎樣發(fā)展起來的? CANCAN最初出現(xiàn)在最初出現(xiàn)在8080年代末的汽車工業(yè)中,由德國(guó)年代末的汽車工業(yè)中,由德國(guó)BoschBosch公司最先提出。當(dāng)時(shí),由于消費(fèi)者對(duì)于汽公司最先提出。當(dāng)時(shí),由于消費(fèi)者對(duì)于汽車功能的要求越來越多,而這些功能的實(shí)現(xiàn)大多車功能的要求越來越多,而這些功能的實(shí)現(xiàn)大多是基于電子操作的,這就使得電子裝置之間的通是基于電子操作的,這就使得電子裝置之間的通訊越來越復(fù)雜,同時(shí)意味著需要更多的連接信號(hào)訊越來越復(fù)雜,同時(shí)意味著需要更多的連接信號(hào)線。提出線。提出CANCAN總線的最初動(dòng)機(jī)就是

4、為了解決現(xiàn)代汽總線的最初動(dòng)機(jī)就是為了解決現(xiàn)代汽車中龐大的電子控制裝置之間的通訊,減少不斷車中龐大的電子控制裝置之間的通訊,減少不斷增加的信號(hào)線。于是,他們?cè)O(shè)計(jì)了一個(gè)單一的網(wǎng)增加的信號(hào)線。于是,他們?cè)O(shè)計(jì)了一個(gè)單一的網(wǎng)絡(luò)總線,所有的外圍器件可以被掛接在該總線上。絡(luò)總線,所有的外圍器件可以被掛接在該總線上。19931993年,年,CAN CAN 已成為國(guó)際標(biāo)準(zhǔn)已成為國(guó)際標(biāo)準(zhǔn)ISO11898(ISO11898(高速應(yīng)高速應(yīng)用用) )和和ISO11519ISO11519(低速應(yīng)用)。(低速應(yīng)用)。 第2頁(yè)/共92頁(yè) CANCAN是一種多主方式的串行通訊總線,基本設(shè)計(jì)規(guī)范要求有高的位速率,高抗電磁是一種多

5、主方式的串行通訊總線,基本設(shè)計(jì)規(guī)范要求有高的位速率,高抗電磁干擾性,而且能夠檢測(cè)出產(chǎn)生的任何錯(cuò)誤。當(dāng)信號(hào)傳輸距離達(dá)到干擾性,而且能夠檢測(cè)出產(chǎn)生的任何錯(cuò)誤。當(dāng)信號(hào)傳輸距離達(dá)到10Km10Km時(shí),時(shí),CAN CAN 仍可仍可提供高達(dá)提供高達(dá)50Kbit/s50Kbit/s的數(shù)據(jù)傳輸速率。的數(shù)據(jù)傳輸速率。 由于由于CANCAN總線具有很高的實(shí)時(shí)性能,因此,總線具有很高的實(shí)時(shí)性能,因此,CANCAN已經(jīng)在汽車工業(yè)、航空工業(yè)、工業(yè)控已經(jīng)在汽車工業(yè)、航空工業(yè)、工業(yè)控制、安全防護(hù)等領(lǐng)域中得到了廣泛應(yīng)用。制、安全防護(hù)等領(lǐng)域中得到了廣泛應(yīng)用。 第3頁(yè)/共92頁(yè)CAN總線的主要特點(diǎn) 它是一種多主總線,通信介質(zhì)可以

6、是雙絞線、同軸電纜和光纖,通信距離最遠(yuǎn)可達(dá)10km(5kb/s),最高速率可達(dá)1Mb/s(40m). CAN總線通信接口中集成了CAN協(xié)議的物理層和數(shù)據(jù)鏈路層功能,可完成對(duì)通信數(shù)據(jù)的成幀處理,包括位填充、數(shù)據(jù)塊編碼、循環(huán)冗余檢驗(yàn)、優(yōu)先級(jí)判別等項(xiàng)工作。 CAN協(xié)議的一個(gè)最大特點(diǎn)是廢除了傳統(tǒng)的站地址編碼,而代之以對(duì)通信數(shù)據(jù)塊進(jìn)行編碼。采用這種方法的優(yōu)點(diǎn)可使網(wǎng)絡(luò)內(nèi)的節(jié)點(diǎn)個(gè)數(shù)在理論上不受限制,數(shù)據(jù)塊的標(biāo)識(shí)碼可由11位或29位二進(jìn)制數(shù)組成,因此可以定義211或229個(gè)不同的數(shù)據(jù)塊,讓各節(jié)點(diǎn)通過濾波的方法分別接收指定標(biāo)識(shí)碼的數(shù)據(jù)。這種按數(shù)據(jù)塊編碼的方式,還可使不同的節(jié)點(diǎn)同時(shí)接收到相同的數(shù)據(jù),這一點(diǎn)在分布式

7、控制系統(tǒng)中非常有用。第4頁(yè)/共92頁(yè)CAN總線的特點(diǎn) 數(shù)據(jù)段長(zhǎng)度最多為8個(gè)字節(jié),可滿足通常工業(yè)領(lǐng)域中控制命令、工作狀態(tài)及測(cè)試數(shù)據(jù)的一般要求。同時(shí),8個(gè)字節(jié)不會(huì)占用總線時(shí)間過長(zhǎng),從而保證了通信的實(shí)時(shí)性。在每幀中都有CRC校驗(yàn)及其它檢錯(cuò)措施,保證了數(shù)據(jù)通信的可靠性。 CAN總線采用了多主競(jìng)爭(zhēng)式總線結(jié)構(gòu),具有多主站運(yùn)行和分散仲裁的串行總線以及廣播通信的特點(diǎn)。CAN總線上任意節(jié)點(diǎn)可在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上其它節(jié)點(diǎn)發(fā)送信息而不分主次,因此可在各節(jié)點(diǎn)之間實(shí)現(xiàn)自由通信。 網(wǎng)絡(luò)上的節(jié)點(diǎn)可以定義成不同的優(yōu)先級(jí),利用接口電路中線與功能,巧妙地實(shí)現(xiàn)無破壞性的基于優(yōu)先權(quán)的仲裁 網(wǎng)絡(luò)上的節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下,具有自動(dòng)

8、關(guān)閉總線的功能第5頁(yè)/共92頁(yè)第6頁(yè)/共92頁(yè)CAN 是怎樣工作的? CAN 通訊協(xié)議主要描述設(shè)備之間的信息傳遞方式,CAN 層的定義與開放系統(tǒng)互連模型OSI 一致。每一層與另一設(shè)備上相同的那一層通訊實(shí)際的通訊發(fā)生在每一設(shè)備上相鄰的兩層,而設(shè)備只通過模型物理層的物理介質(zhì)互連。 CAN 的規(guī)范定義了模型的最下面兩層:數(shù)據(jù)鏈路層和物理層。應(yīng)用層協(xié)議可以由CAN 用戶定義成適合特別工業(yè)領(lǐng)域的任何方案。已在工業(yè)控制和制造業(yè)領(lǐng)域得到廣泛應(yīng)用的標(biāo)準(zhǔn)是DeviceNet ,這是為PLC 和智能傳感器設(shè)計(jì)的;在汽車工業(yè)許多制造商都應(yīng)用他們自己的標(biāo)準(zhǔn)。第7頁(yè)/共92頁(yè)CAN的工作原理 當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)(

9、站)發(fā)送數(shù)據(jù)時(shí),它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。對(duì)每個(gè)節(jié)點(diǎn)來說,無論數(shù)據(jù)是否是發(fā)給自己的,都對(duì)其進(jìn)行接收。每組報(bào)文開頭的11位字符為標(biāo)識(shí)符,定義了報(bào)文的優(yōu)先級(jí),這種報(bào)文格式稱為面向內(nèi)容的編址方案。在同一系統(tǒng)中標(biāo)識(shí)符是唯一的,不可能有兩個(gè)站發(fā)送具有相同標(biāo)識(shí)符的報(bào)文。當(dāng)幾個(gè)站同時(shí)競(jìng)爭(zhēng)總線讀取時(shí),這種配置十分重要。 CAN總線的報(bào)文發(fā)送和接收。當(dāng)一個(gè)站要向其它站發(fā)送數(shù)據(jù)時(shí),該站的CPU將要發(fā)送的數(shù)據(jù)和自己的標(biāo)識(shí)符傳送給本站的CAN芯片,并處于準(zhǔn)備狀態(tài);當(dāng)它收到總線分配時(shí), 轉(zhuǎn)為發(fā)送報(bào)文狀態(tài)。CAN芯片將數(shù)據(jù)根據(jù)協(xié)議組織成一定的報(bào)文格式發(fā)出,這時(shí)網(wǎng)上的其它站處于接收狀態(tài)。每個(gè)處于接收狀態(tài)的站對(duì)接收到

10、的報(bào)文進(jìn)行檢測(cè),判斷這些報(bào)文是否是發(fā)給自己的,以確定是否接收它。 由于CAN總線是一種面向內(nèi)容的編址方案,因此很容易建立高水準(zhǔn)的控制系統(tǒng)并靈活地進(jìn)行配置。我們可以很容易地在CAN總線中加進(jìn)一些新站而無需在硬件或軟件上進(jìn)行修改。當(dāng)所提供的新站是純數(shù)據(jù)接收設(shè)備時(shí),數(shù)據(jù)傳輸協(xié)議不要求獨(dú)立的部分有物理目的地址。它允許分布過程同步化,即總線上控制器需要測(cè)量數(shù)據(jù)時(shí),可由網(wǎng)上獲得,而無須每個(gè)控制器都有自己獨(dú)立的傳感器。第8頁(yè)/共92頁(yè)CAN的一些基本概念 報(bào)文 總線上的信息以不同的固定報(bào)文格式發(fā)送,但長(zhǎng)度受限。當(dāng)總線空閑時(shí)任何連接的單元都可以開始發(fā)送新的報(bào)文。第9頁(yè)/共92頁(yè)信息路由 在CAN系統(tǒng)里,節(jié)點(diǎn)不

11、使用任何關(guān)于系統(tǒng)配置的信息(比如站地址)。以下是幾個(gè)重要的概念: 系統(tǒng)靈活性:不需要改變?nèi)魏喂?jié)點(diǎn)的應(yīng)用層及相關(guān)的軟件或硬件,就可以在CAN網(wǎng)絡(luò)中直接添加節(jié)點(diǎn)。 報(bào)文路由:報(bào)文的內(nèi)容由識(shí)別符命名。識(shí)別符不指出報(bào)文的目的地,但解釋數(shù)據(jù)的含義。因此網(wǎng)絡(luò)上所有節(jié)點(diǎn)都可以通過報(bào)文濾波確定是否應(yīng)對(duì)該數(shù)據(jù)做出反應(yīng)。 多播:由于引入了報(bào)文濾波的概念,任何數(shù)目的節(jié)點(diǎn)都可以接受報(bào)文,并同時(shí)對(duì)此報(bào)文做出反應(yīng)。 數(shù)據(jù)連貫性:在CAN網(wǎng)絡(luò)內(nèi),可以確保報(bào)文同時(shí)被所有的節(jié)點(diǎn)接受(或同時(shí)不接受)。因此系統(tǒng)的連貫性是通過多播和錯(cuò)誤處理的原理實(shí)現(xiàn)的。第10頁(yè)/共92頁(yè) 報(bào)文 總線上的信息以不同的固定報(bào)文格式發(fā)送,但長(zhǎng)度受限。當(dāng)總

12、線空閑時(shí)任何連接的單元都可以開始發(fā)送新的報(bào)文。 位速率: 不同的系統(tǒng),CAN的速度不同??墒窃谝粋€(gè)給定系統(tǒng)中,位速率是唯一的,并且是固定的。 優(yōu)先權(quán): 在總線訪問期間,識(shí)別符定義一個(gè)靜態(tài)的報(bào)文優(yōu)先權(quán)。第11頁(yè)/共92頁(yè) 遠(yuǎn)程數(shù)據(jù)請(qǐng)求: 通過發(fā)送遠(yuǎn)程幀,需要數(shù)據(jù)的節(jié)點(diǎn)可以請(qǐng)求另一節(jié)點(diǎn)發(fā)送相應(yīng)的數(shù)據(jù)幀。數(shù)據(jù)幀和相應(yīng)的遠(yuǎn)程幀是由相同的標(biāo)識(shí)符命名的。 多主機(jī): 總線空閑時(shí),任何單元都可以開始傳送報(bào)文。具有較高優(yōu)先權(quán)報(bào)文的單元可以獲得總線訪問權(quán)。第12頁(yè)/共92頁(yè) 仲裁: 只要總線空閑,任何單元都可以開始發(fā)送報(bào)文。如果2個(gè)或2個(gè)以上的單元同時(shí)開始傳送報(bào)文,那么就會(huì)有總線訪問沖突。通過使用識(shí)別符的位形式仲

13、裁就可以解決沖突。仲裁的機(jī)制確保信息和時(shí)間均不會(huì)損失。當(dāng)具有相同識(shí)別符的數(shù)據(jù)幀和遠(yuǎn)程幀同時(shí)初始化時(shí),數(shù)據(jù)幀優(yōu)先于遠(yuǎn)程幀。仲裁期間,每一個(gè)發(fā)送器都對(duì)發(fā)送位的電平與被監(jiān)控的總線電平進(jìn)行比較。如果電平相同,則這個(gè)單元可以繼續(xù)發(fā)送。如果發(fā)送的是“隱性”電平而監(jiān)控到“顯性”電平(見總線值),那么該單元就失去了仲裁,必須退出發(fā)射狀態(tài)。第13頁(yè)/共92頁(yè) 安全性:為了獲得最安全的數(shù)據(jù)發(fā)送,CAN的每一個(gè)節(jié)點(diǎn)均采取了很強(qiáng)的措施進(jìn)行錯(cuò)誤檢測(cè)、錯(cuò)誤標(biāo)定及錯(cuò)誤自檢。第14頁(yè)/共92頁(yè) 錯(cuò)誤檢測(cè):為了檢測(cè)錯(cuò)誤,必須采取以下的措施: 監(jiān)視(發(fā)送器對(duì)發(fā)送位的電平與被監(jiān)控的總線電平進(jìn)行比較) 循環(huán)冗余檢查 位填充 報(bào)文格式

14、檢查 錯(cuò)誤檢測(cè)的執(zhí)行:錯(cuò)誤檢測(cè)的機(jī)制要具有以下的屬性: 檢測(cè)到所有的全局錯(cuò)誤 檢測(cè)到發(fā)送器所有的局部錯(cuò)誤 可以檢測(cè)到報(bào)文里多達(dá)5個(gè)的任意分布錯(cuò)誤 檢測(cè)到一個(gè)報(bào)文長(zhǎng)度低于15位的突發(fā)性錯(cuò)誤 檢測(cè)到一個(gè)報(bào)文里奇數(shù)個(gè)的錯(cuò)誤 對(duì)于沒有被檢測(cè)到的錯(cuò)誤報(bào)文,其殘余錯(cuò)誤可能性概率低于報(bào)文錯(cuò)誤率4.710-11。第15頁(yè)/共92頁(yè) 錯(cuò)誤標(biāo)定和恢復(fù)時(shí)間: 任何檢測(cè)到錯(cuò)誤的節(jié)點(diǎn)會(huì)標(biāo)志出已損壞的報(bào)文。此報(bào)文會(huì)失效并自動(dòng)開始重新傳輸。如果不再出現(xiàn)新錯(cuò)誤的話,從檢測(cè)到錯(cuò)誤到下一報(bào)文的傳送開始為止,恢復(fù)時(shí)間最多為29個(gè)位的時(shí)間。 故障界定: CAN節(jié)點(diǎn)能夠把永久故障和短暫擾動(dòng)區(qū)分開,永久故障的節(jié)點(diǎn)會(huì)被關(guān)閉。 連接: CA

15、N串行通訊鏈路是可以連接許多單元的總線。理論上,可連接無數(shù)多的單元。但由于實(shí)際上受延遲時(shí)間或總線線路上電氣負(fù)載的影響,連接單元的數(shù)量是有限的。第16頁(yè)/共92頁(yè) 單通道: 總線是由單一進(jìn)行雙向位信號(hào)傳送的通道組成。通過此通道可以獲得數(shù)據(jù)的再同步信息。要使此通道實(shí)現(xiàn)通訊,有許多方法可以采用,如使用單芯線(加上接地)、2條差分線、光纜等。這本技術(shù)規(guī)范不限制這些實(shí)現(xiàn)方法的使用,即未定義物理層。 總線值: 總線可以具有兩種互補(bǔ)的邏輯值之一:“顯性”位和“隱性”位同時(shí)傳送時(shí),總線的結(jié)果值為“顯性”。比如,在執(zhí)行總線的“線與”時(shí),邏輯0代表顯性等級(jí),邏輯1代表隱性等級(jí)。本技術(shù)規(guī)范不給出這些邏輯電平的物理狀

16、態(tài)(如電壓和光)。 應(yīng)答: 所有的接收器檢查報(bào)文的連貫性。對(duì)于連貫的報(bào)文,連接器應(yīng)答;對(duì)于不連貫的報(bào)文,接收器做出標(biāo)志。第17頁(yè)/共92頁(yè) 睡眠模式/喚醒: 為了減少系統(tǒng)電源的功率消耗??梢詫AN器件設(shè)為睡眠模式以便停止內(nèi)部活動(dòng)及斷開與總線驅(qū)動(dòng)器的連接。CAN器件可由總線激活,或系統(tǒng)內(nèi)部狀態(tài)而被喚醒。喚醒時(shí),雖然傳輸層要等待一段時(shí)間使系統(tǒng)振蕩器穩(wěn)定,然后還要等待一段時(shí)間直到與總線活動(dòng)同步(通過檢查11個(gè)連續(xù)的隱性的位),但在總線驅(qū)動(dòng)器被重新設(shè)置為“總線在線”之前,內(nèi)部運(yùn)行已重新開始。為了喚醒系統(tǒng)上正處于睡眠模式的其他節(jié)點(diǎn),可以使一特殊的喚醒報(bào)文,此報(bào)文具有專門的、最低等級(jí)的識(shí)別符。(rrr

17、rrrd rrrr; r=“隱性” d =“顯性”)第18頁(yè)/共92頁(yè)CAN 具有以下的屬性 報(bào)文的優(yōu)先權(quán)報(bào)文的優(yōu)先權(quán) 保證延遲時(shí)間保證延遲時(shí)間 設(shè)置靈活設(shè)置靈活 時(shí)間同步的多點(diǎn)接收時(shí)間同步的多點(diǎn)接收 系統(tǒng)寬數(shù)據(jù)的連貫性系統(tǒng)寬數(shù)據(jù)的連貫性 多主機(jī)多主機(jī) 錯(cuò)誤檢測(cè)和標(biāo)定錯(cuò)誤檢測(cè)和標(biāo)定 只要總線一處于空閑就自動(dòng)將破壞的報(bào)文重新傳只要總線一處于空閑就自動(dòng)將破壞的報(bào)文重新傳輸輸 將節(jié)點(diǎn)的暫時(shí)性錯(cuò)誤和永久性錯(cuò)誤區(qū)分開來并且將節(jié)點(diǎn)的暫時(shí)性錯(cuò)誤和永久性錯(cuò)誤區(qū)分開來并且可以自動(dòng)關(guān)閉錯(cuò)誤的節(jié)點(diǎn)可以自動(dòng)關(guān)閉錯(cuò)誤的節(jié)點(diǎn)第19頁(yè)/共92頁(yè)CANCAN總線的網(wǎng)絡(luò)結(jié)構(gòu)總線的網(wǎng)絡(luò)結(jié)構(gòu) CAN總線也是建立在ISO參考模型基礎(chǔ)

18、上的,不過只采用了其中最關(guān)鍵的兩層,即物理層和數(shù)據(jù)鏈路層.第20頁(yè)/共92頁(yè) 物理層的主要內(nèi)容是規(guī)定通信介質(zhì)的機(jī)械、電氣、功能和規(guī)程特性 數(shù)據(jù)鏈路層的主要功能是將要發(fā)送的數(shù)據(jù)進(jìn)行包裝,即加上差錯(cuò)校驗(yàn)位、數(shù)據(jù)鏈路協(xié)議的控制信息、頭尾標(biāo)記等附加信息組成數(shù)據(jù)幀,從物理信道上發(fā)送出去,在接收道數(shù)據(jù)幀后,再把附加信息去掉,得到通信數(shù)據(jù) 媒體訪問控制子層MAC:傳輸規(guī)則 邏輯控制子層LLC:報(bào)文的濾波和報(bào)文的處理 CAN總線的物理層和數(shù)據(jù)鏈路層的功能在CAN控制器中完成第21頁(yè)/共92頁(yè)CAN-bus 規(guī)范 CAN-bus CAN-bus 規(guī)范(規(guī)范( Version 2.0 Version 2.0 )

19、CAN2.0A CAN2.0A :CANCAN標(biāo)準(zhǔn)報(bào)文格式標(biāo)準(zhǔn)報(bào)文格式 CAN2.0B CAN2.0B :CANCAN標(biāo)準(zhǔn)報(bào)文格式和擴(kuò)展報(bào)文格式標(biāo)準(zhǔn)報(bào)文格式和擴(kuò)展報(bào)文格式 CAN-bus CAN-bus 技術(shù)規(guī)范技術(shù)規(guī)范的目的技術(shù)規(guī)范技術(shù)規(guī)范的目的 定義數(shù)據(jù)鏈路層定義數(shù)據(jù)鏈路層 定義定義CANCAN協(xié)議在周圍各層中所發(fā)揮的作用協(xié)議在周圍各層中所發(fā)揮的作用第22頁(yè)/共92頁(yè)幀格式 二種不同的二種不同的CANCAN幀幀CANCAN規(guī)范規(guī)范2.0B2.0B中引入第二種報(bào)文格式中引入第二種報(bào)文格式標(biāo)準(zhǔn)幀和擴(kuò)展幀標(biāo)準(zhǔn)幀和擴(kuò)展幀 具有具有1111位標(biāo)識(shí)符的位標(biāo)識(shí)符的CANCAN幀稱為:標(biāo)準(zhǔn)幀幀稱為:標(biāo)準(zhǔn)幀

20、 具有具有2929位標(biāo)識(shí)符的位標(biāo)識(shí)符的CANCAN幀稱為:擴(kuò)展幀幀稱為:擴(kuò)展幀 規(guī)定規(guī)定CAN CAN 控制器必須有一個(gè)控制器必須有一個(gè)11 11 位的標(biāo)志符,同位的標(biāo)志符,同時(shí)在時(shí)在2.0B 2.0B 版本中規(guī)定版本中規(guī)定CAN CAN 控制器的標(biāo)志符長(zhǎng)度控制器的標(biāo)志符長(zhǎng)度可以是可以是11 11 位或位或29 29 位。遵循位。遵循CAN2.0B CAN2.0B 協(xié)議的協(xié)議的CAN CAN 控制器可以發(fā)送和接收控制器可以發(fā)送和接收11 11 位標(biāo)識(shí)符的標(biāo)準(zhǔn)格式報(bào)位標(biāo)識(shí)符的標(biāo)準(zhǔn)格式報(bào)文或文或29 29 位標(biāo)識(shí)符的擴(kuò)展格式報(bào)文。如果禁止位標(biāo)識(shí)符的擴(kuò)展格式報(bào)文。如果禁止CAN2.0BCAN2.0B

21、,則,則CAN CAN 控制器只能發(fā)送和接收控制器只能發(fā)送和接收11 11 位標(biāo)位標(biāo)識(shí)符的標(biāo)準(zhǔn)格式報(bào)文,而忽略擴(kuò)展格式的報(bào)文結(jié)識(shí)符的標(biāo)準(zhǔn)格式報(bào)文,而忽略擴(kuò)展格式的報(bào)文結(jié)構(gòu)但不會(huì)出現(xiàn)錯(cuò)誤構(gòu)但不會(huì)出現(xiàn)錯(cuò)誤第23頁(yè)/共92頁(yè)幀類型 報(bào)文傳輸由以下4個(gè)不同的幀類型所表示和控制: 數(shù)據(jù)幀數(shù)據(jù)幀:數(shù)據(jù)幀攜帶數(shù)據(jù)從發(fā)送器至接收器。 遠(yuǎn)程幀遠(yuǎn)程幀:總線單元發(fā)出遠(yuǎn)程幀,請(qǐng)求發(fā)送具有同一識(shí)別符的數(shù)據(jù)幀。 錯(cuò)誤幀錯(cuò)誤幀:任何單元檢測(cè)到一總線錯(cuò)誤就發(fā)送錯(cuò)誤幀。 過載幀過載幀:過載幀用以在先行的和后續(xù)的數(shù)據(jù)幀(或遠(yuǎn)程幀)之間提供一個(gè)附加的延時(shí)。數(shù)據(jù)幀(或遠(yuǎn)程幀)通過幀間空間與前述各幀分開。第24頁(yè)/共92頁(yè)1 1、數(shù)、

22、數(shù) 據(jù)據(jù) 幀幀數(shù)據(jù)幀由7個(gè)不同的位場(chǎng)組成: 幀起始 仲裁場(chǎng) 控制場(chǎng) 數(shù)據(jù)場(chǎng) CRC場(chǎng) 應(yīng)答場(chǎng) 幀結(jié)尾數(shù)據(jù)場(chǎng)的長(zhǎng)度可以為0。第25頁(yè)/共92頁(yè)第26頁(yè)/共92頁(yè)第27頁(yè)/共92頁(yè)第28頁(yè)/共92頁(yè)數(shù)據(jù)幀結(jié)構(gòu)第29頁(yè)/共92頁(yè)擴(kuò)展幀格式 標(biāo)準(zhǔn)幀格式:具有標(biāo)準(zhǔn)幀格式:具有1111位標(biāo)識(shí)符位標(biāo)識(shí)符 擴(kuò)展幀格式:具有擴(kuò)展幀格式:具有2929位標(biāo)識(shí)符位標(biāo)識(shí)符 兩種幀格式的區(qū)別通過兩種幀格式的區(qū)別通過“控制場(chǎng)控制場(chǎng)”(ControlControl Field Field )中的)中的“識(shí)別符擴(kuò)展識(shí)別符擴(kuò)展”位(位(IDE bitIDE bit)來實(shí)現(xiàn))來實(shí)現(xiàn) 兩種幀格式可出現(xiàn)在同一總線上兩種幀格式可出現(xiàn)在同

23、一總線上第30頁(yè)/共92頁(yè)擴(kuò)展數(shù)據(jù)幀結(jié)構(gòu)第31頁(yè)/共92頁(yè)幀 起 始 它標(biāo)志數(shù)據(jù)幀和遠(yuǎn)程幀的起始,由一個(gè)單獨(dú)的“顯性”位組成。 只在總線空閑(參見“總線空閑”)時(shí),才允許站開始發(fā)送信號(hào)。所有的站必須同步于首先開始發(fā)送信息的站的幀起始前沿(參見“硬同步”)。第32頁(yè)/共92頁(yè)仲 裁 場(chǎng) 標(biāo)準(zhǔn)格式幀與擴(kuò)展格式幀的仲裁場(chǎng)格式不同標(biāo)準(zhǔn)格式幀與擴(kuò)展格式幀的仲裁場(chǎng)格式不同- - 標(biāo)準(zhǔn)格式里仲裁場(chǎng)由標(biāo)準(zhǔn)格式里仲裁場(chǎng)由11 11 位識(shí)別符和位識(shí)別符和RTR RTR 位組成識(shí)別符位由位組成識(shí)別符位由ID-28ID-28ID-18ID-18- - 擴(kuò)展格式里仲裁場(chǎng)包括擴(kuò)展格式里仲裁場(chǎng)包括29 29 位識(shí)別符位識(shí)別

24、符SRR SRR 位位IDE IDE 位位RTR RTR 位其識(shí)別符由位其識(shí)別符由ID-28. ID-0ID-28. ID-0 為了區(qū)別標(biāo)準(zhǔn)格式和擴(kuò)展格式前版本為了區(qū)別標(biāo)準(zhǔn)格式和擴(kuò)展格式前版本CAN CAN 規(guī)范規(guī)范1.0-1.2 1.0-1.2 的保留位的保留位r1 r1 現(xiàn)表示為現(xiàn)表示為IDE BitIDE Bit第33頁(yè)/共92頁(yè)第34頁(yè)/共92頁(yè)第35頁(yè)/共92頁(yè)識(shí)別符 識(shí)別符標(biāo)準(zhǔn)格式 識(shí)別符的長(zhǎng)度為11 位,相當(dāng)于擴(kuò)展格式的基本ID (Base ID)。 這些位按ID-28 到ID-18 的順序發(fā)送。最低位是ID-18,7 個(gè)最高位(ID-28 - ID-22 )必須不能全是隱性。

25、識(shí)別符擴(kuò)展格式 和標(biāo)準(zhǔn)格式形成對(duì)比擴(kuò)展格式,由29 位組成。其格式包含兩個(gè)部分:11 位基本ID、 18 位擴(kuò)展ID。 基本ID :基本ID 包括11 位。它按ID-28 到ID-18 的順序發(fā)送。它相當(dāng)于標(biāo)準(zhǔn)識(shí)別符的格式。基本ID定義擴(kuò)展幀的基本優(yōu)先權(quán) 擴(kuò)展ID :擴(kuò)展ID 包括18 位。它按ID-17 到ID-0 順序發(fā)送。第36頁(yè)/共92頁(yè) RTR RTR 位(標(biāo)準(zhǔn)格式以及擴(kuò)展格式)位(標(biāo)準(zhǔn)格式以及擴(kuò)展格式)RTR RTR 的全稱為遠(yuǎn)程發(fā)送請(qǐng)求位(的全稱為遠(yuǎn)程發(fā)送請(qǐng)求位(Remote Transmission Request BITRemote Transmission Request

26、BIT)RTR RTR 位在數(shù)據(jù)幀里必須為位在數(shù)據(jù)幀里必須為“顯性顯性”,而在遠(yuǎn)程幀里必須為,而在遠(yuǎn)程幀里必須為“隱性隱性”。第37頁(yè)/共92頁(yè) 擴(kuò)展格式里,基本擴(kuò)展格式里,基本ID ID 首先發(fā)送,其次是首先發(fā)送,其次是IDE IDE 位和位和SRR SRR 位。擴(kuò)展位。擴(kuò)展ID ID 的發(fā)送位于的發(fā)送位于SRR SRR 位之后。位之后。 SRR SRR 位(擴(kuò)展格式)位(擴(kuò)展格式) SRR SRR 的全稱是的全稱是“替代遠(yuǎn)程請(qǐng)求位替代遠(yuǎn)程請(qǐng)求位”(Substitute Remote Request BITSubstitute Remote Request BIT) SRR SRR 是一隱性

27、位。它在擴(kuò)展格式的標(biāo)準(zhǔn)幀是一隱性位。它在擴(kuò)展格式的標(biāo)準(zhǔn)幀RTR RTR 位位置,因此代替標(biāo)準(zhǔn)幀的位位置,因此代替標(biāo)準(zhǔn)幀的RTR RTR 位。位。 因此,標(biāo)準(zhǔn)幀與擴(kuò)展幀的沖突是通過標(biāo)準(zhǔn)幀優(yōu)先于擴(kuò)展幀這一途徑得以解決的,擴(kuò)因此,標(biāo)準(zhǔn)幀與擴(kuò)展幀的沖突是通過標(biāo)準(zhǔn)幀優(yōu)先于擴(kuò)展幀這一途徑得以解決的,擴(kuò)展幀的基本展幀的基本ID ID 如同標(biāo)準(zhǔn)幀的識(shí)別符。如同標(biāo)準(zhǔn)幀的識(shí)別符。第38頁(yè)/共92頁(yè) IDE IDE 位(擴(kuò)展格式)位(擴(kuò)展格式) IDE IDE 的全稱是的全稱是“識(shí)別符擴(kuò)展位識(shí)別符擴(kuò)展位”(Identifier Extension BitIdentifier Extension Bit) IDE I

28、DE 位屬于位屬于 擴(kuò)展格式的仲裁場(chǎng)擴(kuò)展格式的仲裁場(chǎng) 標(biāo)準(zhǔn)格式的控制場(chǎng)標(biāo)準(zhǔn)格式的控制場(chǎng) 標(biāo)準(zhǔn)格式里的標(biāo)準(zhǔn)格式里的IDE IDE 位為位為“顯性顯性”,而擴(kuò)展格式里的,而擴(kuò)展格式里的IDE IDE 位為位為“隱性隱性”。第39頁(yè)/共92頁(yè)控制場(chǎng)(標(biāo)準(zhǔn)格式以及擴(kuò)展格式) 控制場(chǎng)由控制場(chǎng)由6 6 個(gè)位組成。標(biāo)準(zhǔn)格式的控制場(chǎng)格式和擴(kuò)展格式的不同,標(biāo)準(zhǔn)格式里的幀個(gè)位組成。標(biāo)準(zhǔn)格式的控制場(chǎng)格式和擴(kuò)展格式的不同,標(biāo)準(zhǔn)格式里的幀包括數(shù)據(jù)長(zhǎng)度代碼、包括數(shù)據(jù)長(zhǎng)度代碼、IDE IDE 位(為顯性位)及保留位位(為顯性位)及保留位r0 r0 。擴(kuò)展格式里的幀包括數(shù)據(jù)。擴(kuò)展格式里的幀包括數(shù)據(jù)長(zhǎng)度代碼和兩個(gè)保留位:長(zhǎng)度代

29、碼和兩個(gè)保留位:r1 r1 和和r0r0,其保留位必須發(fā)送為顯性,但是接收器認(rèn)可,其保留位必須發(fā)送為顯性,但是接收器認(rèn)可“顯性顯性”和和“隱性隱性”位的組合。位的組合。第40頁(yè)/共92頁(yè)第41頁(yè)/共92頁(yè)數(shù)據(jù)長(zhǎng)度代碼(標(biāo)準(zhǔn)格式以及擴(kuò)展格式) 數(shù)據(jù)長(zhǎng)度代碼指示了數(shù)據(jù)場(chǎng)里的字節(jié)數(shù)量。數(shù)據(jù)長(zhǎng)度代碼為4 個(gè)位,它在控制場(chǎng)里發(fā)送。 數(shù)據(jù)長(zhǎng)度代碼中數(shù)據(jù)字節(jié)數(shù)的編碼 縮寫: d 顯性;r 隱性第42頁(yè)/共92頁(yè)數(shù)據(jù)幀允許的數(shù)據(jù)字節(jié)數(shù)0,1,.,7,8其他的數(shù)值不允許使用第43頁(yè)/共92頁(yè)數(shù) 據(jù) 場(chǎng)(標(biāo)準(zhǔn)格式以及擴(kuò)展格式) 數(shù)據(jù)場(chǎng)由數(shù)據(jù)幀中的發(fā)送數(shù)據(jù)組成。它可以為08個(gè)字節(jié),每個(gè)字節(jié)包含了8個(gè)位,首先發(fā)送MS

30、B。第44頁(yè)/共92頁(yè)CRC 場(chǎng)(標(biāo)準(zhǔn)格式以及擴(kuò)展格式) CRC 場(chǎng)包括CRC 序列CRC SEQUENCE, 其后是CRC 界定符CRC DELIMITER。第45頁(yè)/共92頁(yè)第46頁(yè)/共92頁(yè)應(yīng) 答 場(chǎng)(標(biāo)準(zhǔn)格式以及擴(kuò)展格式) 應(yīng)答場(chǎng)長(zhǎng)度為2個(gè)位,包含應(yīng)答間隙的應(yīng)答界定符。在應(yīng)答場(chǎng)里,發(fā)送站發(fā)送兩個(gè)隱性位。當(dāng)接收器正確地接受到有效的報(bào)文,接收器就會(huì)在應(yīng)答間隙期間向發(fā)送器發(fā)送一顯性的位以示應(yīng)答。 應(yīng)答間隙:所有接受到匹配CRC序列的站會(huì)在應(yīng)答間隙期間用一個(gè)顯性的位寫入發(fā)送器的隱性位來做出回答。 ACK界定符:ACK界定符是ACK場(chǎng)的第二個(gè)位,并且是一個(gè)必須為隱性的位。因此,應(yīng)答間隙被兩個(gè)隱性

31、的位所包圍,也就是CRC界定符和ACK界定符第47頁(yè)/共92頁(yè)第48頁(yè)/共92頁(yè)幀 結(jié) 尾(標(biāo)準(zhǔn)格式以及擴(kuò)展格式) 每一個(gè)數(shù)據(jù)幀和遠(yuǎn)程幀均由一個(gè)標(biāo)志序列界定。這個(gè)標(biāo)志序列由7個(gè)隱性位組成。第49頁(yè)/共92頁(yè)2 2、遠(yuǎn)、遠(yuǎn) 程程 幀幀 通過發(fā)送遠(yuǎn)程幀,作為某數(shù)據(jù)接收器的站通過其資源節(jié)點(diǎn)對(duì)不同的數(shù)據(jù)傳送進(jìn)行初始化設(shè)置。 遠(yuǎn)程幀由6個(gè)不同的位場(chǎng)組成:幀起始、仲裁場(chǎng)、控制場(chǎng)、CRC場(chǎng)、應(yīng)答場(chǎng)、幀結(jié)尾。 與數(shù)據(jù)幀相反,遠(yuǎn)程幀的RTR位是隱性的。它沒有數(shù)據(jù)場(chǎng),數(shù)據(jù)長(zhǎng)度代碼的數(shù)值是不受制約的(可以標(biāo)注為容許范圍里08的任何數(shù)值)。此數(shù)值是相應(yīng)于數(shù)據(jù)幀的數(shù)據(jù)長(zhǎng)度代碼。 RTR位的極性表示了所發(fā)送的幀是一數(shù)據(jù)幀

32、(RTR位“顯性”)還是一遠(yuǎn)程幀(RTR位“隱性”)。第50頁(yè)/共92頁(yè)第51頁(yè)/共92頁(yè)3 3、錯(cuò)、錯(cuò) 誤誤 幀幀 錯(cuò)誤幀由兩個(gè)不同的場(chǎng)組成。第一個(gè)場(chǎng)用作為不同站提供的錯(cuò)誤標(biāo)志的疊加。第二個(gè)場(chǎng)是錯(cuò)誤界定符。 為了能正確地中止錯(cuò)誤幀,一個(gè)“錯(cuò)誤被動(dòng)”的節(jié)點(diǎn)要求總線至少有長(zhǎng)度為3個(gè)位時(shí)間的總線空閑(如果“錯(cuò)誤被動(dòng)”的接收器有本地錯(cuò)誤的話)。因此,總線的載荷不應(yīng)為100。第52頁(yè)/共92頁(yè)第53頁(yè)/共92頁(yè) 錯(cuò)誤標(biāo)志錯(cuò)誤標(biāo)志 有兩種形式的錯(cuò)誤標(biāo)志:主動(dòng)錯(cuò)誤標(biāo)志和被動(dòng)錯(cuò)誤標(biāo)志。主動(dòng)錯(cuò)誤標(biāo)志由6個(gè)連續(xù)的“顯性”位組成。被動(dòng)錯(cuò)誤標(biāo)志由6個(gè)連續(xù)的“隱性”的位組成,除非被其他節(jié)點(diǎn)的“顯性”位重寫。第54頁(yè)/

33、共92頁(yè) 檢測(cè)到錯(cuò)誤條件的“錯(cuò)誤主動(dòng)”的站通過發(fā)送主動(dòng)錯(cuò)誤標(biāo)志,以指示錯(cuò)誤。錯(cuò)誤標(biāo)志的形式破壞了從幀起始到CRC界定符的位填充規(guī)則(參見“編碼”),或者破壞了應(yīng)答場(chǎng)或幀末尾場(chǎng)的固定形式。所有其他的站由此檢測(cè)到錯(cuò)誤條件并與此同時(shí)開始發(fā)送錯(cuò)誤標(biāo)志。因此?!帮@性”位(此“顯性”位可以在總線上監(jiān)視)的序列導(dǎo)致一個(gè)結(jié)果,這個(gè)結(jié)果就是把各個(gè)單獨(dú)站發(fā)送的不同的錯(cuò)誤標(biāo)志疊加在一起。這個(gè)順序的總長(zhǎng)度最小為6個(gè)位,最大為12個(gè)位。 檢測(cè)到錯(cuò)誤條件的“被動(dòng)錯(cuò)誤”的站試圖通過發(fā)送被動(dòng)錯(cuò)誤標(biāo)志以示錯(cuò)誤?!板e(cuò)誤被動(dòng)”的站等待6個(gè)相同極性的連續(xù)位(這6個(gè)位處于被動(dòng)錯(cuò)誤標(biāo)志的開始)。當(dāng)這6個(gè)相同的位被檢測(cè)到時(shí),被動(dòng)錯(cuò)誤標(biāo)志的

34、發(fā)送就完成了。第55頁(yè)/共92頁(yè) 錯(cuò)誤界定符包括8個(gè)“隱性”的位。 錯(cuò)誤標(biāo)志傳送了以后,每一站就發(fā)送“隱性”的位并一直監(jiān)視總線直到檢測(cè)出一個(gè)“隱性”的位為止。然后就開始發(fā)送7位以上的“隱性”位。第56頁(yè)/共92頁(yè)4 4、過、過 載載 幀幀 過載幀包括兩個(gè)位場(chǎng):過載標(biāo)志和過載界定符。 有三種過載條件都會(huì)導(dǎo)致過載標(biāo)志的傳送:(1)接收器的內(nèi)部條件(此接收器對(duì)于下一數(shù)據(jù)幀或遠(yuǎn)程幀需要有一延時(shí))(2)間歇場(chǎng)期間檢測(cè)到一“顯性”位(3)如果CAN 節(jié)點(diǎn)在錯(cuò)誤界定符或過載界定符的第8 位(最后一位)采樣到一個(gè)顯性位,節(jié)點(diǎn)會(huì)發(fā)送一個(gè)過載幀(不是錯(cuò)誤幀)錯(cuò)誤計(jì)數(shù)器不會(huì)增加。第57頁(yè)/共92頁(yè) 由過載條件1而引

35、發(fā)的過載幀只允許起始于所期望的間歇場(chǎng)的第一個(gè)位時(shí)間開始。而由過載條件2和3引起的過載幀應(yīng)起始于所檢測(cè)到“顯性”位之后的位。 通常為了延時(shí)下一個(gè)數(shù)據(jù)幀或遠(yuǎn)程幀兩種過載幀均可產(chǎn)生第58頁(yè)/共92頁(yè) 過載標(biāo)志過載標(biāo)志 過載標(biāo)志由6個(gè)顯性的位組成。過載標(biāo)志的所有形式和主動(dòng)錯(cuò)誤標(biāo)志一樣。 過載標(biāo)志的形式破壞了間歇場(chǎng)的固定形式。因此,所有其他的站都檢測(cè)到一個(gè)過載條件并與此同時(shí)發(fā)出過載標(biāo)志。(萬一有的節(jié)點(diǎn)在間歇的第三個(gè)位期間于本地檢測(cè)到“顯性”位,則其他的節(jié)點(diǎn)將不能正確地解釋過載標(biāo)志,而是將這6個(gè)“顯性”位中的第一個(gè)位解釋為幀的起始。這第六個(gè)“顯性”的位破壞了產(chǎn)生錯(cuò)誤條件的位填充的規(guī)則)。 過載界定符過載界

36、定符 過載界定符包括8個(gè)隱性的位。 過載界定符的形式和錯(cuò)誤界定符一樣。過載標(biāo)志被傳送后,站就一直監(jiān)視總線直到檢測(cè)到一個(gè)從“顯性”位到“隱性”位的發(fā)送(過渡形式)。此時(shí),總線上的每一個(gè)站完成了過載標(biāo)志的發(fā)送,并開始同時(shí)發(fā)送7個(gè)以上的“隱性”位。第59頁(yè)/共92頁(yè)幀間空間 數(shù)據(jù)幀(或遠(yuǎn)程幀)與其前面幀的隔離是通過幀間空間實(shí)現(xiàn)的,無論其前面的幀為何類型(數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀、過載幀)。有所不同的是過載幀與錯(cuò)誤幀之前沒有幀間空間,多個(gè)過載幀之間也不是由幀間空間隔離的。 幀間空間包括間歇場(chǎng)、總線空閑位場(chǎng)。如果“錯(cuò)誤被動(dòng)”的站已作為前一報(bào)文的發(fā)送器時(shí),則其幀空間除了間歇、總線空閑外,還包括稱作掛起傳送的

37、位場(chǎng)。第60頁(yè)/共92頁(yè)對(duì)于已作為前一報(bào)文發(fā)送器的“錯(cuò)誤被動(dòng)”的站,則其幀間空間如下圖所示:第61頁(yè)/共92頁(yè)對(duì)于已作為前一報(bào)文發(fā)送器的“錯(cuò)誤主動(dòng)”的站,則其幀間空間如下圖所示:第62頁(yè)/共92頁(yè)間歇 間歇包括三個(gè)“隱性”的位。 間歇期間,所有的站均不允許傳送數(shù)據(jù)幀或遠(yuǎn)程幀,唯一要做的就是提示一個(gè)過載條件。備注: 如果CAN 節(jié)點(diǎn)有一報(bào)文等待發(fā)送并且節(jié)點(diǎn)在間歇的第三位采集到一顯性位,則此位被解釋為幀的起始位,并從下一個(gè)位開始發(fā)送報(bào)文的識(shí)別符首位,而不用首先發(fā)送幀的起始位或成為一接收器。第63頁(yè)/共92頁(yè)總線空閑 總線空閑的時(shí)間長(zhǎng)度是任意的。只要總線被認(rèn)定為空閑,任何等待發(fā)送信息的站就會(huì)訪問總線

38、。在發(fā)送其他信息期間,有報(bào)文被掛起,對(duì)于這樣的報(bào)文,其傳送起始于間歇之后的第一位。 總線上檢測(cè)到的“顯性”的位可被解釋為幀的起始。第64頁(yè)/共92頁(yè)掛起傳送 “錯(cuò)誤被動(dòng)”的站發(fā)送報(bào)文后,站就在下一報(bào)文開始傳遞之前或總線空閑之前發(fā)出8個(gè)“隱性”的位跟隨在間歇的后面。如果與此同時(shí)另一個(gè)站開始發(fā)送報(bào)文(有另一站引起),則此站就作為這個(gè)報(bào)文的接收器。第65頁(yè)/共92頁(yè)關(guān)于幀格式的符合性 標(biāo)準(zhǔn)格式相當(dāng)于在CAN1.2 規(guī)范中描述的數(shù)據(jù)/遠(yuǎn)程幀,而擴(kuò)展格式是CAN 協(xié)議的一新特色。為了使控制器的設(shè)計(jì)相對(duì)地簡(jiǎn)單,不要求擴(kuò)展格式的儀器達(dá)到它的滿擴(kuò)展(比如在擴(kuò)展格式里發(fā)送報(bào)文或接收來自于報(bào)文的數(shù)據(jù))。 但是,儀

39、器必須無條件地支持標(biāo)準(zhǔn)格式。 如果新的控制器至少具有以下屬性(這些屬性與3.1 和3.2 定義的幀格式有關(guān)),則被認(rèn)為是符合CAN規(guī)范 : 每一新的控制器支持標(biāo)準(zhǔn)格式 每一新的控制器可以接收擴(kuò)展格式的報(bào)文。這需要擴(kuò)展格式不因其格式而被破壞??墒?,不要求新的控制器非得支持?jǐn)U展格式。第66頁(yè)/共92頁(yè)發(fā)送器/接收器定義 發(fā)送器發(fā)送器 產(chǎn)生報(bào)文的單元被稱之為報(bào)文的發(fā)送器。此單元保持作為報(bào)文發(fā)送器直到總線出現(xiàn)空閑或此單元失去仲裁為止。 接收器接收器 如果有一個(gè)單元不作為報(bào)文的發(fā)送器并且總線也不空閑,則這個(gè)單元就被成為報(bào)文的接收器。第67頁(yè)/共92頁(yè)報(bào)文濾波 報(bào)文濾波取決于整個(gè)識(shí)別符。允許在報(bào)文濾波中將

40、任何的識(shí)別符位設(shè)置為“不考慮”的可選屏蔽寄存器,可以選擇多組的識(shí)別符,使之被映射到隸屬的接收緩沖器里。 如果使用屏蔽寄存器,它的每一個(gè)位必須是可編程的,即他們能夠被允許或禁止報(bào)文濾波。屏蔽寄存器的長(zhǎng)度可以包含整個(gè)識(shí)別符,也可以包含部分的識(shí)別符。第68頁(yè)/共92頁(yè)報(bào)文校驗(yàn) 校驗(yàn)報(bào)文是否有效的時(shí)間點(diǎn),發(fā)送器與接收器各不相同。發(fā)送器發(fā)送器: 如果直到幀的末尾位均沒有錯(cuò)誤,則此報(bào)文對(duì)發(fā)送器有效。如果報(bào)文破壞,則報(bào)文會(huì)根據(jù)優(yōu)先權(quán)自動(dòng)重發(fā)。為了能夠和其他信息競(jìng)爭(zhēng)總線,重新傳輸必須在總線空閑時(shí)啟動(dòng)。接收器接收器: 如果直到最后的位(除了幀末尾位)均沒有錯(cuò)誤,則報(bào)文對(duì)于接收器有效。幀末尾最后的位被置于“不重要

41、”狀態(tài),如果是一個(gè)“顯性”電平也不會(huì)引起格式錯(cuò)誤。第69頁(yè)/共92頁(yè)編碼 位流編碼: 幀的部分,例如幀起始、仲裁場(chǎng)、控制場(chǎng)、控制場(chǎng)以及CRC序列,均通過位填充的方法編碼。無論何時(shí),發(fā)送器只要檢測(cè)到位流里有5個(gè)連續(xù)識(shí)別的位,便自動(dòng)在位流里插入一補(bǔ)碼位。 數(shù)據(jù)幀或遠(yuǎn)程幀(CRC界定符、應(yīng)答場(chǎng)和幀末尾)的剩余場(chǎng)形式相同,不填充。錯(cuò)誤幀和過載幀的形式也相同,但并不通過位填充的發(fā)放進(jìn)行編碼。 其報(bào)文里的位流根據(jù)“不返回零”(NRZ)之方法來編碼。這就是說,在整個(gè)位時(shí)間里,位電平要么為“顯性”,要么為“隱性”。第70頁(yè)/共92頁(yè)第71頁(yè)/共92頁(yè) 錯(cuò)誤類型有以下五種:(這五種錯(cuò)誤不會(huì)相互排斥)錯(cuò)誤類型有以

42、下五種:(這五種錯(cuò)誤不會(huì)相互排斥) 位錯(cuò)誤:站單元在發(fā)送位的同時(shí)也對(duì)總線進(jìn)行監(jiān)視。如果位錯(cuò)誤:站單元在發(fā)送位的同時(shí)也對(duì)總線進(jìn)行監(jiān)視。如果發(fā)送的位值與所監(jiān)視的位置不相符,則在此位時(shí)間里檢測(cè)發(fā)送的位值與所監(jiān)視的位置不相符,則在此位時(shí)間里檢測(cè)到一個(gè)位錯(cuò)誤。但是在仲裁場(chǎng)的填充位流期間或到一個(gè)位錯(cuò)誤。但是在仲裁場(chǎng)的填充位流期間或ACKACK間隙間隙發(fā)送一發(fā)送一“隱性隱性”位的情況是例外的位的情況是例外的此時(shí),當(dāng)監(jiān)視到一此時(shí),當(dāng)監(jiān)視到一“顯性顯性”位時(shí),不會(huì)發(fā)出位錯(cuò)誤。當(dāng)發(fā)送器發(fā)送一個(gè)被動(dòng)位時(shí),不會(huì)發(fā)出位錯(cuò)誤。當(dāng)發(fā)送器發(fā)送一個(gè)被動(dòng)錯(cuò)誤標(biāo)志但檢測(cè)到錯(cuò)誤標(biāo)志但檢測(cè)到“顯性顯性”位時(shí),也不視為位錯(cuò)誤。位時(shí),也不

43、視為位錯(cuò)誤。 填充錯(cuò)誤:如果在使用位填充法進(jìn)行編碼的信息中,出現(xiàn)填充錯(cuò)誤:如果在使用位填充法進(jìn)行編碼的信息中,出現(xiàn)了第了第6 6個(gè)連續(xù)相同的位電平時(shí),將檢測(cè)到一個(gè)填充錯(cuò)誤。個(gè)連續(xù)相同的位電平時(shí),將檢測(cè)到一個(gè)填充錯(cuò)誤。 CRCCRC錯(cuò)誤:錯(cuò)誤:CRCCRC序列包括發(fā)送器的序列包括發(fā)送器的CRCCRC計(jì)算結(jié)果。接收器計(jì)計(jì)算結(jié)果。接收器計(jì)算算CRCCRC的方法與發(fā)送器相同。如果計(jì)算結(jié)果與接收到的的方法與發(fā)送器相同。如果計(jì)算結(jié)果與接收到的CRCCRC序列的結(jié)果不相符,則檢測(cè)到一個(gè)序列的結(jié)果不相符,則檢測(cè)到一個(gè)CRCCRC錯(cuò)誤。錯(cuò)誤。 形式錯(cuò)誤:當(dāng)一個(gè)固定形式的場(chǎng)含有形式錯(cuò)誤:當(dāng)一個(gè)固定形式的場(chǎng)含有1

44、1個(gè)或多個(gè)非法位,個(gè)或多個(gè)非法位,則檢測(cè)到一個(gè)形式錯(cuò)誤。則檢測(cè)到一個(gè)形式錯(cuò)誤。 應(yīng)答錯(cuò)誤:只要在應(yīng)答錯(cuò)誤:只要在ACKACK間隙期間所監(jiān)視的位不為間隙期間所監(jiān)視的位不為“顯性顯性”,則發(fā)送器會(huì)檢測(cè)到一個(gè)應(yīng)答錯(cuò)誤。則發(fā)送器會(huì)檢測(cè)到一個(gè)應(yīng)答錯(cuò)誤。錯(cuò)誤處理第72頁(yè)/共92頁(yè)錯(cuò)誤標(biāo)定 檢測(cè)到錯(cuò)誤條件的站通過發(fā)送錯(cuò)誤標(biāo)志指示錯(cuò)誤。對(duì)于“錯(cuò)誤主動(dòng)”的節(jié)點(diǎn),錯(cuò)誤信息為“主動(dòng)錯(cuò)誤標(biāo)志”。對(duì)于“錯(cuò)誤被動(dòng)”的節(jié)點(diǎn),錯(cuò)誤信息為“被動(dòng)錯(cuò)誤標(biāo)志”。站檢測(cè)到無論是位無論是位錯(cuò)誤、填充錯(cuò)誤、形式錯(cuò)誤,還是應(yīng)答錯(cuò)誤,這個(gè)站會(huì)在下一位時(shí)發(fā)出錯(cuò)誤標(biāo)志信息。 只要檢測(cè)到的錯(cuò)誤的條件是CRC錯(cuò)誤,錯(cuò)誤標(biāo)志的發(fā)送開始于ACK界定符之后

45、的位(其他的錯(cuò)誤條件除外)。第73頁(yè)/共92頁(yè)第74頁(yè)/共92頁(yè)第75頁(yè)/共92頁(yè)故障界定至于故障界定,單元的狀態(tài)可能為以下三種: 錯(cuò)誤主動(dòng) 錯(cuò)誤被動(dòng) 總線關(guān)閉 “錯(cuò)誤主動(dòng)”的單元可以正常的參與總線通訊并在錯(cuò)誤被檢測(cè)到時(shí)發(fā)出主動(dòng)錯(cuò)誤標(biāo)志。 “錯(cuò)誤被動(dòng)”的單元不允許發(fā)送主動(dòng)錯(cuò)誤標(biāo)志?!板e(cuò)誤被動(dòng)”的單元參與總線通訊而且在錯(cuò)誤被檢測(cè)到時(shí)只發(fā)出被動(dòng)的錯(cuò)誤標(biāo)志。而且,發(fā)送以后,“錯(cuò)誤被動(dòng)”單元將在預(yù)設(shè)下一個(gè)發(fā)送之前處于等待狀態(tài)。(見“掛起發(fā)送”) “總線關(guān)閉”的單元不允許在總線上有任何的影響(如關(guān)閉輸出驅(qū)動(dòng)器)第76頁(yè)/共92頁(yè)在每一總線單元里實(shí)現(xiàn)兩種計(jì)數(shù)以便故障界定: 發(fā)送錯(cuò)誤計(jì)數(shù) 接受錯(cuò)誤計(jì)數(shù) 這些

46、計(jì)數(shù)按以下規(guī)則改變(注意:在給定的報(bào)文發(fā)送期間,可能要用到的規(guī)則不止一個(gè)): 1. 當(dāng)接收器檢測(cè)到一個(gè)錯(cuò)誤,接收錯(cuò)誤計(jì)數(shù)就加1。在發(fā)送主動(dòng)錯(cuò)誤標(biāo)志或過載標(biāo)志期間所檢測(cè)到的錯(cuò)誤為位錯(cuò)誤時(shí),接收錯(cuò)誤計(jì)數(shù)器值不加1。 2. 當(dāng)錯(cuò)誤標(biāo)志發(fā)送以后,接收器檢測(cè)到的第一位為“顯性”時(shí),接收錯(cuò)誤計(jì)數(shù)值加8。第77頁(yè)/共92頁(yè) 3 當(dāng)發(fā)送器發(fā)送一錯(cuò)誤標(biāo)志時(shí),發(fā)送錯(cuò)誤計(jì)數(shù)器值加8。 例外情況1: 發(fā)送器為錯(cuò)誤被動(dòng),并檢測(cè)到一應(yīng)答錯(cuò)誤(注:此應(yīng)答錯(cuò)誤由檢測(cè)不到一“顯性”應(yīng)答以及當(dāng)發(fā)送被動(dòng)錯(cuò)誤標(biāo)志時(shí)檢測(cè)不到一“顯性”位而引起)。 例外情況2: 發(fā)送器因?yàn)樘畛溴e(cuò)誤而發(fā)送錯(cuò)誤標(biāo)志(注:此填充錯(cuò)誤發(fā)生于仲裁期間,引起填充錯(cuò)

47、誤是由于:填充位位于RTR位之前,并已作為“隱性”發(fā)送,但是卻被監(jiān)視成“顯性”)。例外情況1和2時(shí),發(fā)送錯(cuò)誤計(jì)數(shù)器值不改變。 4 發(fā)送主動(dòng)錯(cuò)誤標(biāo)志或過載標(biāo)志時(shí),如果發(fā)送器檢測(cè)到位錯(cuò)誤,則發(fā)送錯(cuò)誤計(jì)數(shù)器值加8。第78頁(yè)/共92頁(yè) 5當(dāng)發(fā)送主動(dòng)錯(cuò)誤標(biāo)志或過載標(biāo)志時(shí),如果接收器檢測(cè)到位錯(cuò)誤,則接收錯(cuò)誤計(jì)數(shù)器值加8。 6在發(fā)送主動(dòng)錯(cuò)誤標(biāo)志、被動(dòng)錯(cuò)誤標(biāo)志或過載標(biāo)志以后,任何節(jié)點(diǎn)最多容許7個(gè)連續(xù)的“顯性”位。以下的情況,每一發(fā)送器將它們的發(fā)送錯(cuò)誤計(jì)數(shù)值加8,及每一接收器的接收錯(cuò)誤計(jì)數(shù)值加8: 當(dāng)檢測(cè)到第14個(gè)連續(xù)的“顯性”位后; 在檢測(cè)到第8個(gè)跟隨著被動(dòng)錯(cuò)誤標(biāo)志的連續(xù)的顯性位以后; 在每一附加的8個(gè)連續(xù)“

48、顯性”位順序之后。 7報(bào)文成功傳送后(得到應(yīng)答及直到幀末尾結(jié)束沒有錯(cuò)誤),發(fā)送錯(cuò)誤計(jì)數(shù)值減1,除非已經(jīng)是0。第79頁(yè)/共92頁(yè) 8如果接收錯(cuò)誤計(jì)數(shù)值介于1和127之間,在成功地接收到報(bào)文之后(直到ACK間隙接收沒有錯(cuò)誤,及成功地發(fā)送了應(yīng)答位),接收錯(cuò)誤計(jì)數(shù)值減1。如果接受計(jì)數(shù)器值是0,則它保持0,如果大于127,則它會(huì)設(shè)一值介于119和127之間。 9當(dāng)發(fā)送錯(cuò)誤計(jì)數(shù)器值大于或等于128時(shí),或當(dāng)接收錯(cuò)誤計(jì)數(shù)器值等于或超過128時(shí),節(jié)點(diǎn)為“錯(cuò)誤被動(dòng)”。讓節(jié)點(diǎn)成為“錯(cuò)誤被動(dòng)”的錯(cuò)誤條件致使節(jié)點(diǎn)發(fā)出主動(dòng)錯(cuò)誤標(biāo)志。 10發(fā)送錯(cuò)誤計(jì)數(shù)器值大于或等于256時(shí),節(jié)點(diǎn)為“總線關(guān)閉”。 11發(fā)送錯(cuò)誤計(jì)數(shù)器值和接收

49、錯(cuò)誤計(jì)數(shù)器值都小于或等于127時(shí),“錯(cuò)誤被動(dòng)”的節(jié)點(diǎn)重新變?yōu)椤板e(cuò)誤主動(dòng)”。第80頁(yè)/共92頁(yè) 12在總線監(jiān)視到128次出現(xiàn)11個(gè)連續(xù)“隱性”位之后,“總線關(guān)閉”的節(jié)點(diǎn)可以變成“錯(cuò)誤主動(dòng)”(不再是“總線關(guān)閉”)。它的錯(cuò)誤計(jì)數(shù)值也被設(shè)置為0。 備注:一個(gè)大約大于96的錯(cuò)誤計(jì)數(shù)值顯示總線被嚴(yán)重干擾。最好能夠采取措施測(cè)試這個(gè)條件。 備注:?jiǎn)?dòng)/睡眠:如果啟動(dòng)期間內(nèi)只有一個(gè)節(jié)點(diǎn)在線,以及如果這個(gè)節(jié)點(diǎn)發(fā)送一些報(bào)文,則將不會(huì)有應(yīng)答,如此檢測(cè)到錯(cuò)誤并重復(fù)報(bào)文。由于此原因,節(jié)點(diǎn)會(huì)變?yōu)椤板e(cuò)誤被動(dòng)”,而不是“總線關(guān)閉”。第81頁(yè)/共92頁(yè)第82頁(yè)/共92頁(yè)位定時(shí)要求 標(biāo)稱位速率標(biāo)稱位速率: 標(biāo)稱位速率為一理想的發(fā)送

50、器在沒有重新同步的情況下每秒發(fā)送的位數(shù)量。 標(biāo)稱位時(shí)間標(biāo)稱位時(shí)間: 標(biāo)稱位時(shí)間1/標(biāo)稱位速率 可以把標(biāo)稱位時(shí)間劃分成幾個(gè)不重疊時(shí)間的片斷,它們是:同步段/傳播時(shí)間段/相位緩沖段1/相位緩沖段2第83頁(yè)/共92頁(yè)同步段同步段:位時(shí)間的同步段用于總線上的不同節(jié)點(diǎn)。這一段內(nèi)容要有一個(gè)跳變沿。傳播段傳播段:傳播段用于補(bǔ)償網(wǎng)絡(luò)內(nèi)的物理延時(shí)時(shí)間。它是總線上輸入比較延時(shí)和輸出驅(qū)動(dòng)器延時(shí)總和的兩倍。相位緩沖段相位緩沖段1 1、相位緩沖段、相位緩沖段2 2:相位緩沖段用于補(bǔ)償邊沿階段的錯(cuò)誤。這兩個(gè)段可以通過重新同步加長(zhǎng)或縮短。第84頁(yè)/共92頁(yè)采樣點(diǎn)采樣點(diǎn):采樣點(diǎn)是讀總線電平并解釋各位的值的一個(gè)時(shí)間點(diǎn)。采集點(diǎn)位于相位緩沖段1之后。信息處理時(shí)間信息處理時(shí)間:信息處理時(shí)間是一個(gè)以采樣點(diǎn)作為起始的時(shí)間段。采集點(diǎn)用于計(jì)算后續(xù)位的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論