can同步的研究_第1頁
can同步的研究_第2頁
can同步的研究_第3頁
can同步的研究_第4頁
can同步的研究_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、CAN總線位定時和同步的研究與設(shè)計時間:2009-08-04 12:51:28 來源:現(xiàn)代電子技術(shù) 作者:單琳娜,徐斌山,陳文平 佳木斯大學引 言 控制器局域網(wǎng)CAN是一種用于連接汽車和工業(yè)場合中電子控制模塊、傳感器和執(zhí)行器的串行、多主通信規(guī)范。由于CAN總線具有很強的糾錯能力、支持差分收發(fā)、傳輸距離遠等特點,因此CAN總線用途非常廣泛,現(xiàn)已成為工業(yè)數(shù)據(jù)通信領(lǐng)域的主流技術(shù)、基礎(chǔ)技術(shù),目前比較流行的TTCan,DeviceNet,CANo-pen,SAE J1939等規(guī)范均是以CAN為基礎(chǔ)的,因此對CAN總線的深入研究是十分必要的。在CAN規(guī)范中,位定時和同步機制是既重要又難于理解的環(huán)節(jié)之一,它

2、不僅關(guān)系到對波特率、總線長度等相關(guān)內(nèi)容的理解,甚至對節(jié)點開發(fā)的成功與否產(chǎn)生直接的影響。然而,目前相關(guān)文獻均缺乏針對CAN總線位定時和同步機制的詳細分析和探討。在此以CAN技術(shù)規(guī)范為基礎(chǔ),深入分析CAN總線的位定時和同步機制,給出硬同步和重同步的定義,并給出相應(yīng)的圖解解釋方式,對位時間的組成與結(jié)構(gòu)、同步的發(fā)生時刻、同步是如何進行的等關(guān)鍵內(nèi)容給出了明確而又具體的分析。這里的工作對理解位定時和同步機制的本質(zhì)、指導位時間參數(shù)的設(shè)置均具有較高的參考價值。1 位定時11 位時間的組成 位時間(位周期)tB即1位的持續(xù)時間。正常位時間tNBT是正常位速率fNBT(在非重同步的情況下,借助理想發(fā)送器每秒發(fā)送的

3、位數(shù))的倒數(shù),即tNBT=1fNBT。正常位時間可劃分為幾個互不重疊的時間段,這些時間段包括:同步段(SYNC-SEG)、傳播時間段(PROP-SEG)、相位緩沖器段1(PHASE-SEG1)、相位緩沖器段2(PHASE-SEG2)。每個時間段由整數(shù)個被稱為時間份額tQ的基本時間單位組成。tQ是由振蕩器周期tCLK派生出的一個固定時間單元。一個時間份額的持續(xù)時間通常便是CAN的一個系統(tǒng)時鐘周期tSCL。tSCL可通過可編程的預(yù)引比例因子進行調(diào)整。每個位時間必須由825個時間份額組成。位時間的組成如圖1所示。 位時間的各個時間段均有其特定的用途: (1)同步段用于使總線上的各個節(jié)點同步,要求有1

4、個跳變沿位于此段內(nèi),該段長度為1個時間份額; (2)傳播時間段用于補償網(wǎng)絡(luò)內(nèi)的物理延時,它是信號在總線上傳播時間、輸入比較器延時和輸出驅(qū)動器延時之和的2倍,該段長度為18個時間份額; (3)相位緩沖器段1和相位緩沖器段2用于補償沿的相位誤差,通過重同步,相位緩沖器段1可被延長或相位緩沖器段2可被縮短。 這些時間段的長度均是可編程的。在常用的通信控制器(SJA1000)或PAC82C200中,合并傳播時間段和相位緩沖器段1,稱為時間段1(TSEGl),相位緩沖器段2稱為時間段2(TSEG2),如圖1所示。 采樣點是這樣一個時刻:在此時刻上,總線電平被讀取并被理解為其自身的數(shù)值。它位于相位緩沖器段

