CAN時鐘同步來源,AUTOSAR cp的規范,AUTOSAR定義的基于CAN總線時間同步的CanTSyn模塊處理CAN總線上的時間信息分發,它以廣播的形式將時間信息從master節點(TM) 傳輸到各slave節點(TS),還可通過時間網關(TW)將時間同步到其他子網,以解決因各ECU節點的硬件時鐘信號偏差、CAN總線傳輸延時如協議仲裁以及各ECU節點內的軟件處理等原因導致的時間延遲。網絡拓撲如下:
can_tsync實現原理
有了上述基礎之后,我們會理解到can timesync實現起來也不會太難,在autosar cp的框架下,所有的時間都是從StdmM(Synchronized Time-Base Manager)獲取的。所以,我們可以如下偽代碼:
C
// can time master
TimeRaw_t t0r;
StbM_GetCurrentTimeRaw(&t0r);
CanTsync_SetT0r(t0r);
CanIf_Transmit(sync_message);
CanTsync_TxComfirmation()
{
TimeRaw_t t1r;
StbM_GetCurrentTimeRaw(&t1r);
uint32_t t4r = CanTsync_GetT4r(t0r, t1r);
CanTsync_SetT4r(t4r);
CanIf_Transmit(fup_message)
}
C
// can time slave
TimeRaw_t t2r, t3r, t4r, t0r;
CanSync_RxIndication(sync_msg)
{
StbM_GetCurrentTimeRaw(&t2r);
t0r = CanTsync_GetT0r(sync_msg);
}
CanSync_RxIndication(fup_msg)
{
StbM_GetCurrentTimeRaw(&t3r);
t4r = CanTsync_GetT0r(fup_msg);
TimeRaw_t real_time = CanTsync_CalcuTimeOffset(t0r, t2r, t3r, t4r);
StbM_SetGlobalTime(real_time);
}
can tsync來源于autosar cp,所以上述實現風格也是仿照autosar cp的風格。StbM是整個cp的時間基礎管理,負責抽象底層不同的時間同步協議,為上層提供統一的時間戳接口以及當前的時間同步狀態的接口。整體框架如下:
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
CAN
+關注
關注
56文章
2509瀏覽量
460755 -
車載
+關注
關注
17文章
575瀏覽量
83224 -
總線
+關注
關注
10文章
2735瀏覽量
87389 -
時鐘同步
+關注
關注
0文章
75瀏覽量
12631
發布評論請先 登錄
相關推薦
AUTOSAR CAN時鐘同步問題
請問有沒有AUTOSAR CAN時鐘同步的能運行的代碼,或者有沒有能做這一塊的大佬,主要是CanTsyn和STBM這兩個模塊的。有償,價格都好商量,急需。
發表于 11-09 00:00
基于FPGA的GPS同步時鐘裝置的設計
在介紹了GPS 同步時鐘基本原理和FPGA 特點的基礎上,提出了一種基于FPGA 的GPS同步時鐘裝置的設計方案,實現了高精度
發表于 07-30 11:51
?45次下載
分析PTN時鐘同步技術及應用
時鐘同步是分組傳送網(PTN)需要考慮的重要問題之一??梢圆捎?b class='flag-5'>同步以太網、IEEE 1588v2、網絡時間協議(NTP)等多種技術實現時鐘同步
發表于 12-16 12:01
?5276次閱讀
![分析PTN<b class='flag-5'>時鐘</b><b class='flag-5'>同步</b>技術及應用](https://file1.elecfans.com//web2/M00/A6/17/wKgZomUMO7CAVMiHAAAQbalBWpA636.gif)
基于總線同步時鐘卡設計與實現(PCI Express)
中各個設備之間時間的一致性和準確性,系統中配備時鐘源進行授時,同步時鐘卡從時鐘源獲取高精度的時間,使系統中各個設備與主機時鐘源保持高精度的
發表于 10-30 13:25
?0次下載
![基于總線<b class='flag-5'>同步</b><b class='flag-5'>時鐘</b>卡設計與<b class='flag-5'>實現</b>(PCI Express)](https://file.elecfans.com/web2/M00/49/39/poYBAGKhwJCASKwVAAAXcVfKmWA244.jpg)
基于FPGA的高精度同步時鐘系統設計
介紹了精密時鐘同步協議(PTP)的原理。本文精簡了該協議,設計并實現了一種低成本、高精度的時鐘同步系統方案。該方案中,本地
發表于 11-17 15:57
?6583次閱讀
![基于FPGA的高精度<b class='flag-5'>同步</b><b class='flag-5'>時鐘</b>系統設計](https://file1.elecfans.com//web2/M00/A6/EA/wKgZomUMQTqAM_kAAABDtYFPRt0620.png)
車載時鐘同步can_tsync同步原理
can_tsync同步原理 整體來說,can的時間同步還是比較簡單的,如下圖所示,整個過程如下(tips:時間戳自1970年1月1日00:00:00經過的時間,是由秒+納秒組成的。):
![<b class='flag-5'>車載</b><b class='flag-5'>時鐘</b><b class='flag-5'>同步</b><b class='flag-5'>can_tsync</b><b class='flag-5'>同步</b>原理](https://file1.elecfans.com/web2/M00/AA/CB/wKgaomU7VvqADjSTAACa5uMNq0A064.jpg)
車載時間融合與utc同步
時間融合和使用 對于整車來說,Tsync模塊需要將整車所有vehicle time和utc同步好,對于用戶來說,開發者最好提供獲取vehicle time和utc時間的接口,用戶無需要關注時鐘
![<b class='flag-5'>車載</b>時間融合與utc<b class='flag-5'>同步</b>](https://file1.elecfans.com/web2/M00/AC/85/wKgZomU7XFSAVr1VAABdvMvQN7s246.jpg)
時鐘同步怎樣組網?
的時鐘在一開始很可能并不完全一致,這可能是由于硬件差異、通信延遲、時鐘漂移或其他因素引起的。因此,時鐘同步對于網絡中各個節點的協同操作具有重要意義。在網絡中
評論