欧美 亚洲 日本-欧美 日韩 成人-欧美 日产 国产动漫-欧美 另类 精品一区视频-99久久精品免费观看国产-99久久精品免费

 

圖說智能化:致遠電子:CAN特殊波特率如何計算

   2018-05-04 圖說智能化5000
核心提示:轉自中國智能化網(http://www.zgznh.com/)CAN總線采用的是異步串行通信,也就是沒有單獨的時鐘線來保證各個收發器之間時鐘的一
   轉自中國智能化網(http://www.zgznh.com/

CAN總線采用的是異步串行通信,也就是沒有單獨的時鐘線來保證各個收發器之間時鐘的一致,每個收發器是按事先設置的波特率來對總線上的電平進行分位。因此波特率設置準確對CAN總線的穩定通信來說非常重要。

CAN總線里我們可以通過對CAN 節點里的位定時寄存器的控制來實現不同波特率的通信。CAN協議里將一個位時間分為同步段、傳播段、相位緩沖段1和相位緩沖段2。每個段的時間長度都可以用一個整數的基本時間單位表示,該基本時間單位由系統的時鐘振蕩器分頻得到。

同步段位于一個位的起始位置,CAN-bus規定跳變沿為同步信號,但是發送節點發送一個位跟接收節點接收到這個位之間存在網絡傳播延遲,傳播段則是為了補償這段傳播延遲,由于采樣點位置在相位緩沖段1跟相位緩沖段2之間,通過設置相位緩沖段1和相位緩沖段2的值,可以調整采樣點位置,保證每個位采樣點一致。緩沖段的長度調節范圍則是由同步跳轉寬度(SJW)決定。

簡單的了解了CAN總線位時間的分段后,我們來看看一個節點的波特率到底要如何設置。如圖2是某ARM內核的CAN位時間特性寄存器 (CAN_BTR)。

 
圖 2  某ARM內核位時間特性寄存器結構圖

 

SILM(靜默模式)跟LBKM(回環模式)用于調試;

SJW:同步跳轉寬度;

TS2/TS1:位時間里兩個時間段的分配;

BRP:波特率分頻器,該區域定義了基本時間單元的長度;

例如某著名車廠CAN通信標準里規定,通信速率為125 kbps時,應該采用單次采樣,采樣點位置設置在70%~77%之間。其位定時參數取值可見表1與表2。

 

表 SEQ  \* ARABIC 1  LS_CAN通信速率與采樣點參數

參數

符號

最小值

標稱值

最大值

單位

通信速率

fB

125

kbit/s

通信速率誤差 

△fB

0

±0.5

%

采樣次數

SN

 

1

 

 

采樣點位置

SP

70

75

77

%

 

表 SEQ  \* ARABIC 2  LS_CAN可選時間份額與同步跳轉帶寬

時間份額數

TSEG1

TSEG2

SJW

單位

10

6

3

2

tQ

12

8

3

2

tQ

14

9

4

3

tQ

16

11

4

3

tQ

18

12

5

3

tQ

20

14

5

3

tQ

 采樣點:采樣點不能太靠前也不能太靠后,否則如果剛好處于一個位的上升沿或者下降沿區間,會造成識別錯誤,所以根據CIA105的規范,采樣點在87.5%左右比較合適。但是一般我們可根據實際情況選取75%~85%之間;

同步跳轉寬度(SJW):SJW的值直接影響到重同步時相位緩沖段的可調節的范圍,SJW的值可以在1~4之間選擇,我們選擇3、4可以使總線獲得更寬的波特率容忍度;

采樣次數:分為單次采樣跟三次采樣,三次采樣在設計之初雖然是為了過濾掉總線上毛刺,但是采用三次采樣經常會影響SJW的跳轉,所以實際應用中我們一般都會采用單次采樣。

了解設置波特率的原則后,我們采用ZLG的波特率計算軟件,對25kbps波特率的設置參數進行計算,計算結果如圖3。

 

3  25kbps波特率計算參數

根據上面提到的原則,我們選取采樣點為75%,SJW為4,時間份額為14的一組參數,采用ZLG的CAN卡做驗證。

自動波特率識別:采用CANScope自動偵測波特率的功能,對CAN卡的波特率進行識別,識別結果為25kbps;

 
圖 4  自動偵測波特率

采樣點測試:采用CANScope對當前波特率下CAN卡的采樣點進行測試,測試結果為75%;

 
圖 5  采樣點測試

位寬容忍度測試:采用CANScope對當前波特率下CAN卡進行位寬容忍度測試,測試其對波特率的容忍度情況,測試結果為24kbps~26kbps,容忍度情況較好;

 
圖 6  位寬容忍度測試

位時間測試:用CANScope的眼圖功能對當前波特率下CAN卡進行位時間測試,位時間為40us,與25kbps波特率的位時間相符。

 
圖 7  眼圖測試位時間

 

 

通過對波特率計算器計算出來的波特率寄存器設置參數進行驗證,發現測試結果跟我們的預期結果一致,因此在使用特殊波特率時,我們可以借助波特率計算器來快速計算出位定時寄存器的參數值。下面我們給出一些可參考的特殊波特率的參數:

波特率

位定時值

TSEG1

TSEG2

SJW

采樣點

實測值

25kbps

0x003AC059

10

3

4

75%

25kbps

33.3kbps

0x004DC035

14

3

4

80%

33.333kbps

83.3kbps

0x003AC01A

10

3

4

77.5%

83.333 Kbps 

666.6kbps

0x003CC002

12

3

4

80%

666.666 Kbps

 
0
反對 0舉報 0 收藏 0 打賞 0評論 0
 
更多>同類智能輸送新聞
推薦圖文
推薦智能輸送新聞
點擊排行
網站首頁  |  關于怡鵬達  |  聯系方式  |  使用協議  |  版權隱私  |  粵ICP備2023057463號  |  粵ICP備2023057463號-1