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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

CANfd 一次采样点和二次采样点

發布時間:2024/1/18 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CANfd 一次采样点和二次采样点 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CANfd 一次采樣點和二次采樣點

  • 采樣點的定義
    采樣點是CAN控制器讀取總線電平,并解釋各個比特的邏輯值的時間點。
    首先我們需要了解Tq的概念,Tq是can控制器的最小時間周期稱作時間份額(Time quantum,簡稱Tq),它是通過芯片晶振周期分頻而來。傳輸的個bit位由若干個Tq組成,根據功能傳輸一個BIT位需要分成四個階段:同步段、傳輸段、相位緩沖段1和相位緩沖段2.

    這4個階段的功能如下:
    1.同步段(Sync_Seg):用于實現時序調整,總線上各個節點的跳變沿產生在同步段內,通常為1個Tq;
    2.傳播段(Prop_Seg):用于補償網絡上的物理延遲時間。這些延遲時間包含信號在總線上的傳輸延遲和CAN節點內部的處理延遲。傳播段保證了2倍的信號在總線上的延遲時間;
    3.相位緩沖段1(Phase_Seg1)和相位緩沖段2(Phase_Seg2):用于補償跳變沿的相位誤差,其長度會在重同步的實現過程中延長或縮短。
    采樣點位于相位緩沖段1的結尾。由于相位緩沖段1和相位緩沖段2能夠延長或縮短,采樣點也能夠隨之變化。

  • can采樣點的計算
    晶振時鐘周期:是由單片機振蕩器的晶振頻率決定的,指的是振蕩器每震蕩一次所消耗的時間長度,也是整個系統中最小的時間單位;
    下面以TP377為例進行計算
    通過查看配置我們的canfd的,采樣分為仲裁場和數據場。仲裁場的波特率為500Kbit/s,數據場為2Mbit/s,can時鐘頻率為4.0E7。
    查看TP377手冊Tq = (DBRP + 1) clock cycles
    Tq=(1+1)1/4.0E7(s)=50(ns)
    仲裁場計算采樣點:
    對于仲裁場500k,傳輸一個bit位的時間1/500000s=2us,所以分配
    2us/50ns=40個tq,
    如果采樣點設置為80%,則sync_seg+prop_seg+phase_seg1=4080%=32Tq
    在ET tresos中可以這樣配置

    數據場采樣點計算:
    對于數據場2Mkbs,傳輸一個bit位的時間1/2000000s=500ns,所以分配
    500ns/50ns=10個tq,
    如果采樣點設置為80%,則sync_seg+prop_seg+phase_seg1=10*80%=8Tq
    則對應在EB TRESOS中配置如下

  • CAN-FD與CAN發送速率的不同
    CAN最大傳輸速率1Mbps,CAN-FD速率可變,仲裁比特率最高1Mbps(與CAN相同),數據比特率最高8Mbps。BRS位速率切換為,BRS位為0時CANFD速率保持恒定速率、BRS位為1時CANFD的數據段會被切換到高速率。

    ESI錯誤狀態指示位:CAN報文中發送節點的錯誤狀態只有該節點自己知道,CANFD報文中可以通過ESI標志位來告訴其他節點該節點的錯誤狀態,當ESI為1時表示發送節點處于被動錯誤狀態、當ESI為0時表示發送節點處于主動錯誤狀態。

  • 發送延遲補償

    CAN控制器發送信號時,是經過收發器后發往CAN總線后,再經過收發器反饋總線信號。那么發送過程中,控制器發送位信號到接收位信號就不可避免地存在環路延遲。發送延遲時間的總和如下:

  • 1 ). CAN控制器內部產生TX信號到Tx引腳的傳播延遲;

    2 ). Tx引腳到收發器TxD引腳的傳播延遲;

    3 ).收發器環路延遲TxD到RxD;

    4 ). 收發器RxD引腳到CAN控制器Rx引腳延遲;

    5 ).CAN控制器Rx引腳到控制器內部收到Rx信號的延遲

    CAN協議中規定:發送方發送位時,需檢測接收到的位與發送是否一致,若不一致則產生錯誤幀(位錯誤)。如果發送延遲過長,則將直接導致發送與接收位不一致而產生錯誤幀。由于傳統CAN協議規定最高波特率為1Mbps,即位寬1us,正常情況下,傳輸延遲不會超過位寬的采樣點(當然具體延遲取決于收發器環路延遲、傳輸距離、傳輸線纜質量等),因此不會因為發送延遲而產生錯誤。
    在CANFD中,數據段的波特率是比CAN更高的(BRS位為隱性時),此時波特率越高,位寬越小,在發送報文時發送延遲影響越大,越容易產生位錯誤。由于發送延遲無法避免,此時就需要一種機制來保證發送與接收的位對應上,以避免產生位錯誤。這種機制就是發送延遲補償了。
    發送延遲補償(TDC)
    TDC實際上就是在發送BRS位為隱性的CANFD報文時(BRS隱性即開啟數據域波特率),在發送時延遲一定時間后,在第二采樣點采樣接收位,以正確采樣到發送位對應的接收位。
    發送延遲測量
    那么延遲采樣的延遲時間是多久呢?實際上,開啟TDC后,控制器將自動測量Tx信號線上FDF位到r0位下降沿與Rx信號線上FDF位到r0位邊沿的之間的延遲時間,如下圖中所示,TDCV即為延遲時間。發送延遲測量的時間單位為CAN控制器時鐘(TDC寄存器中一般對TDCV的值有限制,若超過寄存器最大位數,則發送延遲測量失敗)。

    不同于采樣點,第二采樣點在CAN FD控制器接收其他節點發送報文的過程中并不會起到任何作用。第二采樣點的作用,是在不改變傳輸延遲補償的情況下,實現CAN FD在數據場的位錯誤檢測要求。
    根據TP377手冊

    根據手冊TDCV是接收到數據時的發送延遲時間,是當TDC使能的時候會自己自動計算的。
    TDCO就是設置的正常采樣點的時間。

    總結

    以上是生活随笔為你收集整理的CANfd 一次采样点和二次采样点的全部內容,希望文章能夠幫你解決所遇到的問題。

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