一種基于CAN總線的監(jiān)控系統(tǒng)設計及位定時分析
位周期參數(shù)確定
在初始化can控制器的時候,要考慮配置總線時序寄存器的配置等重要問題。事實上,can通信協(xié)議中規(guī)定、通信波特率、位周期的取樣點以及取樣個數(shù)均可以自主設定,這樣為用戶在網(wǎng)絡通訊性能的優(yōu)化上提供了空間。如果位周期采樣點偏后,可以接受較大的信號傳輸延遲,相應總線的傳輸距離可以延長;如果周期的取樣點接近中間,則可以容忍系統(tǒng)節(jié)點間的參考時鐘誤差。這些矛盾直接影響了網(wǎng)絡系統(tǒng)性能,所以總線位定時非常重要,合理的位定時可以提高系統(tǒng)的整體性能。
can 總線周期由4個部分組成: 同步段(sync_seg) 、傳播延時段、相位緩沖段1 ( phase_seg1) 和相位緩沖段2 (phase_ seg2) ,如表4所示。
同步機制
can是有效支持分布式實時控制的串行通訊網(wǎng)絡。從位定時的同步方式考慮,它實質(zhì)上屬于異步通訊協(xié)議,每傳輸一幀,以幀起始位開始,而以幀結(jié)束及隨后的間歇場結(jié)束。這就要求收/發(fā)雙方從幀起始位開始必須保持幀內(nèi)信息代碼中的每一位嚴格的同步。從位定時編碼考慮,它采用的是非歸零編碼方式,位流傳輸不像差分碼那樣可以直接用電平的變化來代表同步信號,它屬于自同步方式(接收端設法從收到的信號中提取同步信息的方式),can節(jié)點從一個位值到另一個位值的轉(zhuǎn)變中提取時鐘信息。為保證同步質(zhì)量,can協(xié)議定義了自己的位同步方式:硬同步和重同步。
通過同步機制,可以消除由于相位誤差帶來的影響,保證信息正確解碼。硬同步后,內(nèi)部的位時間從同步段重新開始。因此,硬同步強迫同步沿處于重新開始的位時間同步段之內(nèi)。重新同步的結(jié)果使相位緩沖段1增長,或使相位緩沖段2縮短。相位緩沖段加長或縮短的數(shù)量有上限,此上限由重新同步跳轉(zhuǎn)寬度給定。
一個沿的相位誤差由相關(guān)同步段的沿的位置給出。相位誤差定義如下:
le = 0如果沿處于同步段里;
le 》 0 如果沿處于采集點之前;
le 《 0 如果沿處于前一個位的采集點之后。
當引起重新同步沿的相位誤差的幅值小于或者等于重新同步跳轉(zhuǎn)寬度的設定值時,重新同步和硬同步的作用相同。當相位錯誤的量級大于重新同步跳轉(zhuǎn)寬度時有2種情況:
如果相位誤差為正,則相位緩沖段1被增長,增長的范圍與重新同步跳轉(zhuǎn)寬度相同;
如果相位誤差為負,則相位緩沖段2被縮短,縮短的范圍與重新同步跳轉(zhuǎn)寬度相同。
硬同步和重新同步是同步的2種形式,遵循以下規(guī)則:
在一個位時間里只允許一個同步;
僅當采集點之前探測到的值與緊跟沿之后的總線值不相符合時,才把沿用作于同步;
總線空閑期間,有一“隱性”轉(zhuǎn)變到“顯性”的沿,無論何時,硬同步都會被執(zhí)行。
評論