5、1的終點。在重同步期間,采樣點的位置被移動整數(shù)個時間份額,該時間份額被允許的最大值稱為重同步跳轉(zhuǎn)寬度(SJW),它可被編程為14個時間份額。值得注意的是,重同步跳轉(zhuǎn)寬度并不是位時間的組成部分。12 位定時的作用 位定時是由節(jié)點自身完成的(可編程),節(jié)點進行位定時的作用為: (1)確定位時間,以便確定波特率(位速率),從而確定總線的網(wǎng)絡(luò)速度;或在給定總線的網(wǎng)絡(luò)速度的情況下確定位時間; (2)確定1位的各個組成部分同步段、傳播時間段、相位緩沖器段1和相位緩沖器段2的時間長度,其中同步段用于硬同步,位于相位緩沖器段1終點的采樣點用于保證正確地讀取總線電平; (3)確定重同步跳轉(zhuǎn)寬度以用于重同步。2

6、CAN總線同步機制分析 CAN規(guī)范定義了自己獨有的同步方式:硬同步和重同步。同步與位定時密切相關(guān)。同步是由節(jié)點自身完成的,節(jié)點將檢測到來自總線的沿與其自身的位定時相比較,并通過硬同步或重同步適配(調(diào)整)位定時。在一般情況下,引起硬同步和重同步發(fā)生的、來自總線的沿如圖2所示。21 硬同步 CAN技術(shù)規(guī)范給出了硬同步和重同步的結(jié)果,但沒有給出硬同步和重同步的定義。這里首先給出硬同步和重同步的定義,然后對其進行分析。 所謂硬同步,就是由節(jié)點檢測到的,來自總線的沿強迫節(jié)點立即確定出其內(nèi)部位時間的起始位置(同步段的起始時刻)。硬同步的結(jié)果是,沿到來時刻的前一時刻(以時間份額tQ量度),即成為節(jié)點內(nèi)部位時

7、間同步段的起始時刻,并使內(nèi)部位時間從同步段重新開始。這就是規(guī)范中所說的“硬同步強迫引起硬同步的沿處于重新開始的位時間同步段之內(nèi)”。硬同步一般用于幀的開始,即總線上的各個節(jié)點的內(nèi)部位時間的起始位置(同步段)是由來自總線的一個報文幀的幀起始的前沿決定的。 同步段的時間長度為1個時間份額。如圖3所示來自總線的引起硬同步的沿在t1時刻到來,則節(jié)點檢測到該沿。將t1時刻的前一時刻t0(以tQ為周期)作為內(nèi)部位時間同步段的起始時刻。22 重同步 所謂重同步,就是節(jié)點根據(jù)沿相位誤差的大小調(diào)整其內(nèi)部位時間,以使節(jié)點內(nèi)部位時間與來自總線的報文位流的位時間接近或相等。作為重同步的結(jié)果,PHASE-SEG1可被延長

8、或PHASE-SEG2可被縮短,從而使節(jié)點能夠正確地接收報文。重同步一般用于幀的位流發(fā)送期間,以補償各個節(jié)點振蕩器頻率的不一致。這里涉及到沿相位誤差的概念。沿相位誤差由沿相對于節(jié)點內(nèi)部位時間同步段的位置給定,以時間份額量度,沿相位誤差的符號為e,其定義如下: (1)若沿處于SYNCSEG之內(nèi),則e=0; (2)若沿處于采樣點之前(TSEG1內(nèi)),則e>0; (3)若沿處于前一位的采樣點之后(TSEG2內(nèi)),則e<0。 CAN技術(shù)規(guī)范中也給出了重同步跳轉(zhuǎn)寬度,重同步策略與同步規(guī)則,但比較抽象、不易理解。為深入理解節(jié)點是如何進行重同步的,圖4給出了重同步的圖解。在圖4中,SY,PR,P

