日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于CAN总线的位时间/同步段/传播时间段/相位缓冲段/采样点

發布時間:2023/12/15 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于CAN总线的位时间/同步段/传播时间段/相位缓冲段/采样点 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

根據 CAN 規范的要求,總線上的所有器件都必須使用相同的比特率才能完成通信。然而,并非所有器件都要求具有相同的主振蕩器時鐘頻率。所以,CAN 總線能夠在一定的范圍內容忍總線上 CAN 節點的通信波特率的偏差,這種機能使得 CAN 總線有很強的容錯性,同時也降低了對每個節點的振蕩器精度。所以,實際上,CAN 總線的波特率是一個范圍。舉個例子,假設定義的波特率是 250KB/s,但是實際上根據對寄存器的設置,實際的波特率可能為 200-300KB/s(具體值取決于寄存器的設置)。

首先了解一下 CAN 總線系統中的兩個時鐘:晶振時鐘周期和CAN時鐘周期:

  • 晶振時鐘周期:是由單片機振蕩器的晶振頻率決定的,指的是振蕩器每震蕩一次所消耗的時間長度,也是整個系統中最小的時間單位;
  • CAN時鐘周期:CAN時鐘是由系統時鐘分頻而來的一個時間長度值,實際上就是一個時間份額TQ。計算公式:CAN時鐘周期 = 2 × 晶振時鐘周期 × BRP,其中BRP叫做波特率預分頻值(baudrate prescaler);


如上圖所述,根據CAN規范,每一個CAN位時間 (Nominal Bit Time,NBT)被分成4個時間段:同步段(Sync_Seg)、傳播時間段(Prop_Seg)、相位緩沖段1(Phase_Seg1)和相位緩沖段2(Phase_Seg2),如下圖所示:

而采樣點則設計在相位緩沖段1和相位緩沖段2之間。如下圖所示:

如果用公式來表示,就是:

上述每個段又由若干個時間份額(time quanta,TQ)組成,時間份額 TQ 是位時間的基本時間單元,下面詳細解釋一下:

1、同步段(Synchronization Segment)

同步段(SyncSeg)為 NBT 中的首段,用于同步CAN總線上的各個節點。輸入信號的跳變沿就發生在同步段,該段持續時間為 1 TQ。同步段用于同步總線上的各個節點,一個位的跳邊沿在此時間段內。

2、傳播段(Propagation Segment)

傳播段(PropSeg)用于補償各節點之間的物理傳輸延遲時間。傳輸延遲時間為信號在總線上傳播時間的兩倍,包括總線驅動器延遲時間。傳播段的長度一般有一個取值范圍,不同的控制器不完全一致,典型值為 1 – 8 TQ。

3、相位緩沖段(Phase Buffer Segment1)

相位緩沖段用于補償節點間的晶振誤差,又分為相位緩沖段1(PS1)和相位緩沖段2(PS2),在這個時間段的末端進行總線狀態的采樣。兩個相位緩沖段PS1和PS2用于補償總線上的邊沿相位誤差。通過再同步,可以延長 PS1(或縮短PS2)。

同理,不同的控制器,PS1/PS2 的取值范圍不完全一致,一般 PS1 為 1 – 8 TQ,PS2 為 2 – 8 TQ。

4、采樣點

采樣點是位時間內的一個時間點。在該時間點,讀取總線電平并進行分析。采樣點位于相位緩沖段 PS1 的終點。但當采樣模式設置為每位采樣 3 次時例外。這種情況下,在 PS1 的終點仍然對某一位進行采樣時,前兩次的采樣時間間隔為 TQ / 2,而該位的值將根據三個采樣值中至少兩次采樣的相同值決定。

5、同步跳轉寬度

同步跳轉寬度(SJW)可通過編程設定為 1 – 4 TQ,它可對位時鐘進行必要的調整來保持與發送報文同步。

例如,假設 FOSC = 20 MHz 時欲實現 125 kHz 的 CAN波特率:

TOSC = 50 ns,選擇 BRP<5:0> = 04h,則 TQ = 500 ns。

欲達到 125 kHz,位時間應為 16 TQ。

位的采樣時刻取決于系統參數,通常應發生在位時間的 60-70% 處。同時, TDELAY 典型值為 1-2 TQ。

同步段 = 1 TQ,傳播段 = 2 TQ,這種情況下設置相位緩沖段 PS1 = 7 TQ,將會在跳變之后的 10 TQ 時進行采樣。此時相位緩沖段 PS2 長度為 6 TQ。

由于相位緩沖段 PS2 長度為 6 TQ,根據規則, SJW 最大值為 4 TQ。然而通常狀況下,只有當不同節點的時鐘發生不夠精確或不穩定(如采用陶瓷諧振器)時,才需要較大的 SJW。一般情況下,SJW 取值 1 TQ 即可滿足要求。

總結

以上是生活随笔為你收集整理的关于CAN总线的位时间/同步段/传播时间段/相位缓冲段/采样点的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。