9、S1和PS2分別表示同步段、傳播段、相位緩沖段1和相位緩沖段2。假定總線位流的第一位(幀起始,為“0”)起始于t1時刻、終止于t2時刻,總線位流的第2位為“1”;從第2位開始,總線位流的“隱性”(“1”)至“顯性”(“0”)和“顯性”(“0”)至“隱性”(“1”)的跳變沿均用于重同步。在t1時刻,節(jié)點檢測到總線的跳變沿,便進行硬同步,使t1時刻的跳變沿處于節(jié)點內(nèi)部第1位位時間的同步段內(nèi)。節(jié)點從第1位的同步段開始啟動內(nèi)部位定時,即根據(jù)系統(tǒng)要求的波特率給出內(nèi)部位時間。現(xiàn)假定由于各節(jié)點振蕩器頻率的不一致,在t2時刻的跳變沿未處于節(jié)點第2位位時間的同步段SY內(nèi),而是處于PS1內(nèi),即有e>0。這表

10、明節(jié)點內(nèi)部的位時間小于總線位流的位時間。為了使節(jié)點能從總線上通過采樣得到正確的位數(shù)值,需使節(jié)點內(nèi)部的位時間延長,以使節(jié)點內(nèi)部位時間與總線位流位時間接近或相等。因此,在這種情況下節(jié)點應(yīng)采取的重同步策略為:使PS1延長一定寬度(圖4中PS1延長2個時間份額,即同步跳轉(zhuǎn)寬度為大于等于2個時間份額,如為3個時間份額)。e<0的情況與之類似,只是PS2會相應(yīng)地縮短一定寬度。這與CAN技術(shù)規(guī)范中的重同步策略是一致的。這里需要注意的是,相位緩沖段只在當前的位時間內(nèi)被延長或縮短,在接下來的位時間內(nèi),只要沒有重同步,各時間段將恢復編程預(yù)設(shè)值。3 控制器中位定時參數(shù)設(shè)置的一般方法 在典型的獨立CAN控制器(

11、SJA1000或PCA82C200)中,負責位定時的寄存器為總線定時寄存器0(BTR0)和總線定時寄存器1(BTR1),其結(jié)構(gòu)如圖5所示。 寄存器中有關(guān)參數(shù)的計算公式如下: 這些參數(shù)的范圍在CAN中有較嚴格的規(guī)定,具體如表1所示。 在有些情況中為了優(yōu)化網(wǎng)絡(luò)性能,這些參數(shù)的設(shè)置往往需要考慮傳輸延遲、時鐘偏頻等因素。然而,對于一般的開發(fā)或工程實際,完全可以根據(jù)經(jīng)驗對其進行計算和設(shè)置。這里以一個時鐘頻率為20 MHz、通信波特率為250 Kbs(位時間為4s)的系統(tǒng)為例,介紹與位定位有關(guān)的各參數(shù)的計算方法和步驟。 (1)確定時間份額。 由表1可知,在1個位周期中時間份額的數(shù)量必須是825之間的 (3

12、)確定同步跳轉(zhuǎn)寬度和采樣次數(shù)。 為完成位定時參數(shù)的設(shè)置,最后還要確定同步跳轉(zhuǎn)寬度和采樣次數(shù)。同步跳轉(zhuǎn)寬度的一般設(shè)置原則是在允許的范圍內(nèi)應(yīng)盡可能的大一些,這樣更有利于在重同步時對沿相位誤差的補償,在這里可將該參數(shù)設(shè)置為3。采樣次數(shù)的設(shè)置比較容易和直接,對于高速總線,建議將SAM置為“0”,此時總線被采樣1次;而對于低中速總線,建議將SAM置為“1”,此時總線被采樣3次。250 Kbs屬于高速總線,所以在這里SAM應(yīng)置為0。通過以上方法和步驟所確定的各參數(shù)值,再結(jié)合式(2)、式(3)、式(5)、式(6)可直接得出寄存器BTR0和BTR1的設(shè)置值。4 結(jié) 語 (1)結(jié)合圖解的方式對CAN總線位定時、硬同步和重同步等關(guān)鍵技術(shù)的深入探討和分析,反映了CAN總線位定時和同步機制的本質(zhì)、清晰地表明了它們在CAN技術(shù)規(guī)范中的地位與作用。 (2)在CAN總

溫馨提示

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

評論

0/150

提交評論